![]() |
Chilkat HOME Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi DLL Go Java Node.js Objective-C PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Tcl) Office365 POP3 Login with OAuth2 AuthenticationSee more Office365 ExamplesDemonstrates how to authenticate using OAuth2 using the POP3 protocol with outlook.office365.com.Note: This example requires Chilkat v9.5.0.83 or greater.
load ./chilkat.dll # This example requires the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. set mailman [new_CkMailMan] CkMailMan_put_MailHost $mailman "outlook.office365.com" CkMailMan_put_MailPort $mailman 995 CkMailMan_put_PopSsl $mailman 1 # Use your O365 email address here. CkMailMan_put_PopUsername $mailman "OFFICE365_EMAIL_ADDRESS" # When using OAuth2 authentication, leave the password empty. CkMailMan_put_PopPassword $mailman "" # Load our previously obtained OAuth2 access token. set jsonToken [new_CkJsonObject] set success [CkJsonObject_LoadFile $jsonToken "qa_data/tokens/office365.json"] if {$success == 0} then { puts [CkJsonObject_lastErrorText $jsonToken] delete_CkMailMan $mailman delete_CkJsonObject $jsonToken exit } CkMailMan_put_OAuth2AccessToken $mailman [CkJsonObject_stringOf $jsonToken "access_token"] # Make the TLS connection to the outlook.office365.com POP3 server. set success [CkMailMan_Pop3Connect $mailman] if {$success != 1} then { puts [CkMailMan_lastErrorText $mailman] delete_CkMailMan $mailman delete_CkJsonObject $jsonToken exit } # Authenticate using XOAUTH2 set success [CkMailMan_Pop3Authenticate $mailman] if {$success != 1} then { puts [CkMailMan_lastErrorText $mailman] delete_CkMailMan $mailman delete_CkJsonObject $jsonToken exit } # Find out how many emails are on the server.. set numEmails [CkMailMan_CheckMail $mailman] if {$numEmails < 0} then { puts [CkMailMan_lastErrorText $mailman] delete_CkMailMan $mailman delete_CkJsonObject $jsonToken exit } # Examine the POP3 session log: puts [CkMailMan_pop3SessionLog $mailman] # The POP3 session log will look something like this: # **** Connected to outlook.office365.com:995 # < +OK The Microsoft Exchange POP3 service is ready. [QwBIADIAUABSADEAOABD...YwBvAG0A] # > AUTH XOAUTH2 # < + # > <base64 string in XOAUTH2 format> # < +OK User successfully authenticated. # > STAT # < +OK 3 375302 # End the POP3 session and close the connection to the GMail server. set success [CkMailMan_Pop3EndSession $mailman] if {$success != 1} then { puts [CkMailMan_lastErrorText $mailman] delete_CkMailMan $mailman delete_CkJsonObject $jsonToken exit } puts "Finished." delete_CkMailMan $mailman delete_CkJsonObject $jsonToken |
||||
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.