Sample code for 30+ languages & platforms
Tcl

IMAP LastResponse and LastResponseCode

Demonstrates the IMAP LastResponse and LastResponseCode properties.

Chilkat Tcl Downloads

Tcl

load ./chilkat.dll

set success 0

# This example assumes the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.

set imap [new_CkImap]

# Use TLS
CkImap_put_Ssl $imap 1
CkImap_put_Port $imap 993
set success [CkImap_Connect $imap "imap.gmail.com"]
if {$success != 1} then {
    puts [CkImap_lastErrorText $imap]
    delete_CkImap $imap
    exit
}

# Authenticate, but with an intentionally incorrect password
# so we can see the contents of the LastErrorText, and also
# the LastResponse and LastResponseCode properties.
set success [CkImap_Login $imap "my_login" "my_intentionally incorrect_password"]
if {$success == 1} then {
    puts "Successfull login, but this example is meant to demonstrate an error, such as a failed login."
    delete_CkImap $imap
    exit
}

# Let's look at the LastErrorText, and also the LastResponse and LastResponseCode.
puts "LastResponseCode = [CkImap_lastResponseCode $imap]"
puts "LastReponse = [CkImap_lastResponse $imap]"
puts "LastErrorText = [CkImap_lastErrorText $imap]"

# Sample output:

# LastResponseCode = AUTHENTICATIONFAILED
# LastReponse = aaab NO [AUTHENTICATIONFAILED] Invalid credentials (Failure)
# LastErrorText = ChilkatLog:
#   Login:
#     DllDate: Oct 28 2023
#     ChilkatVersion: 9.5.0.96
#     UnlockPrefix: EXCODE
#     UnlockStatus: 2
#     Architecture: Little Endian; 64-bit
#     Language: .NET 4.5 / x64 / VS2012
#     VerboseLogging: 0
#     imapServer: imap.gmail.com
#     loginX(47ms):
#       login: my_login
#       greeting: * OK Gimap ready for requests from 98.213.102.119 w5mb285327441qtc
# 
#       authenticateLogin(47ms):
#         loginImap(47ms):
#           ConnectionType: SSL/TLS
#           ImapCmdSent: aaab LOGIN "my_login"
#           getCompleteResponse(47ms):
#             ImapCmdResp: aaab NO [AUTHENTICATIONFAILED] Invalid credentials (Failure)
#           --getCompleteResponse
#         --loginImap
#         isOK:
#           serverResponse: aaab NO [AUTHENTICATIONFAILED] Invalid credentials (Failure)
#         --isOK
#       --authenticateLogin
#     --loginX
#     Failed.
#   --Login
# --ChilkatLog

# Disconnect from the IMAP server.
set success [CkImap_Disconnect $imap]

delete_CkImap $imap