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
(PHP Extension) MedTunnel: Send Message with File AttachmentSee more MedTunnel ExamplesDemonstrates the MedTunnel SendMessage method to send a message with a file attachment to one or more recipients. For more information, see https://server.medtunnel.com/apidocs/html/M_MedTunnelMsg_Controllers_MessageController_SendMessage.htm
<?php // The version number (9_5_0) should match version of the Chilkat extension used, omitting the micro-version number. // For example, if using Chilkat v9.5.0.48, then include as shown here: include("chilkat_9_5_0.php"); // This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. $http = new CkHttp(); // Implements the following CURL command: // curl https://server.medtunnel.com/MedTunnelMsg/api/Message/SendMessage -X POST -k // -F "ApplicationId=yourApplicationId" -F "LocationId=yourLocationId" // -F "MedTunnelId=yourMedTunnelId" -F "MedTunnelPassword=yourMedTunnelPassword" // -F "To=recipientsMedTunnelId" // -F "Body=Test of SendMessage" // -F "file1=@qa_data/jpg/starfish.jpg" // Use the following online tool to generate HTTP code from a CURL command // Convert a cURL Command to HTTP Source Code $req = new CkHttpRequest(); $req->put_HttpVerb('POST'); $req->put_Path('/MedTunnelMsg/api/Message/SendMessage'); $req->put_ContentType('multipart/form-data'); $req->AddParam('ApplicationId','yourApplicationId'); $req->AddParam('LocationId','yourLocationId'); $req->AddParam('MedTunnelId','yourMedTunnelId'); $req->AddParam('MedTunnelPassword','yourMedTunnelPassword'); $req->AddParam('To','recipientsMedTunnelId'); $req->AddParam('Body','Test'); $success = $req->AddFileForUpload2('file1','qa_data/jpg/starfish.jpg','application/octet-stream'); $req->AddHeader('Expect','100-continue'); // resp is a CkHttpResponse $resp = $http->SynchronousRequest('server.medtunnel.com',443,true,$req); if ($http->get_LastMethodSuccess() == false) { print $http->lastErrorText() . "\n"; exit; } $sbResponseBody = new CkStringBuilder(); $resp->GetBodySb($sbResponseBody); $jResp = new CkJsonObject(); $jResp->LoadSb($sbResponseBody); $jResp->put_EmitCompact(false); print 'Response Body:' . "\n"; print $jResp->emit() . "\n"; $respStatusCode = $resp->get_StatusCode(); print 'Response Status Code = ' . $respStatusCode . "\n"; if ($respStatusCode >= 400) { print 'Response Header:' . "\n"; print $resp->header() . "\n"; print 'Failed.' . "\n"; exit; } // Sample JSON response: // (Sample code for parsing the JSON response is shown below) // { // "ReturnCode": 1, // "ReturnCodeText": "Success", // "Data": "{\"Id\":989432,\"FromUserId\":36990,\"FromMailBoxId\":36965, ... \"SendGlobalNotifications\":false}" // } // Sample code for parsing the JSON response... // Use the following online tool to generate parsing code from sample JSON: // Generate Parsing Code from JSON $ReturnCode = $jResp->IntOf('ReturnCode'); $ReturnCodeText = $jResp->stringOf('ReturnCodeText'); $Data = $jResp->stringOf('Data'); // Load the Data into another JSON object and parse.. $jsonData = new CkJsonObject(); $jsonData->Load($Data); $jsonData->put_EmitCompact(false); print $jsonData->emit() . "\n"; // { // "Id": 989448, // "FromUserId": 36990, // "FromMailBoxId": 36965, // "FromUserType": 0, // "FromUserName": "...", // "FromUserFullName": "...", // "FromUserAccountName": "...", // "FromUserAccountTitle": "...", // "ToUserId": 36990, // "ToUserType": 1, // "ToUserMailboxId": "36965", // "ToUserName": "...", // "ToUserFullName": "...", // "EmailAddress": "", // "Password": "", // "Subject": "", // "PatientMedTunnelId": "", // "Body": "Test", // "DateReceived": "4/29/2021 2:48:22 PM", // "DisplayDateReceived": "04/29/2021 2:48 PM", // "ViewCount": 0, // "ViewedOn": "", // "AttachmentCount": 1, // "AttachmentNames": [ // { // "MessageId": 989448, // "Id": 424857, // "Name": "starfish.jpg.35910fe9-4118-414c-a845-4d092ca6e784", // "DisplayName": "starfish.jpg", // "Size": 6229, // "WasViewed": false, // "ViewedOn": "", // "ViewCount": 0, // "Location": "Default" // } // ], // "AllRecipients": [ // { // "Id": 989448, // "UserName": "...", // "AccountId": 0, // "AccountName": "...", // "AccountTitle": "", // "FirstName": "...", // "LastName": "...", // "EmailAddress": "", // "LastSentOn": "", // "SendCount": 0, // "IsFavorite": false // } // ], // "Status": 0, // "ParentMessageId": 989448, // "DistributionListId": 0, // "DistributionListName": "", // "BodyHistory": "", // "ReadReceiptCallbackUrl": null, // "SendGlobalNotifications": false // } $Id = $jsonData->IntOf('Id'); $FromUserId = $jsonData->IntOf('FromUserId'); $FromMailBoxId = $jsonData->IntOf('FromMailBoxId'); $FromUserType = $jsonData->IntOf('FromUserType'); $FromUserName = $jsonData->stringOf('FromUserName'); $FromUserFullName = $jsonData->stringOf('FromUserFullName'); $FromUserAccountName = $jsonData->stringOf('FromUserAccountName'); $FromUserAccountTitle = $jsonData->stringOf('FromUserAccountTitle'); $ToUserId = $jsonData->IntOf('ToUserId'); $ToUserType = $jsonData->IntOf('ToUserType'); $ToUserMailboxId = $jsonData->stringOf('ToUserMailboxId'); $ToUserName = $jsonData->stringOf('ToUserName'); $ToUserFullName = $jsonData->stringOf('ToUserFullName'); $EmailAddress = $jsonData->stringOf('EmailAddress'); $Password = $jsonData->stringOf('Password'); $Subject = $jsonData->stringOf('Subject'); $PatientMedTunnelId = $jsonData->stringOf('PatientMedTunnelId'); $Body = $jsonData->stringOf('Body'); $DateReceived = $jsonData->stringOf('DateReceived'); $DisplayDateReceived = $jsonData->stringOf('DisplayDateReceived'); $ViewCount = $jsonData->IntOf('ViewCount'); $ViewedOn = $jsonData->stringOf('ViewedOn'); $AttachmentCount = $jsonData->IntOf('AttachmentCount'); $Status = $jsonData->IntOf('Status'); $ParentMessageId = $jsonData->IntOf('ParentMessageId'); $DistributionListId = $jsonData->IntOf('DistributionListId'); $DistributionListName = $jsonData->stringOf('DistributionListName'); $BodyHistory = $jsonData->stringOf('BodyHistory'); $ReadReceiptCallbackUrl = $jsonData->stringOf('ReadReceiptCallbackUrl'); $SendGlobalNotifications = $jsonData->BoolOf('SendGlobalNotifications'); $i = 0; $count_i = $jsonData->SizeOfArray('AttachmentNames'); while ($i < $count_i) { $jsonData->put_I($i); $MessageId = $jsonData->IntOf('AttachmentNames[i].MessageId'); $Id = $jsonData->IntOf('AttachmentNames[i].Id'); $Name = $jsonData->stringOf('AttachmentNames[i].Name'); $DisplayName = $jsonData->stringOf('AttachmentNames[i].DisplayName'); $Size = $jsonData->IntOf('AttachmentNames[i].Size'); $WasViewed = $jsonData->BoolOf('AttachmentNames[i].WasViewed'); $ViewedOn = $jsonData->stringOf('AttachmentNames[i].ViewedOn'); $ViewCount = $jsonData->IntOf('AttachmentNames[i].ViewCount'); $Location = $jsonData->stringOf('AttachmentNames[i].Location'); $i = $i + 1; } $i = 0; $count_i = $jsonData->SizeOfArray('AllRecipients'); while ($i < $count_i) { $jsonData->put_I($i); $Id = $jsonData->IntOf('AllRecipients[i].Id'); $UserName = $jsonData->stringOf('AllRecipients[i].UserName'); $AccountId = $jsonData->IntOf('AllRecipients[i].AccountId'); $AccountName = $jsonData->stringOf('AllRecipients[i].AccountName'); $AccountTitle = $jsonData->stringOf('AllRecipients[i].AccountTitle'); $FirstName = $jsonData->stringOf('AllRecipients[i].FirstName'); $LastName = $jsonData->stringOf('AllRecipients[i].LastName'); $EmailAddress = $jsonData->stringOf('AllRecipients[i].EmailAddress'); $LastSentOn = $jsonData->stringOf('AllRecipients[i].LastSentOn'); $SendCount = $jsonData->IntOf('AllRecipients[i].SendCount'); $IsFavorite = $jsonData->BoolOf('AllRecipients[i].IsFavorite'); $i = $i + 1; } ?> |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.