Tcl
Tcl
SMTP Send Raw Command
Demonstrates how to send a raw command to the SMTP server after the connecting and authenticating.Chilkat Tcl Downloads
load ./chilkat.dll
set success 0
# This example requires the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.
set mailman [new_CkMailMan]
CkMailMan_put_SmtpHost $mailman "smtp.mail.us-west-2.awsapps.com"
CkMailMan_put_SmtpSsl $mailman 1
CkMailMan_put_SmtpPort $mailman 465
set success [CkMailMan_SmtpConnect $mailman]
if {$success == 0} then {
puts [CkMailMan_lastErrorText $mailman]
delete_CkMailMan $mailman
exit
}
CkMailMan_put_SmtpUsername $mailman "john@example.com"
CkMailMan_put_SmtpPassword $mailman "the_password"
set success [CkMailMan_SmtpAuthenticate $mailman]
if {$success == 0} then {
puts [CkMailMan_lastErrorText $mailman]
delete_CkMailMan $mailman
exit
}
puts "Authenticated!"
# Send the "EHLO" command again to get the multi-line response that includes the SMTP capabilities.
# The capabilities are the lines in the response that begin with "250-".
set responseStr [CkMailMan_smtpSendRawCommand $mailman "EHLO client.example.com" "utf-8" 0]
if {[CkMailMan_get_LastMethodSuccess $mailman] == 0} then {
puts [CkMailMan_lastErrorText $mailman]
delete_CkMailMan $mailman
exit
}
puts "$responseStr"
# A sample response:
# 250-smtp.us-west-2.mail.awsapps.com
# 250-8BITMIME
# 250-AUTH PLAIN LOGIN
# 250 Ok
delete_CkMailMan $mailman