PowerBuilder
PowerBuilder
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 PowerBuilder Downloads
integer li_rc
integer li_Success
oleobject loo_Mime
oleobject loo_Email
integer i
integer li_NumRelatedItems
oleobject loo_SbContentType
li_Success = 0
// 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.
loo_Mime = create oleobject
li_rc = loo_Mime.ConnectToNewObject("Chilkat.Mime")
if li_rc < 0 then
destroy loo_Mime
MessageBox("Error","Connecting to COM object failed")
return
end if
li_Success = loo_Mime.LoadMimeFile("qa_data/eml/TMobileTextMsg.eml")
// Show the MIME structure in text format (as opposed to XML format).
Write-Debug loo_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.
loo_Email = create oleobject
li_rc = loo_Email.ConnectToNewObject("Chilkat.Email")
li_Success = loo_Email.LoadEml("qa_data/eml/TMobileTextMsg.eml")
// We should see 4 related items.
Write-Debug "Num Related Items = " + string(loo_Email.NumRelatedItems)
// There should be 0 attachments.
Write-Debug "Num Attachments = " + string(loo_Email.NumAttachments)
// Find the indices of the text/plain related part, and the text/html related part
i = 0
li_NumRelatedItems = loo_Email.NumRelatedItems
loo_SbContentType = create oleobject
li_rc = loo_SbContentType.ConnectToNewObject("Chilkat.StringBuilder")
do while i < li_NumRelatedItems
loo_SbContentType.Append(loo_Email.GetRelatedContentType(i))
Write-Debug string(i) + ": " + loo_SbContentType.GetAsString()
if loo_SbContentType.ContentsEqual("text/plain",0) then
Write-Debug "---- text/plain part:"
Write-Debug loo_Email.GetRelatedString(i,"utf-8")
end if
loo_SbContentType.Clear()
i = i + 1
loop
destroy loo_Mime
destroy loo_Email
destroy loo_SbContentType