ライブ チャット中にカスタム コンテキストを送信する

カスタム コンテキストは、キーまたは値のペアです。 プリミティブの値のみが、キーで許可されます。 このキーは、関連する作業ストリーム用に作成されたコンテキスト変数に対応している必要があります。 一致する論理名を持つライブ ワークストリームの下にコンテキスト変数が作成されていない場合、変数は実行時に文字列としてタイプを想定して作成されます。 カスタム コンテキスト プロバイダーは、新しい会話を開始するときにライブ チャット ウィジェットによって呼び出されます。 この値は大文字と小文字を区別するため、完全一致を使用して値をコンテキスト変数に渡します。 詳細: コンテキスト変数に関する考慮事項

重要

  • setContextProvider は認証されていないチャットにのみ対応しています。 認証されたチャットの場合、JSON Web Token (JWT) を使用する必要があります。 詳細情報: authentication トークンの送信
  • 各チャット セッション中に渡すことができるカスタム コンテキスト変数は 100 個のみです。

顧客がポータルから会話を開始すると、Customer Service 用オムニチャネルにユーザー コンテキストを渡すことができます。 このカスタム コンテキストは、ユーザー インターフェイスに情報を表示 し、会話をルーティングする必要のあるキューを最終的に決定するルーティング ルールを作成するために使用できます。

会話を開始するときにカスタム コンテキストを送信するには、以下の手順に従ってください。

  1. ライブ チャット SDK メソッドは、lcw:ready イベントが発生した後に呼び出される必要があります。 ウィンドウ オブジェクトに独自のイベント リスナーを追加して、イベントをリスニングできます。
  2. lcw:ready イベントが上がったら、setContextProvider メソッドを使用するライブ チャットでカスタム コンテキスト プロバイダを登録します。
  3. startChat メソッドを使用して、会話を開始します

サンプル コード

function contextProvider(){
	//Here it is assumed that the corresponding work stream would have context variables with logical name of 'contextKey1', 'contextKey2', 'contextKey3'. If no context variable exists with a matching logical name, items are created assuming Type:string               
	return {
			'contextKey1': 'contextValue1', // string value
			'contextKey2': 12.34, // number value
			'contextKey3': true // boolean value
	};
}

window.addEventListener("lcw:ready", function handleLivechatReadyEvent(){
	// Handle LiveChat Ready event
	// SDK methods are ready for use now
	// Setting custom context provider to be used with Chat for Dynamics 365
	// The custom context provided by custom context provider can be used for routing the chat to a particular queue
	Microsoft.Omnichannel.LiveChatWidget.SDK.setContextProvider(contextProvider);
	// Starting a new chat
	Microsoft.Omnichannel.LiveChatWidget.SDK.startChat();
});

window.addEventListener("lcw:error", function handleLivechatErrorEvent(errorEvent){
	// Handle LiveChat SDK error event
	console.log(errorEvent);
});

会話のサマリーでコンテキスト変数を表示する方法については、カスタム コンテキストを表示する を参照してください。

参照

getContextProvider
getContextProvider
removeContextProvider
ライブ チャット SDK JavaScript API リファレンス
ボットのコンテキスト変数を構成する