Sample code for 30+ languages & platforms
PowerBuilder Requires Chilkat v11.0.0+

Create Apple Watch HTML (text/watch-html) Email

See more Email Object Examples

Demonstrates how to create an Apple Watch text/watch-html email.

Chilkat PowerBuilder Downloads

PowerBuilder
integer li_rc
integer li_Success
oleobject loo_Email
oleobject loo_Mime
oleobject loo_PartPlainText
oleobject loo_PartWatchHtml
oleobject loo_PartHtml

li_Success = 0

//  This example will produce an email such as:

//  	MIME-Version: 1.0
//  	Date: Fri, 02 Jun 2017 09:17:06 -0500
//  	Message-ID: <E6F1F17104442EA09740322D3E2E78806C87FB80@CHILKAT13>
//  	X-Priority: 3 (Normal)
//  	Subject: Apple Watch Example
//  	From: from@example.org
//  	To: to@example.org
//  	Content-Type: multipart/alternative; boundary="------------080904030200000307060803"
//  
//  	--------------080904030200000307060803
//  	Content-Type: text/plain; charset=utf-8
//  	Content-Transfer-Encoding: quoted-printable
//  	Content-Disposition: inline
//  
//  	This is the plain text part.
//  	--------------080904030200000307060803
//  	Content-Type: text/watch-html; charset=utf-8
//  	Content-Disposition: inline
//  	Content-Transfer-Encoding: quoted-printable
//  
//  	<b>This is the Watch HTML part</b>
//  	--------------080904030200000307060803
//  	Content-Type: text/html; charset=utf-8
//  	Content-Disposition: inline
//  	Content-Transfer-Encoding: quoted-printable
//  
//  	<p>This is the standard HTML part</p>
//  	--------------080904030200000307060803--

//  Create a new email instance to get the default auto-created fields.
loo_Email = create oleobject
li_rc = loo_Email.ConnectToNewObject("Chilkat.Email")
if li_rc < 0 then
    destroy loo_Email
    MessageBox("Error","Connecting to COM object failed")
    return
end if
loo_Email.Body = "This is the plain text part."
loo_Email.Subject = "Apple Watch Example"
loo_Email.From = "from@example.org"
loo_Email.AddTo("","to@example.org")

Write-Debug loo_Email.GetMime()
Write-Debug "--"

//  This is the MIME so far:
//  (Chilkat automatically removes CKX-* headers when sending email.)

//  	MIME-Version: 1.0
//  	Date: Fri, 02 Jun 2017 09:17:06 -0500
//  	Message-ID: <E6F1F17104442EA09740322D3E2E78806C87FB80@CHILKAT13>
//  	Content-Type: text/plain; format=flowed
//  	Content-Transfer-Encoding: 7bit
//  	X-Priority: 3 (Normal)
//  	Subject: Apple Watch Example
//  	From: from@example.org
//  	To: to@example.org
//  
//  	This is the plain text part.

//  We'll use the Chilkat MIME object to build it.
//  The MIME API provides more flexibility..
loo_Mime = create oleobject
li_rc = loo_Mime.ConnectToNewObject("Chilkat.Mime")

loo_Mime.LoadMime(loo_Email.GetMime())

//  Convert this MIME to multipart/alternative.
loo_Mime.ConvertToMultipartAlt()

Write-Debug loo_Mime.GetMime()
Write-Debug "--"

//  We now have this MIME:

//  	MIME-Version: 1.0
//  	Date: Fri, 02 Jun 2017 09:17:06 -0500
//  	Message-ID: <E6F1F17104442EA09740322D3E2E78806C87FB80@CHILKAT13>
//  	X-Priority: 3 (Normal)
//  	Subject: Apple Watch Example
//  	From: from@example.org
//  	To: to@example.org
//  	Content-Type: multipart/alternative; boundary="------------080904030200000307060803"
//  
//  	--------------080904030200000307060803
//  	Content-Type: text/plain; format=flowed
//  	Content-Transfer-Encoding: 7bit
//  
//  	This is the plain text part.
//  	--------------080904030200000307060803--

//  If we desire a particular charset, encoding, or disposition..

loo_PartPlainText = create oleobject
li_rc = loo_PartPlainText.ConnectToNewObject("Chilkat.Mime")

