Включить поля для идентификации клиентов
Вы можете задать поле в Dataverse таблицах «Контакты» и «Счета», отличное от полей по умолчанию, и идентифицировать клиента, который связывается по голосовому каналу.
Например, если вы хотите использовать поля, перечисленные в таблице, для идентификации голосового абонента, выполните следующие действия. Dataverse
Таблицу | Dataverse поле | Метка пользовательского интерфейса |
---|---|---|
Контактные сведения | Telephone1 |
Рабочий телефон |
Контактные сведения | Telephone2 |
Домашний телефон |
Контактные сведения | Telephone3 |
Телефон 3 |
Контактные сведения | Mobilephone |
Мобильный телефон |
Организация | Telephone1 |
Основной телефон |
Организация | Telephone2 |
Другой телефон |
В экземпляре Dynamics 365 проверьте правила идентификации записей для голосового рабочего потока следующим образом:
Чтобы найти
msdyn_recordidentificationrule
, запустите следующий API OData.https://
<_org_uri_>
/api/data/v9.0/msdyn_liveworkstreams(<_workstream_id_>
)Для обновления полей используйте следующий XML-код.
(" 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()