Tcl
Tcl
Auto-Generate or Explicitly Specify the Message-ID Email Header
Demonstrates how to auto-generate or explicitly specify the Message-ID header field.Chilkat Tcl Downloads
load ./chilkat.dll
set success 0
set email [new_CkEmail]
CkEmail_put_Subject $email "test"
CkEmail_put_Body $email "test"
CkEmail_AddTo $email "Joe" "joe@example1.com"
CkEmail_put_From $email "mary@example2.com"
set mailman [new_CkMailMan]
# When the mailman sends email, it renders the email to be sent,
# and then sends the rendered MIME.
# Instead of actually sending the email, this example will render
# to MIME so we can see what would be sent..
# We can explicitly set the Message-ID like this:
CkMailMan_put_AutoGenMessageId $mailman 0
CkEmail_AddHeaderField $email "Message-ID" "<xyz123@abc>"
set mimeStr [CkMailMan_renderToMime $mailman $email]
puts "$mimeStr"
# This is what we get:
# MIME-Version: 1.0
# Date: Mon, 20 Jul 2020 17:20:09 -0500
# Message-ID: <xyz123@abc>
# Content-Type: text/plain; charset=us-ascii; format=flowed
# Content-Transfer-Encoding: 7bit
# X-Priority: 3 (Normal)
# Subject: test
# To: Joe <joe@example1.com>
# From: mary@example2.com
#
# test
puts "--------"
# If we auto-generate...
CkMailMan_put_AutoGenMessageId $mailman 1
set mimeStr [CkMailMan_renderToMime $mailman $email]
puts "$mimeStr"
# We get this:
# MIME-Version: 1.0
# Date: Mon, 20 Jul 2020 17:21:20 -0500
# Message-ID: <04EDE096BBFE484967F6398A973B0FCF6EA09A44@CHILKATSLICE>
# Content-Type: text/plain; charset=us-ascii; format=flowed
# Content-Transfer-Encoding: 7bit
# X-Priority: 3 (Normal)
# Subject: test
# To: Joe <joe@example1.com>
# From: mary@example2.com
#
# test
delete_CkEmail $email
delete_CkMailMan $mailman