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
(VBScript) Download a Specific GMail Message into a Chilkat Email ObjectDemonstrates how to download a GMail message into a Chilkat Email object.
Dim fso, outFile Set fso = CreateObject("Scripting.FileSystemObject") 'Create a Unicode (utf-16) output text file. Set outFile = fso.CreateTextFile("output.txt", True, True) ' This example requires the Chilkat API to have been previously unlocked. ' See Global Unlock Sample for sample code. ' For versions of Chilkat < 10.0.0, use CreateObject("Chilkat_9_5_0.Http") set http = CreateObject("Chilkat.Http") http.AuthToken = "GMAIL-ACCESS-TOKEN" ' The id of the GMail message to download. id = "166e50fed0b9b0cb" userId = "me" success = http.SetUrlVar("userId","me") success = http.SetUrlVar("id",id) ' Fetch the email. url = "https://www.googleapis.com/gmail/v1/users/{$userId}/messages/{$id}?format=raw" ' For versions of Chilkat < 10.0.0, use CreateObject("Chilkat_9_5_0.StringBuilder") set sbJson = CreateObject("Chilkat.StringBuilder") success = http.DownloadSb(url,"utf-8",sbJson) If (success <> 1) Then outFile.WriteLine(http.LastErrorText) WScript.Quit End If ' For versions of Chilkat < 10.0.0, use CreateObject("Chilkat_9_5_0.JsonObject") set json = CreateObject("Chilkat.JsonObject") success = json.LoadSb(sbJson) json.EmitCompact = 0 If (http.LastStatus <> 200) Then outFile.WriteLine(json.Emit()) outFile.WriteLine("Failed.") WScript.Quit End If ' The returned JSON contains something like this: ' { ' "id": "166e50fed0b9b0cb", ' "threadId": "166e50fed0b9b0cb", ' "labelIds": [ ' "CATEGORY_SOCIAL", ' "INBOX" ' ], ' "snippet": "...", ' "historyId": "582477", ' "internalDate": "1541441317000", ' "sizeEstimate": 28603, ' "raw": "BASE64URL_CONTENT" ' } ' The RFC822 MIME of the email is contained in the "raw" as a base64URL encoded string. ' Let's decode and load into a Chilkat email object.. ' For versions of Chilkat < 10.0.0, use CreateObject("Chilkat_9_5_0.StringBuilder") set sbRaw = CreateObject("Chilkat.StringBuilder") success = json.StringOfSb("raw",sbRaw) success = sbRaw.Decode("base64url","utf-8") ' For versions of Chilkat < 10.0.0, use CreateObject("Chilkat_9_5_0.Email") set email = CreateObject("Chilkat.Email") success = email.SetFromMimeSb(sbRaw) ' Now we can use the email API to do whatever we desire.. outFile.WriteLine("From: " & email.FromAddress) outFile.WriteLine("Subject: " & email.Subject) ' ... outFile.Close |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.