Sample code for 30+ languages & platforms
B4X

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.

Chilkat B4X Downloads

B4X
Dim success As Boolean = 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.
Dim mime As ChilkatMime
mime.Initialize

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

Dim email As ChilkatEmail
email.Initialize

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

'  We should see 4 related items.
Log("Num Related Items = " & email.NumRelatedItems)
'  There should be 0 attachments.  
Log("Num Attachments = " & email.NumAttachments)

'  Find the indices of the text/plain related part, and the text/html related part
Dim i As Int = 0
Dim numRelatedItems As Int = email.NumRelatedItems
Dim sbContentType As ChilkatStringBuilder
sbContentType.Initialize
Do While i < numRelatedItems
    sbContentType.Append(email.GetRelatedContentType(i))
    Log(i & ": " & sbContentType.GetAsString)
    If sbContentType.ContentsEqual("text/plain", False) Then
        Log("---- text/plain part:")
        Log(email.GetRelatedString(i, "utf-8"))
    End If


    sbContentType.Clear
    i = i + 1
Loop