Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(DataFlex) Office365 IMAP List MailboxesSee more Office365 ExamplesList the Office365 IMAP mailboxes.
Use ChilkatAx-win32.pkg Procedure Test Handle hoJsonToken Boolean iSuccess Handle hoImap String sRefName String sWildcardedMailbox Variant vMboxes Handle hoMboxes Integer i String sTemp1 Boolean bTemp1 // An Office365 OAuth2 access token must first be obtained prior // to running this code. // Getting the OAuth2 access token for the 1st time requires the O365 account owner's // interactive authorizaition via a web browser. Afterwards, the access token // can be repeatedly refreshed automatically. // See the following examples for getting and refreshing an OAuth2 access token // Get Office365 SMTP/IMAP/POP3 OAuth2 Access Token // Refresh Office365 SMTP/IMAP/POP3 OAuth2 Access Token // First get our previously obtained OAuth2 access token. Get Create (RefClass(cComChilkatJsonObject)) To hoJsonToken If (Not(IsComObjectCreated(hoJsonToken))) Begin Send CreateComObject of hoJsonToken End Get ComLoadFile Of hoJsonToken "qa_data/tokens/office365.json" To iSuccess If (iSuccess = False) Begin Showln "Failed to open the office365 OAuth JSON file." Procedure_Return End Get Create (RefClass(cComChilkatImap)) To hoImap If (Not(IsComObjectCreated(hoImap))) Begin Send CreateComObject of hoImap End Set ComSsl Of hoImap To True Set ComPort Of hoImap To 993 // Connect to the Office365 IMAP server. Get ComConnect Of hoImap "outlook.office365.com" To iSuccess If (iSuccess <> True) Begin Get ComLastErrorText Of hoImap To sTemp1 Showln sTemp1 Procedure_Return End // Use OAuth2 authentication. Set ComAuthMethod Of hoImap To "XOAUTH2" // Login using our username (i.e. email address) and the access token for the password. Get ComStringOf Of hoJsonToken "access_token" To sTemp1 Get ComLogin Of hoImap "OFFICE365_EMAIL_ADDRESS" sTemp1 To iSuccess If (iSuccess <> True) Begin Get ComLastErrorText Of hoImap To sTemp1 Showln sTemp1 Procedure_Return End Showln "O365 OAuth authentication is successful." // The ListMailboxes method returns a Mailboxes object // that contains the collection of mailboxes. // It accepts two arguments: a refName and a wildcardedMailbox. Move "" To sRefName // refName is usually set to an empty string. // A non-empty reference name argument is the name of a mailbox or a level of // mailbox hierarchy, and indicates the context in which the mailbox // name is interpreted. // Select all mailboxes matching this pattern: Move "*" To sWildcardedMailbox Get ComListMailboxes Of hoImap sRefName sWildcardedMailbox To vMboxes If (IsComObject(vMboxes)) Begin Get Create (RefClass(cComChilkatMailboxes)) To hoMboxes Set pvComObject Of hoMboxes To vMboxes End Get ComLastMethodSuccess Of hoImap To bTemp1 If (bTemp1 = False) Begin Get ComLastErrorText Of hoImap To sTemp1 Showln sTemp1 Procedure_Return End Move 0 To i While (i < (ComCount(hoMboxes))) Get ComGetName Of hoMboxes i To sTemp1 Showln sTemp1 Move (i + 1) To i Loop // Sample output looks like this: // Archive // Calendar // Calendar/Birthdays // Calendar/United States holidays // Contacts // Conversation History // Deleted Items // Drafts // INBOX // INBOX/abc // INBOX/misc // INBOX/misc/birdeye // INBOX/old // INBOX/old/large // INBOX/receipts // Journal // Junk Email // Notes // Outbox // RSS Subscriptions // Sent Items // Sync Issues // Sync Issues/Conflicts // Sync Issues/Local Failures // Sync Issues/Server Failures // Tasks // Trash // Disconnect from the IMAP server. Get ComDisconnect Of hoImap To iSuccess Send Destroy of hoMboxes End_Procedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.