Sample code for 30+ languages & platforms
DataFlex

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 DataFlex Downloads

DataFlex
Use ChilkatAx-win32.pkg

Procedure Test
    Boolean iSuccess
    Handle hoEmail
    Handle hoMime
    Variant vPartPlainText
    Handle hoPartPlainText
    Variant vPartWatchHtml
    Handle hoPartWatchHtml
    Variant vPartHtml
    Handle hoPartHtml
    String sTemp1

    Move False To iSuccess

    // 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.
    Get Create (RefClass(cComChilkatEmail)) To hoEmail
    If (Not(IsComObjectCreated(hoEmail))) Begin
        Send CreateComObject of hoEmail
    End
    Set ComBody Of hoEmail To "This is the plain text part."
    Set ComSubject Of hoEmail To "Apple Watch Example"
    Set ComFrom Of hoEmail To "from@example.org"
    Get ComAddTo Of hoEmail "" "to@example.org" To iSuccess

    Get ComGetMime Of hoEmail To sTemp1
    Showln sTemp1
    Showln "--"

    // 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..
    Get Create (RefClass(cComChilkatMime)) To hoMime
    If (Not(IsComObjectCreated(hoMime))) Begin
        Send CreateComObject of hoMime
    End
    Get ComGetMime Of hoEmail To sTemp1
    Get ComLoadMime Of hoMime sTemp1 To iSuccess

    // Convert this MIME to multipart/alternative.
    Get ComConvertToMultipartAlt Of hoMime To iSuccess

    Get ComGetMime Of hoMime To sTemp1
    Showln sTemp1
    Showln "--"

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

    Get Create (RefClass(cComChilkatMime)) To hoPartPlainText
    If (Not(IsComObjectCreated(hoPartPlainText))) Begin
        Send CreateComObject of hoPartPlainText
    End
    Get pvComObject of hoPartPlainText to vPartPlainText
    Get ComPartAt Of hoMime 0 vPartPlainText To iSuccess
    If (iSuccess = False) Begin
        Get ComLastErrorText Of hoMime To sTemp1
        Showln sTemp1
        Procedure_Return
    End

    Set ComCharset Of hoPartPlainText To "utf-8"
    Set ComDisposition Of hoPartPlainText To "inline"
    Set ComEncoding Of hoPartPlainText To "quoted-printable"

    // Create the text/watch-html MIME part and add it.
    Get Create (RefClass(cComChilkatMime)) To hoPartWatchHtml
    If (Not(IsComObjectCreated(hoPartWatchHtml))) Begin
        Send CreateComObject of hoPartWatchHtml
    End
    Set ComContentType Of hoPartWatchHtml To "text/watch-html"
    Set ComCharset Of hoPartWatchHtml To "utf-8"
    Set ComDisposition Of hoPartWatchHtml To "inline"
    Set ComEncoding Of hoPartWatchHtml To "quoted-printable"
    Send ComSetBody To hoPartWatchHtml "<b>This is the Watch HTML part</b>"
    Get pvComObject of hoPartWatchHtml to vPartWatchHtml
    Get ComAppendPart Of hoMime vPartWatchHtml To iSuccess

    Get ComGetMime Of hoMime To sTemp1
    Showln sTemp1
    Showln "--"

    // 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.
    Get Create (RefClass(cComChilkatMime)) To hoPartHtml
    If (Not(IsComObjectCreated(hoPartHtml))) Begin
        Send CreateComObject of hoPartHtml
    End
    Set ComContentType Of hoPartHtml To "text/html"
    Set ComCharset Of hoPartHtml To "utf-8"
    Set ComDisposition Of hoPartHtml To "inline"
    Set ComEncoding Of hoPartHtml To "quoted-printable"
    Send ComSetBody To hoPartHtml "<p>This is the standard HTML part</p>"
    Get pvComObject of hoPartHtml to vPartHtml
    Get ComAppendPart Of hoMime vPartHtml To iSuccess

    Get ComGetMime Of hoMime To sTemp1
    Showln sTemp1
    Showln "--"

    // 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..
    Get ComGetMime Of hoMime To sTemp1
    Get ComSetFromMimeText Of hoEmail sTemp1 To iSuccess
    Get ComGetMime Of hoEmail To sTemp1
    Showln sTemp1


End_Procedure