li_Success = loo_Mime.PartAt(0,loo_PartPlainText)
if li_Success = 0 then
    Write-Debug loo_Mime.LastErrorText
    destroy loo_Email
    destroy loo_Mime
    destroy loo_PartPlainText
    return
end if

loo_PartPlainText.Charset = "utf-8"
loo_PartPlainText.Disposition = "inline"
loo_PartPlainText.Encoding = "quoted-printable"

//  Create the text/watch-html MIME part and add it.
loo_PartWatchHtml = create oleobject
li_rc = loo_PartWatchHtml.ConnectToNewObject("Chilkat.Mime")

loo_PartWatchHtml.ContentType = "text/watch-html"
loo_PartWatchHtml.Charset = "utf-8"
loo_PartWatchHtml.Disposition = "inline"
loo_PartWatchHtml.Encoding = "quoted-printable"
loo_PartWatchHtml.SetBody("<b>This is the Watch HTML part</b>")
loo_Mime.AppendPart(loo_PartWatchHtml)

Write-Debug loo_Mime.GetMime()
Write-Debug "--"

//  We now have this MIME:

//  	MIME-Version: 1.0
//  	Date: Fri, 02 Jun 2017 09:17:06 -0500
//  	Message-ID: <E6F1F17104442EA09740322D3E2E78806C87FB80@CHILKAT13>
//  	X-Priority: 3 (Normal)
//  	Subject: Apple Watch Example
//  	From: from@example.org
//  	To: to@example.org
//  	Content-Type: multipart/alternative; boundary="------------080904030200000307060803"
//  
//  	--------------080904030200000307060803
//  	Content-Type: text/plain; charset=utf-8
//  	Content-Transfer-Encoding: quoted-printable
//  	Content-Disposition: inline
//  
//  	This is the plain text part.
//  	--------------080904030200000307060803
//  	Content-Type: text/watch-html; charset=utf-8
//  	Content-Disposition: inline
//  	Content-Transfer-Encoding: quoted-printable
//  
//  	<b>This is the Watch HTML part</b>
//  	--------------080904030200000307060803--

//  Create the text/html MIME part and add it.
loo_PartHtml = create oleobject
li_rc = loo_PartHtml.ConnectToNewObject("Chilkat.Mime")

loo_PartHtml.ContentType = "text/html"
loo_PartHtml.Charset = "utf-8"
loo_PartHtml.Disposition = "inline"
loo_PartHtml.Encoding = "quoted-printable"
loo_PartHtml.SetBody("<p>This is the standard HTML part</p>")
loo_Mime.AppendPart(loo_PartHtml)

Write-Debug loo_Mime.GetMime()
Write-Debug "--"

//  We now have this MIME:

//  	MIME-Version: 1.0
//  	Date: Fri, 02 Jun 2017 09:17:06 -0500
//  	Message-ID: <E6F1F17104442EA09740322D3E2E78806C87FB80@CHILKAT13>
//  	X-Priority: 3 (Normal)
//  	Subject: Apple Watch Example
//  	From: from@example.org
//  	To: to@example.org
//  	Content-Type: multipart/alternative; boundary="------------080904030200000307060803"
//  
//  	--------------080904030200000307060803
//  	Content-Type: text/plain; charset=utf-8
//  	Content-Transfer-Encoding: quoted-printable
//  	Content-Disposition: inline
//  
//  	This is the plain text part.
//  	--------------080904030200000307060803
//  	Content-Type: text/watch-html; charset=utf-8
//  	Content-Disposition: inline
//  	Content-Transfer-Encoding: quoted-printable
//  
//  	<b>This is the Watch HTML part</b>
//  	--------------080904030200000307060803
//  	Content-Type: text/html; charset=utf-8
//  	Content-Disposition: inline
//  	Content-Transfer-Encoding: quoted-printable
//  
//  	<p>This is the standard HTML part</p>
//  	--------------080904030200000307060803--

//  Load the email object with this MIME, and we're good to go..
loo_Email.SetFromMimeText(loo_Mime.GetMime())
Write-Debug loo_Email.GetMime()


destroy loo_Email
destroy loo_Mime
destroy loo_PartPlainText
destroy loo_PartWatchHtml
destroy loo_PartHtml