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
(PureBasic) Get Contents of a T-Mobile Text Message (as Email)How to get the contents of an email that originated as a T-Mobile SMS text.
IncludeFile "CkStringBuilder.pb" IncludeFile "CkMime.pb" IncludeFile "CkEmail.pb" Procedure ChilkatExample() ; First, for the purpose of understanding the structure of the MIME, ; let's load the MIME into a Chilkat MIME object and examine the MIME structure. mime.i = CkMime::ckCreate() If mime.i = 0 Debug "Failed to create object." ProcedureReturn EndIf success.i = CkMime::ckLoadMimeFile(mime,"qa_data/eml/TMobileTextMsg.eml") ; Show the MIME structure in text format (as opposed to XML format). Debug CkMime::ckGetStructure(mime,"text") ; The MIME structure for our test email looks like this: ; multipart/related ; text/html ; text/plain ; image/gif ; image/gif ; image/gif ; The HTML part is not considered a "related item" because the related items ; are defined as being related to the HTML part. Therefore, we should always ; expect to find a text/html part under a multipart/related. The HTML parts ; is simply the HTML body, and the other parts are the related items. ; If the text/plain part was to be considered as an alternative body, ; then a properly structured email would include a multipart/alternative structure. email.i = CkEmail::ckCreate() If email.i = 0 Debug "Failed to create object." ProcedureReturn EndIf success = CkEmail::ckLoadEml(email,"qa_data/eml/TMobileTextMsg.eml") ; We should see 4 related items. Debug "Num Related Items = " + Str(CkEmail::ckNumRelatedItems(email)) ; There should be 0 attachments. Debug "Num Attachments = " + Str(CkEmail::ckNumAttachments(email)) ; Find the indices of the text/plain related part, and the text/html related part i.i = 0 numRelatedItems.i = CkEmail::ckNumRelatedItems(email) sbContentType.i = CkStringBuilder::ckCreate() If sbContentType.i = 0 Debug "Failed to create object." ProcedureReturn EndIf While i < numRelatedItems CkStringBuilder::ckAppend(sbContentType,CkEmail::ckGetRelatedContentType(email,i)) Debug Str(i) + ": " + CkStringBuilder::ckGetAsString(sbContentType) If CkStringBuilder::ckContentsEqual(sbContentType,"text/plain",0) Debug "---- text/plain part:" Debug CkEmail::ckGetRelatedString(email,i,"utf-8") EndIf CkStringBuilder::ckClear(sbContentType) i = i + 1 Wend CkMime::ckDispose(mime) CkEmail::ckDispose(email) CkStringBuilder::ckDispose(sbContentType) ProcedureReturn EndProcedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.