Ativar campos para identificar clientes
Pode definir um campo no Dataverse para as tabelas Contacto e Conta diferente dos campos predefinidos e identificar o cliente que entra em contacto pelo canal de voz.
Por exemplo, se pretender usar os campos do Dataverse listados na tabela para identificar um chamador de voz, efetue os passos a seguir.
Table | campo Dataverse | Etiqueta de IU |
---|---|---|
Contacto | Telephone1 |
Telefone da Empresa |
Contacto | Telephone2 |
Telefone de Casa |
Contacto | Telephone3 |
Telefone 3 |
Contacto | Mobilephone |
Telemóvel |
Conta | Telephone1 |
Telefone Principal |
Conta | Telephone2 |
Outro Telefone |
Na instância do Dynamics 365, verifique as regras de identificação do registo para o fluxo de trabalho de voz da seguinte maneira:
Para procurar
msdyn_recordidentificationrule
, execute a seguinte API OData.https://
<_org_uri_>
/api/data/v9.0/msdyn_liveworkstreams(<_workstream_id_>
)Utilize o fetchXML a seguir para atualizar os 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>undefined</RecordIdentificationRuleSet>
“}), headers: { 'Content-type': 'application/json; charset=UTF-8' } }) .then()