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) Mailgun Send Email using MIMESee more Mailgun ExamplesSend an email using MIME. This allows for the Chilkat email object to be used to construct the email. Then it can be sent using Mailgun. For more information, see https://documentation.mailgun.com/en/latest/api-sending.html#sending
Use ChilkatAx-win32.pkg Procedure Test Handle hoEmail String sContentType Boolean iSuccess String sHtml Handle hoHttp Variant vReq Handle hoReq Variant vResp Handle hoResp Variant vSbResponseBody Handle hoSbResponseBody Handle hoJResp Integer iRespStatusCode String sId String sMessage String sTemp1 Boolean bTemp1 // This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. // We're going to create an email that contains an .zip attachment, // and also both plain-text and HTML alternative bodies. // The HTML body will include an image. Get Create (RefClass(cComChilkatEmail)) To hoEmail If (Not(IsComObjectCreated(hoEmail))) Begin Send CreateComObject of hoEmail End // Adding attachments, HTML/plain-text bodies, etc can be done // in any order: // Add an attachment Get ComAddFileAttachment Of hoEmail "qa_data/hamlet.zip" To sContentType Get ComLastMethodSuccess Of hoEmail To bTemp1 If (bTemp1 <> True) Begin Get ComLastErrorText Of hoEmail To sTemp1 Showln sTemp1 Procedure_Return End // Add some headers: Set ComSubject Of hoEmail To "This is a complex email" // Please change this email address before testing. Get ComAddTo Of hoEmail "Joe Example" "joe@example.com" To iSuccess Set ComFrom Of hoEmail To "Your Name <mailgun@YOUR_DOMAIN_NAME>" // Add a plain-text body: Get ComAddPlainTextAlternativeBody Of hoEmail "This is the plain-text body" To iSuccess // Add an image that will be embedded in the HTML body. Get ComAddRelatedFile2 Of hoEmail "qa_data/jpg/starfish.jpg" "starfish.jpg" To iSuccess If (iSuccess <> True) Begin Get ComLastErrorText Of hoEmail To sTemp1 Showln sTemp1 Procedure_Return End // Add an HTML body: Move '<html><body><b>This is the HTML body</b><br><img src="starfish.jpg"></body></html>' To sHtml Get ComAddHtmlAlternativeBody Of hoEmail sHtml To iSuccess // ------------------------------------------------------------------------ // Send the above email using Mailgun Get Create (RefClass(cComChilkatHttp)) To hoHttp If (Not(IsComObjectCreated(hoHttp))) Begin Send CreateComObject of hoHttp End // Implements the following CURL command: Set ComLogin Of hoHttp To "api" Set ComPassword Of hoHttp To "sending_api_key" // Replace with your actual sending API key. Get Create (RefClass(cComChilkatHttpRequest)) To hoReq If (Not(IsComObjectCreated(hoReq))) Begin Send CreateComObject of hoReq End Set ComHttpVerb Of hoReq To "POST" Set ComPath Of hoReq To "/v3/YOUR_DOMAIN_NAME/messages.mime" Set ComContentType Of hoReq To "multipart/form-data" Send ComAddParam To hoReq "from" "Your Name <mailgun@YOUR_DOMAIN_NAME>" Send ComAddParam To hoReq "to" "Joe Example <joe@example.com>" Get ComGetMime Of hoEmail To sTemp1 Get ComAddStringForUpload2 Of hoReq "message" "message.eml" sTemp1 "utf-8" "application/octet-stream" To iSuccess Get pvComObject of hoReq to vReq Get ComSynchronousRequest Of hoHttp "api.mailgun.net" 443 True vReq To vResp If (IsComObject(vResp)) Begin Get Create (RefClass(cComChilkatHttpResponse)) To hoResp Set pvComObject Of hoResp To vResp End Get ComLastMethodSuccess Of hoHttp To bTemp1 If (bTemp1 = False) Begin Get ComLastErrorText Of hoHttp To sTemp1 Showln sTemp1 Procedure_Return End Get Create (RefClass(cComChilkatStringBuilder)) To hoSbResponseBody If (Not(IsComObjectCreated(hoSbResponseBody))) Begin Send CreateComObject of hoSbResponseBody End Get pvComObject of hoSbResponseBody to vSbResponseBody Get ComGetBodySb Of hoResp vSbResponseBody To iSuccess Get Create (RefClass(cComChilkatJsonObject)) To hoJResp If (Not(IsComObjectCreated(hoJResp))) Begin Send CreateComObject of hoJResp End Get pvComObject of hoSbResponseBody to vSbResponseBody Get ComLoadSb Of hoJResp vSbResponseBody To iSuccess Set ComEmitCompact Of hoJResp To False Showln "Response Body:" Get ComEmit Of hoJResp To sTemp1 Showln sTemp1 Get ComStatusCode Of hoResp To iRespStatusCode Showln "Response Status Code = " iRespStatusCode If (iRespStatusCode >= 400) Begin Showln "Response Header:" Get ComHeader Of hoResp To sTemp1 Showln sTemp1 Showln "Failed." Send Destroy of hoResp Procedure_Return End Send Destroy of hoResp // Sample JSON response: // (Sample code for parsing the JSON response is shown below) // { // "id": "<20210429234809.1.2D550E1C94D3D98F@sandbox0e542e4c577f4bbb98c8bf6b6bca727b.mailgun.org>", // "message": "Queued. Thank you." // } // Sample code for parsing the JSON response... // Use the following online tool to generate parsing code from sample JSON: // Generate Parsing Code from JSON Get ComStringOf Of hoJResp "id" To sId Get ComStringOf Of hoJResp "message" To sMessage End_Procedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.