Define the message editor interface (optional)
Applicable channels: Custom
With the unlimited variety of custom channels you can create, you may need to provide different message template editors. You can define how a message template editor should look and what attributes it contains to match the needs of a specific channel.
If you don't configure a message template editor, Dynamics 365 Customer Insights - Journeys uses a generic user interface editor. SMS channels use the native SMS editor.
Create a custom entity
First, create a custom entity that includes all the message parts defined in your channel. Use the same names but prefix the publisher; for example, cr65f_text for the message part with msdyn_name
attribute "text." This entity doesn't store anything. It's only used as metadata to define your message contract.
The entity must also include the placeholders attribute that's used for personalization in Customer Insights - Journeys. The placeholders attribute should also have the publisher prefix. For example:
..
<attributes>
..
<attribute PhysicalName="cr65f_name">..</attribute>
<attribute PhysicalName="cr65f_placeholders">..</attribute>
<attribute PhysicalName="cr65f_text">..</attribute>
..
</attributes>
..
Create a form
Next, create a form for the custom entity that will be loaded in the Customer Insights - Journeys content editor. The form should contain the cr65f_text
and cr65f_placeholders
attributes. For example:
..
<formid>{69723cfe-3835-4126-ab9a-a82a5b88c21d}</formid>
<form>
<tabs>
<tab verticallayout="true" id="{921c575b-3e4a-495c-867d-b8f6e1c113e0}" IsUserDefined="1">
<labels>
<label description="General" languagecode="1033" />
</labels>
<columns>
<column width="100%">
<sections>
<section showlabel="false" showbar="false" IsUserDefined="0" id="{661ec403-bf06-41a0-86de-f93a05c558f6}">
<labels>
<label description="General" languagecode="1033" />
</labels>
<rows>
<row>
<cell id="{95b0236e-63bd-c6ea-52dc-d7b9c4dca696}" showlabel="true" locklevel="0">
<labels>
<label description="Text" languagecode="1033" />
</labels>
<control id="cr65f_text" classid="{F9A8A302-114E-466A-B582-6771B2AE0D92}" datafieldname="cr65f_text" disabled="false" uniqueid="{05bb6ed1-e802-412c-9813-7eded53f3f73}" />
</cell>
</row>
<row>
<cell id="{dc3b7ed4-9a3d-14e1-ac32-b851ea4e11c3}" showlabel="true" locklevel="0" visible="false">
<labels>
<label description="Placeholders" languagecode="1033" />
</labels>
<control id="cr65f_placeholders" classid="{E0DECE4B-6FC8-4a8f-A065-082708572369}" datafieldname="cr65f_placeholders" disabled="false" uniqueid="{b02dc4a0-7711-0a2a-0ce4-d0c384a17712}" />
</cell>
</row>
</rows>
</section>
</sections>
</column>
</columns>
</tab>
</tabs>
..
</form>
..
The form ID of this entity is assigned to msdyn_messageformid attribute at the channel definition step.
You can use custom controls on the form or out-of-the-box controls that support personalization.
[!INCLUDE [footer-include] (./includes/footer-banner.md)]