Sample code for 30+ languages & platforms
Xbase++ 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 Xbase++ Downloads

Xbase++
LOCAL nSuccess
LOCAL oEmail
LOCAL oMime
LOCAL oPartPlainText
LOCAL oPartWatchHtml
LOCAL oPartHtml

nSuccess := 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.
oEmail := CreateObject("Chilkat.Email")
oEmail:Body := "This is the plain text part."
oEmail:Subject := "Apple Watch Example"
oEmail:From := "from@example.org"
oEmail:AddTo("", "to@example.org")

? oEmail:GetMime()
? "--"

//  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..
oMime := CreateObject("Chilkat.Mime")
oMime:LoadMime(oEmail:GetMime())

//  Convert this MIME to multipart/alternative.
oMime:ConvertToMultipartAlt()

? oMime:GetMime()
? "--"

//  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..

oPartPlainText := CreateObject("Chilkat.Mime")
nSuccess := oMime:PartAt(0, oPartPlainText)
IF (nSuccess == 0)
    ? oMime:LastErrorText
    oEmail:destroy()
    oMime:destroy()
    oPartPlainText:destroy()
    RETURN
ENDIF

oPartPlainText:Charset := "utf-8"
oPartPlainText:Disposition := "inline"
oPartPlainText:Encoding := "quoted-printable"

//  Create the text/watch-html MIME part and add it.
oPartWatchHtml := CreateObject("Chilkat.Mime")
oPartWatchHtml:ContentType := "text/watch-html"
oPartWatchHtml:Charset := "utf-8"
oPartWatchHtml:Disposition := "inline"
oPartWatchHtml:Encoding := "quoted-printable"
oPartWatchHtml:SetBody("<b>This is the Watch HTML part</b>")
oMime:AppendPart(oPartWatchHtml)

? oMime:GetMime()
? "--"

//  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.
oPartHtml := CreateObject("Chilkat.Mime")
oPartHtml:ContentType := "text/html"
oPartHtml:Charset := "utf-8"
oPartHtml:Disposition := "inline"
oPartHtml:Encoding := "quoted-printable"
oPartHtml:SetBody("<p>This is the standard HTML part</p>")
oMime:AppendPart(oPartHtml)

? oMime:GetMime()
? "--"

//  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..
oEmail:SetFromMimeText(oMime:GetMime())
? oEmail:GetMime()

oEmail:destroy()
oMime:destroy()
oPartPlainText:destroy()
oPartWatchHtml:destroy()
oPartHtml:destroy()