Interacción de creación de actividades de canal personalizado
Nota
Dynamics 365 Marketing y Dynamics 365 Customer Insights son ahora Customer Insights - Journeys y Customer Insights - Data. Para obtener más información, consulte Preguntas frecuentes de Dynamics 365 Customer Insights
Los nuevos clientes de Customer Insights - Journeys solo reciben características de recorridos en tiempo real. Para obtener más información, consulte Instalación de recorridos en tiempo real predeterminada.
Importante
Este artículo solo se aplica al marketing saliente, que se eliminará del producto el 30 de junio de 2025. Para evitar interrupciones, realice la transición a recorridos en tiempo real antes de esta fecha. Más información: Información general sobre la transición
La tabla siguiente describe los parámetros de entrada requeridos por la acción msdyncrm_CustomChannelActivityCreateInteraction
:
Parámetro de entrada | Tipo | Descripción |
---|---|---|
Id. de actividad | String | El valor de atributo msdyncrm_activityid de la entidad msdyncrm_customerjourneycustomchannelactivity que contiene el id. de actividad del canal personalizado. |
CustomerJourney | EntityReference | Valor de atributo msdyncrm_customerjourney de la entidad msdyncrm_customerjourneycustomchannelactivity que contiene la referencia de entidad a recorrido del cliente que origina la llamada. |
CustomerJourneyIteration | EntityReference | Valor de atributo msdyncrm_customerjourneyiteration de la entidad msdyncrm_customerjourneycustomchannelactivity que contiene la iteración de referencia de entidad a recorrido del cliente. |
Contacto | EntityReference | Valor de atributo msdyncrm_contact de la entidad msdyncrm_customerjourneycustomchannelactivity que contiene la referencia de entidad a contacto procesado. |
EntityType | String | Valor de atributo msdyncrm_entitytype de la entidad msdyncrm_customerjourneycustomchannelactivity que contiene la cadena que representa el tipo de entidad de entidad personalizada creada en el paso 1 y definida en la definición del mosaico del canal personalizado. |
Id. de entidad | String | Valor de atributo msdyncrm_entityid del id. de registro msdyncrm_customerjourneycustomchannelactivity de la entidad personalizada creada en el paso 1 y definida por el elemenot EntityType en la definición del mosaico del canal personalizado. |
ResponseType | String | Id. de uno de los tipos de respuesta definidos en la definición del mosaico del canal personalizado. |
TriggerKeyword | String | (Opcional) Palabra clave para el tipo de respuesta personalizada definida en la definición del mosaico personalizado. |
El siguiente XML muestra la sección de la definición de mosaico del canal personalizado. Esta sección define tres tipos de respuestas. Los primeros dos, sent
y delivered
, son los tipos de respuesta estándar. El tercero, keyword
, permite pasar valor textual adicional a la interacción.
<ResponseTypes>
<ResponseType id="sent">
<Labels>
<!-- Labels should always have a Label for 1033 -->
<Label locId="1033">Sent</Label>
<Label locId="1031">[Sent]</Label>
</Labels>
</ResponseType>
<ResponseType id="delivered">
<Labels>
<!-- Labels should always have a Label for 1033 -->
<Label locId="1033">Delivered</Label>
<Label locId="1031">[Delivered]</Label>
</Labels>
</ResponseType>
<ResponseType id="keyword" custom="True">
<!-- there should be only one response type with attribute custom=true -->
<Labels>
<!-- Labels should always have a Label for 1033 -->
<Label locId="1033">Keyword match</Label>
<Label locId="1031">[Keyword match]</Label>
</Labels>
</ResponseType>
</ResponseTypes>
Emitir interacción de creación de actividades de canal personalizado
El siguiente código muestra cómo emitir la interacción de creación de actividades de canal personalizado mediante programación. En este ejemplo, la actividad de referencia se define en el registro de actividad del canal personalizado. Emitimos la interacción con ResponseType = keyword
y TriggerKeyword = interested
.
var orgServiceFactory = serviceProvider.GetService(typeof(IOrganizationServiceFactory)) as IOrganizationServiceFactory;
IOrganizationService orgService = orgServiceFactory.CreateOrganizationService(context.UserId);
//Id of msdyncrm_customerjourneycustomchannelactivity entity
Guid Id = "<Record Guid>";
//Get response from your service or use predefined response type for keyword based responses.
string responseType = "keyword";
//Get keyword response from your service (Optional)
string triggerKeyWord = "interested";
//Note: if you emmiting interaction on creation of msdyncrm_customerjourneycustomchannelactivity entity instance, there is no need to retrieve it, you can use Target
Entity customChannelRecord = orgService.Retrieve( "msdyncrm_customerjourneycustomchannelactivity",Id,new Microsoft.Xrm.Sdk.Query.ColumnSet(true));
var emitInteractionRequest = new OrganizationRequest("msdyncrm_CustomChannelActivityCreateInteraction");
emitInteractionRequest.Parameters.Add("ActivityId", customChannelRecord.GetAttributeValue<string>("msdyncrm_activityid"));
emitInteractionRequest.Parameters.Add("CustomerJourney", customChannelRecord.GetAttributeValue<EntityReference>("msdyncrm_customerjourney"));
emitInteractionRequest.Parameters.Add("CustomerJourneyIteration", customChannelRecord.GetAttributeValue<EntityReference>("msdyncrm_customerjourneyiteration"));
emitInteractionRequest.Parameters.Add("Contact", customChannelRecord.GetAttributeValue<EntityReference>("msdyncrm_contact"));
emitInteractionRequest.Parameters.Add("EntityId", customChannelRecord.GetAttributeValue<string>("msdyncrm_entityid"));
emitInteractionRequest.Parameters.Add("EntityType", customChannelRecord.GetAttributeValue<string>("msdyncrm_entitytype"));
emitInteractionRequest.Parameters.Add("ResponseType", responseType);
//Needed if response type has “custom” attribute set to “True”
emitInteractionRequest.Parameters.Add("TriggerKeyword", triggerKeyWord);
//Emit interaction
orgService.Execute(emitInteractionRequest);