Sample code for 30+ languages & platforms
JavaScript

Get Contents of a T-Mobile Text Message (as Email)

See more Email Object Examples

How to get the contents of an email that originated as a T-Mobile SMS text.

Note
This example is intended for running within a Chilkat.Js embedded JavaScript engine. All Chilkat JavaScript examples require Chilkat v11.4.0 or greater.
JavaScript
var success = false;

// 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.
var mime = new CkMime();

success = mime.LoadMimeFile("qa_data/eml/TMobileTextMsg.eml");
// Show the MIME structure in text format (as opposed to XML format).
console.log(mime.GetStructure("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.

var email = new CkEmail();

success = email.LoadEml("qa_data/eml/TMobileTextMsg.eml");

// We should see 4 related items.
console.log("Num Related Items = " + email.NumRelatedItems);
// There should be 0 attachments.  
console.log("Num Attachments = " + email.NumAttachments);

// Find the indices of the text/plain related part, and the text/html related part
var i = 0;
var numRelatedItems = email.NumRelatedItems;
var sbContentType = new CkStringBuilder();
while (i < numRelatedItems) {
    sbContentType.Append(email.GetRelatedContentType(i));
    console.log(i + ": " + sbContentType.GetAsString());
    if (sbContentType.ContentsEqual("text/plain",false)) {
        console.log("---- text/plain part:");
        console.log(email.GetRelatedString(i,"utf-8"));
    }

    sbContentType.Clear();
    i = i+1;
}