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
(Visual FoxPro) List Yahoo Mail IMAP MailboxesSee more Yahoo Mail ExamplesList Yahoo Mail mailboxes.
LOCAL loJson LOCAL lnSuccess LOCAL lcAccessToken LOCAL loImap LOCAL lcRefName LOCAL lcWildcardedMailbox LOCAL loMboxes LOCAL i * This example assumes the Chilkat API to have been previously unlocked. * See Global Unlock Sample for sample code. * See Get Yahoo Mail OAuth2 Access Token for Desktop App * for sample code showing how to obtain a Yahoo Mail access token. * In this example, our access token was previously saved to the following file which contains JSON like this: * { * "access_token": "kCVQdnOdul...LHucA--", * "refresh_token": "AIenVXETSo0jklFBVkPS8vVm8E.Ej9ToRG.xDbDYmZ65WIs5t6CZhDrD", * "expires_in": 3600, * "token_type": "bearer", * "xoauth_yahoo_guid": "HGDQCVF5JB4YDOWHITQJFBHCWA" * } * For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.JsonObject') loJson = CreateObject('Chilkat.JsonObject') lnSuccess = loJson.LoadFile("qa_data/tokens/yahooMail.json") IF (lnSuccess <> 1) THEN ? "Failed to load Yahoo Mail access token file." RELEASE loJson CANCEL ENDIF lcAccessToken = loJson.StringOf("access_token") * Do OAuth2 authentication by using the access token as the password in the Login method below... * For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.Imap') loImap = CreateObject('Chilkat.Imap') loImap.Ssl = 1 loImap.Port = 993 * Connect to the Yahoo IMAP server. lnSuccess = loImap.Connect("imap.mail.yahoo.com") IF (lnSuccess <> 1) THEN ? loImap.LastErrorText RELEASE loJson RELEASE loImap CANCEL ENDIF * Indicate that XOAUTH2 authentication is to be used: loImap.AuthMethod = "XOAUTH2" * Login * Use the email address of the Yahoo Mail account that granted authorization. lnSuccess = loImap.Login("user@yahoo.com",lcAccessToken) IF (lnSuccess <> 1) THEN ? loImap.LastErrorText ELSE ? "Successfully authenticated with Yahoo IMAP using XOAUTH2!" ENDIF * The ListMailboxes method returns a Mailboxes object * that contains the collection of mailboxes. * It accepts two arguments: a refName and a wildcardedMailbox. lcRefName = "" * 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: lcWildcardedMailbox = "*" loMboxes = loImap.ListMailboxes(lcRefName,lcWildcardedMailbox) IF (loImap.LastMethodSuccess = 0) THEN ? loImap.LastErrorText RELEASE loJson RELEASE loImap CANCEL ENDIF i = 0 DO WHILE i < loMboxes.Count ? loMboxes.GetName(i) i = i + 1 ENDDO * Sample output looks like this: * Archive * Bulk Mail * Draft * Inbox * Inbox/emailsWithAttach * Inbox/test * Sent * Trash * Disconnect from the IMAP server. lnSuccess = loImap.Disconnect() RELEASE loMboxes RELEASE loJson RELEASE loImap |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.