Habilitar campos para identificar a los clientes

Establece un campo en Dataverse para tablas de Contacto y Cuenta distinto de los campos por defecto e identifica al cliente que contacta por el canal de voz.

Una variable de contexto personalizada, o atributos bajo el contexto de chat en vivo o de interacción telefónica, pueden usarse en el XML de obtención.

Por ejemplo, si desea usar los Dataverse campos enumerados en la tabla para identificar a una persona que llama por voz, siga los pasos que se indican a continuación.

Tabla Campo de Dataverse Etiqueta de interfaz de usuario
Contacto Telephone1 Teléfono del trabajo
Contacto Telephone2 Teléfono fijo
Contacto Telephone3 Teléfono 3
Contacto Mobilephone Teléfono móvil
Cuenta Telephone1 Teléfono principal
Cuenta Telephone2 Otro teléfono

En el caso Dynamics 365, compruebe las reglas de identificación de registros para el flujo de trabajo de voz de la siguiente manera:

  1. Para buscar msdyn_recordidentificationrule, ejecute la siguiente API de OData.

    https://<_org_uri_>/api/data/v9.0/msdyn_liveworkstreams()<_workstream_id_>

  2. Utilice el siguiente fetch XML para actualizar los campos.

(" https://pt-dev.crm6.dynamics.com/api/data/v9.2/msdyn_liveworkstreams(bb4c58fe-468b-d5a3-424c-c5a965ceada2)", { method: 'PATCH', body: JSON.stringify({ "msdyn_recordidentificationrule" : “
<RecordIdentificationRuleSet>
	<RecordIdentificationRule>
		<PrimaryEntity LogicalCollectionName=\"accounts\" PrimaryKeyAttribute=\"accountid\" PrimaryNameAttribute=\"name\"/>
		<fetch version=\"1.0\" output-format=\"xml-platform\" mapping=\"logical\" top=\"2\">
			<entity name=\"account\">
				<attribute name=\"accountid\"/>
				<attribute name=\"name\"/>
				<filter type=\"and\">
					<condition attribute=\"statuscode\" operator=\"eq\" value=\"1\"/>
					<condition attribute=\"name\" operator=\"eq\" value=\"${Name}\"/>
					<filter type=\"or\">
						<condition attribute=\"telephone1\" operator=\"eq\" source=\"msdyn_msdyn_ocliveworkitem_msdyn_ocphonecallengagementctx_liveworkitemid\" value=\"${msdyn_fromphone}\"/>
						<condition attribute=\"telephone2\" operator=\"eq\" source=\"msdyn_msdyn_ocliveworkitem_msdyn_ocphonecallengagementctx_liveworkitemid\" value=\"${msdyn_fromphone}\"/>
					</filter>
					<condition attribute=\"emailaddress1\" operator=\"eq\" value=\"${Email}\"/>
				</filter>
			</entity>
		</fetch>
		<ContextKey name=\"msdyn_account_msdyn_ocliveworkitem_Customer\" isPreferred=\"false\"/>
	</RecordIdentificationRule>
	<RecordIdentificationRule>
		<PrimaryEntity LogicalCollectionName=\"contacts\" PrimaryKeyAttribute=\"contactid\" PrimaryNameAttribute=\"fullname\"/>
		<fetch version=\"1.0\" output-format=\"xml-platform\" mapping=\"logical\" top=\"2\">
			<entity name=\"contact\">
				<attribute name=\"contactid\"/>
				<attribute name=\"fullname\"/>
				<filter type=\"and\">
					<condition attribute=\"statuscode\" operator=\"eq\" value=\"1\"/>
					<condition attribute=\"fullname\" operator=\"eq\" value=\"${Name}\"/>
					<filter type=\"or\">
						<condition attribute=\"mobilephone\" operator=\"eq\" source=\"msdyn_msdyn_ocliveworkitem_msdyn_ocphonecallengagementctx_liveworkitemid\" value=\"${msdyn_fromphone}\"/>
						<condition attribute=\"telephone1\" operator=\"eq\" source=\"msdyn_msdyn_ocliveworkitem_msdyn_ocphonecallengagementctx_liveworkitemid\" value=\"${msdyn_fromphone}\"/>
						<condition attribute=\"telephone2\" operator=\"eq\" source=\"msdyn_msdyn_ocliveworkitem_msdyn_ocphonecallengagementctx_liveworkitemid\" value=\"${msdyn_fromphone}\"/>
						<condition attribute=\"telephone3\" operator=\"eq\" source=\"msdyn_msdyn_ocliveworkitem_msdyn_ocphonecallengagementctx_liveworkitemid\" value=\"${msdyn_fromphone}\"/>
					</filter>
					<condition attribute=\"emailaddress1\" operator=\"eq\" value=\"${Email}\"/>
				</filter>
			</entity>
		</fetch>
		<ContextKey name=\"msdyn_contact_msdyn_ocliveworkitem_Customer\" isPreferred=\"true\"/>
	</RecordIdentificationRule>
	<RecordIdentificationRule>
		<PrimaryEntity LogicalCollectionName=\"incidents\" PrimaryKeyAttribute=\"incidentid\" PrimaryNameAttribute=\"title\"/>
		<fetch version=\"1.0\" output-format=\"xml-platform\" mapping=\"logical\" top=\"2\">
			<entity name=\"incident\">
				<attribute name=\"incidentid\"/>
				<attribute name=\"title\"/>
				<filter type=\"and\">
					<condition attribute=\"ticketnumber\" operator=\"eq\" value=\"${CaseNumber}\"/>
					<condition attribute=\"statuscode\" operator=\"eq\" value=\"1\"/>
					<filter type=\"or\">
						<filter type=\"and\">
							<condition attribute=\"statuscode\" operator=\"eq\" value=\"1\" entityname=\"ac\"/>
							<condition attribute=\"name\" operator=\"eq\" value=\"${Name}\" entityname=\"ac\"/>
							<condition attribute=\"telephone1\" operator=\"eq\" source=\"msdyn_msdyn_ocliveworkitem_msdyn_ocphonecallengagementctx_liveworkitemid\" value=\"${msdyn_fromphone}\" entityname=\"ac\"/>
							<condition attribute=\"emailaddress1\" operator=\"eq\" value=\"${Email}\" entityname=\"ac\"/>
						</filter>
						<filter type=\"and\">
							<condition attribute=\"statuscode\" operator=\"eq\" value=\"1\" entityname=\"co\"/>
							<condition attribute=\"fullname\" operator=\"eq\" value=\"${Name}\" entityname=\"co\"/>
							<condition attribute=\"mobilephone\" operator=\"eq\" source=\"msdyn_msdyn_ocliveworkitem_msdyn_ocphonecallengagementctx_liveworkitemid\" value=\"${msdyn_fromphone}\" entityname=\"co\"/>
							<condition attribute=\"emailaddress1\" operator=\"eq\" value=\"${Email}\" entityname=\"co\"/>
						</filter>
					</filter>
				</filter>
			</filter>
			<link-entity name=\"account\" from=\"accountid\" to=\"customerid\" link-type=\"outer\" alias=\"ac\"/>
			<link-entity name=\"contact\" from=\"contactid\" to=\"customerid\" link-type=\"outer\" alias=\"co\"/>
		</entity>
	</fetch>
	<ContextKey name=\"msdyn_incident_msdyn_ocliveworkitem\"/>
</RecordIdentificationRule></RecordIdentificationRuleSet> 
“}), headers: { 'Content-type': 'application/json; charset=UTF-8' } }) .then() 

Identificar automáticamente a los clientes