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 分後にのみ自動閉鎖の対象となります。

次の手順

Web API を使用してエンティティを更新する

関連項目

会話の自動クローズ