Web API を使用して会話の自動クローズを構成する
この記事では、Web API を使って会話の自動終了時間を構成する方法について説明します。
重要
統合ルーティング用に構成されたレコードでは、会話の期間ベースの自動クローズはサポートされていません。 ルーティング レコードを削除すると、関連するキュー項目が削除されます。 クリーンアップ プロセスの一環として、ライブの作業項目または会話も削除されます。
次の GET
リクエストを使用して、事前定義されているすべての構成レコードを取り込みます。
要求
GET [Organization URI]/api/data/v9.1/msdyn_occhannelstateconfigurations
Accept: application/json
OData-MaxVersion: 4.0
OData-Version: 4.0
If-None-Match: null
応答
{
"@odata.context":"[Organization URI]/api/data/v9.1/$metadata#msdyn_occhannelstateconfigurations",
"value":[
{
"@odata.etag":"W/\"1379367\"",
"_organizationid_value":"758f70a9-7aba-4764-bdda-fcc0023a702f",
"msdyn_name":"Live Chat - Open",
"statecode":0,
"statuscode":1,
"_msdyn_occhannelconfigurationid_value":"836717fd-5578-e911-8196-000d3af7d71e",
"msdyn_autocloseliveworkitemafter":20,
"modifiedon":"2019-10-01T13:41:51Z",
"_modifiedby_value":"d6e088ce-8866-4b3d-8ea2-150ad72e2b79",
"msdyn_ocliveworkitemstate":0,
"msdyn_showconfirmationonsessionclose":false,
"versionnumber":1379367,
"msdyn_occhannelstateconfigurationid":"6283ab63-5778-e911-8196-000d3af7d71e",
"createdon":"2019-10-01T13:41:51Z",
"_createdby_value":"d6e088ce-8866-4b3d-8ea2-150ad72e2b79",
"_modifiedonbehalfby_value":null,
"importsequencenumber":null,
"overriddencreatedon":null,
"_createdonbehalfby_value":null,
"utcconversiontimezonecode":null,
"timezoneruleversionnumber":null
},
{
"@odata.etag":"W/\"1379368\"",
"_organizationid_value":"758f70a9-7aba-4764-bdda-fcc0023a702f",
"msdyn_name":"Live Chat - Active",
"statecode":0,
"statuscode":1,
"_msdyn_occhannelconfigurationid_value":"836717fd-5578-e911-8196-000d3af7d71e",
"msdyn_autocloseliveworkitemafter":null,
"modifiedon":"2019-10-01T13:41:51Z",
"_modifiedby_value":"d6e088ce-8866-4b3d-8ea2-150ad72e2b79",
"msdyn_ocliveworkitemstate":1,
"msdyn_showconfirmationonsessionclose":true,
"versionnumber":1379368,
"msdyn_occhannelstateconfigurationid":"e2737c9a-5778-e911-8196-000d3af7d71e",
"createdon":"2019-10-01T13:41:51Z",
"_createdby_value":"d6e088ce-8866-4b3d-8ea2-150ad72e2b79",
"_modifiedonbehalfby_value":null,
"importsequencenumber":null,
"overriddencreatedon":null,
"_createdonbehalfby_value":null,
"utcconversiontimezonecode":null,
"timezoneruleversionnumber":null
},
]
}
msdyn_occhannelstateconfiguration
エンティティの msdyn_name
属性は会話のチャネルと状態を指定します。 会話の状態の詳細は 顧客サービス用オムニチャネルで会話状態を理解する を参照してください。
msdyn_occhannelconfiguration
エンティティに GET
をリクエストして、既存のチャンネル レコードをすべて取得することができます。 これらの各チャネルで msdyn_occhannelstateconfiguration
エンティティをクエリすると、その状態を確認できます。
msdyn_occhannelstateconfiguration
エンティティ レコードに対して PATCH
要求を行い、msdyn_autocloseliveworkitemafter
属性の値を更新します。
PATCH [Organization URI]/api/data/v9.1/msdyn_occhannelstateconfigurations(6283ab63-5778-e911-8196-000d3af7d71e)
Accept: application/json
OData-MaxVersion: 4.0
OData-Version: 4.0
If-None-Match: null
{
"msdyn_autocloseliveworkitemafter":5
}
ここでは、msdyn_occhannelstateconfigurations
エンティティの既存レコードを更新するサンプルコードを紹介します:
var data =
{
"msdyn_autocloseliveworkitemafter": 2
}
// update the record
Xrm.WebApi.updateRecord("msdyn_occhannelstateconfiguration", "6283ab63-5778-e911-8196-000d3af7d71e", data).then(
function success(result) {
console.log("Auto close time updated");
},
function (error) {
console.log(error.message);
}
);
注意
msdyn_autocloseliveworkitemafter
属性の値は分単位です。 日単位の値を提供する場合は、分単位に変換する必要があります。 たとえば、1 日は 24 x 60 で 1,440 分になります。
msdyn_autocloseliveworkitemafter
属性の値が createdon
属性の値よりも大きい場合、会話は自動的に終了します。
会話がまとめの状態、つまり、エージェントが問題を解決し、会話後のステップを実行して会話を終了できる状態にある場合、msdyn_autocloseliveworkitemafter
属性の値が wrapupinitiatedon
属性の値より大きい場合、会話は終了します。
重要
msdyn_autocloseliveworkitemafter
属性と createdon
属性の値に基づいて会話を終了するかどうかの判断は、PATCH
Web API リクエストの実行時ではなく、スケジュールされたジョブの実行時に行われます。
ライブ チャットのまとめ状態の自動終了を構成する
まとめ 状態のライブチャットを自動的に終了させる既定の時間は 15 分です。 この値は msdyn_autocloseliveworkitemafter
属性で定義されており、ビジネス ニーズに合わせてプログラムで変更することができます。
ワークストリームの まとめのブロック キャパシティ フィールドに定義された値が msdyn_autocloseliveworkitemafter
属性の値よりも大きい場合は、msdyn_autocloseliveworkitemafter
属性で指定された値よりも優先されます。 たとえば、ブロッキング エージェントのキャパシティの値を 15 分、msdyn_autocloseliveworkitemafter
属性を 10 分と設定した場合、まとめ状態 の会話は 15 分間キャパシティを占有し、15 分後にのみ自動閉鎖の対象となります。