Habilitar campos para identificar clientes
Você pode definir um campo no Dataverse para as tabelas Contact e Account diferente dos campos padrão e identificar o cliente que entra em contato pelo canal de voz.
Por exemplo, se você quiser usar os campos do Dataverse listados na tabela para identificar um chamador de voz, realize as etapas a seguir.
Table | campo Dataverse | Rótulo da interface do usuário |
---|---|---|
Contact | Telephone1 |
Telefone Comercial |
Contact | Telephone2 |
Telefone Residencial |
Contact | Telephone3 |
Telefone 3 |
Contact | Mobilephone |
Celular |
Account | Telephone1 |
Telefone principal |
Account | Telephone2 |
Outro Telefone |
Na instância do Dynamics 365, verifique as regras de identificação do registro para o fluxo de trabalho de voz da seguinte maneira:
Para pesquisar
msdyn_recordidentificationrule
, execute a seguinte API OData.https://
<_org_uri_>
/api/data/v9.0/msdyn_liveworkstreams(<_workstream_id_>
)Use o XML de busca 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()