Salesforceのイベント
あなたは火に統合を設定するかのいずれかでイベントをリッスンすることができますSalesforce コンソールでSalesforceクラシックまたは(のpostMessage APIやライトニング・メッセージ・サービス付き)雷の経験のすべてのバージョンインチ イベントの種類とそれらを起動またはリスンする方法は、使用するSalesforceユーザーインターフェースによって異なります。
Salesforce Console Integration Toolkitのイベントモデルを介して、統合は以下の項目に関連して発生するイベントを起動およびリッスンします。
- ステータスの変更(利用可能、ビジー、退席中、不在、待機中など)
- 通話アクティビティ(接続、切断、ACWが必要、ACWが完了)
- インタラクション状態の変更(ピックアップ、切断、ミュート、ホールド、セキュア一時停止、blindTransfer、consultTransfer、finishTransfer、secureSession)
開発者はこれらのイベントを使用するVisualforceページを作成できます。 コードの例については、以下を参照してください。 Salesforce Classic Consoleアプリのイベント (GitHub)。
Salesforceコンソールについては、を参照してください。 Salesforceクラシックのカスタムコンポーネントでコンソールをカスタマイズする Salesforceドキュメントにあります。
イベントモデルの使用については、 Salesforce Salesforceクラシック用コンソール統合ツールキット Salesforceドキュメントにあります。
統合により、次のイベントを起動してSalesforce送信できます。
- ACW_COMPLETED
- 要後処理 (ACW)
- CLIENT_EVENT
- INTERACTION_CONNECTED
- インタラクションの切断
- INTERACTION_EVENT
- LOGGED_OUT
- UPDATE_STATUS
ACW_COMPLETED
ACWが完了しました。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
理由 | 文字列 | イベントのタイプ。 | |
interactId | 文字列 | インタラクションのID。 |
例
{ "reason": "acw_completed", "interactionId": "44560c74-5e84-4062-94b6-5680cdeb54d5" }
要後処理 (ACW)
ACWが必要です。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
理由 | 文字列 | イベントのタイプ。 | |
interactId | 文字列 | インタラクションのID。 |
例
{ "reason": "acw_required", "interactionId": "44560c74-5e84-4062-94b6-5680cdeb54d5" }
CLIENT_EVENT
クライアントイベント。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
理由 | 文字列 | イベントのタイプ。 | |
データ | オブジェクト | 見る データオブジェクト. |
データオブジェクト
アクションを定義します。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
カテゴリ | 文字列 | イベントのタイプ。 |
詳細については、以下を参照してください。 購読タイプごとのイベント (Genesys Cloud Developer Center)を参照してください。 |
データ | オブジェクト |
例
{ "reason": "client", "data": { "type": "Notification", "category": "interactionSelection", "data": { } } }
INTERACTION_EVENT
相互作用状態の変更。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
理由 | 文字列 | アクションのタイプ。 | |
データ | オブジェクト | 見る データオブジェクト. |
データオブジェクト
アクションを定義します。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
カテゴリ | 文字列 | イベントのタイプ。 | 有効な値 変更、追加。 |
データ | オブジェクト |
例
{ "reason": "interaction", "data": { "category": "change", "data": { } } }
INTERACTION_CONNECTED
相互作用がつながった。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
理由 | 文字列 | イベントのタイプ。 | |
interactId | 文字列 | インタラクションのID。 |
例
{ "reason": "connected", "interactionId": “44560c74-5e84-4062-94b6-5680cdeb54d5″ }
インタラクションの切断
対話が切断されました。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
理由 | 文字列 | イベントのタイプ。 | |
interactId | 文字列 | インタラクションのID。 |
例
{ "reason": "disconnected", "interactionId": “44560c74-5e84-4062-94b6-5680cdeb54d5″ }
LOGGED_OUT
ユーザーがログアウトしました。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
理由 | 文字列 | イベントのタイプ。 |
例
{ "reason": "logged_out" }
UPDATE_STATUS
ユーザーがログアウトしました。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
理由 | 文字列 | イベントのタイプ。 | |
ステータス | 文字列 | エージェントのステータス 。 | |
id | 文字列 | 選択したステータス ID(プライマリまたはセカンダリ)。 | |
sub_status | 文字列 | エージェントのセカンダリステータス 。 | 統合は二次の状態を使用している場合は、 応答二含んステータス情報を。 |
例
{
"reason": "status_updated",
"status": "AVAILABLE",
"id": "44560c74-5e84-4062-94b6-5680cdeb54d5",
"sub_status":"Available Work At Home"
}
統合により、 ステータス変更とエージェントのステータス変更に関する次のアクションが公開されます。
アドアソシエーション
インタラクションログに新しい連絡先または関係の関連付けを追加します。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
データ | オブジェクト | 見る データオブジェクト. |
データオブジェクト
アクションを定義します。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
type | 文字列 | 協会の種類。 |
値: 接触と関係 Contact の値は、埋め込みクライアントインターフェースのインタラクションログビューのName メニューに、Relation の値はRelated To メニューに表示されます。 注意: Salesforce のタスクレコードの
WhoId にコンタクトの値を、WhatId にリレーションの値を関連付けることを確認します。 互換性のないレコードフィールドと関連付けると、コールログの保存要求が失敗します。 タスクレコードフィールドの詳細については、Salesforce ドキュメント を参照してください。 |
id | 文字列 | アソシエーションのID。 | |
テキスト | 文字列 | アソシエーションの表示名。 | |
選ぶ | ブール型 |
|
|
interactId | 文字列 | アソシエーションを受信するインタラクションのID。 | select を true に設定すると、統合はこの ID を持つインタラクションにのみ関連付けを追加します。 |
例
この例では、統合により、ID1234と表示名John Smithを持つ新しいコンタクトの関連付けがインタラクションに追加されます。
{ "type": "PureCloud.addAssociation", "data": { "type": "contact", "id": "1234", "text": "John Smith" } }
カスタム属性の追加
インタラクションにカスタム属性を追加します。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
データ | オブジェクト | 見る データオブジェクト. |
データオブジェクト
アクションを定義します。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
id | 文字列 | インタラクションのID。 | |
attributes | オブジェクト | カスタムインタラクション属性のキーと値のペア。 |
例
{ "data": { "id": "1234-1234-1234-1234", "attributes": { "record_url": "/0000413456" } } }
状態を変える
インタラクションの状態を更新します。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
データ | オブジェクト | 見る データオブジェクト. |
データオブジェクト
アクションを定義します。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
action | 文字列 | 相互作用の望ましい状態。 |
値: 値:ピックアップ、切断、ホールド、ミュート、securePause、blindTransfer、consultTransfer、finishTransfer、secureSession。 使用のみ 終了転送 相談の転送および セキュアセッション 安全なIVRフローを実現します。 |
id | 文字列 | インタラクションのID。 | |
参加者コンテキスト | オブジェクト | 見る participantContextオブジェクト. | 使用のみ 参加者コンテキスト いつ アクション は に設定されます ブラインド転送 または consultTransfer(コンサルテーション. |
secureSessionContext (セキュアセッションコンテキスト) | オブジェクト | 参照 secureSessionContext オブジェクトsecureSessionContext object. | 使用のみ secureSessionContext (セキュアセッションコンテキスト) いつ アクション は に設定されます セキュアセッション. |
見る participantContextオブジェクト.
転送を受信するエンティティを定義します。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
転送先 | 文字列 | 外部転送のエージェントまたはキューのID、フロー名、フローID、または電話番号。 |
フロー名またはフロー ID に sip: のプレフィックスを付けます (例: sip:AuditorSecureFlow)。 特殊文字を encodeURIComponent() エンコードURIコンポーネント() メソッド。 |
transferTargetType | 文字列 | 転送エンティティのタイプ。 |
値: userId、queueId、address。 使用 住所 フロー名、フローID、または外部転送用の電話番号 転送ターゲット. |
secureSessionContext オブジェクトsecureSessionContext object
転送を受信するエンティティを定義します。
パラメーター
名前 | データ・タイプ | 必須またはオプション | 説明 | メモ |
---|---|---|---|---|
フローID | 文字列 | 必須 | 転送されたインタラクションを受信するセキュアフローの ID。 | |
ユーザーデータ | 文字列 | 必須 | 顧客が提供するデータ。 |
にマップします Flow.InvocationData 安全な流れの変数。 警告: 警告: セキュアまたはPCIデータを ユーザーデータ. |
[切断] | ブール型 | 任意 | セキュアセッションの作成後にインタラクションを切断する (true)、またはセキュアセッションの作成後にインタラクションを切断しない (false)。 |
例
次の例は、エージェントまたはキューにコンサルテーションなしで転送されたインタラクションを示しています。
{ "data": { "action": "blindTransfer", "id": "1234-1234-1234-1234", "participantContext": { "transferTarget": "3175550123", "transferTargetType": "address" } } }
次の例は、安全なIVRフローに転送されたインタラクションを示しています。
{ "data": { "action": "secureSession", "id": "1234-1234-1234-1234", "secureSessionContext": { "flowId": "741f4f39-7a94-470d-a1dd-dd68d01e0dd8", "userData": "hello", "disconnect": false } } }
changestatus
アップデートユーザー ステータス 。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
データ | オブジェクト | 見る データオブジェクト. |
データオブジェクト
アクションを定義します。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
id | 文字列 | インタラクションのID。 |
例
{ "data": { "id": "1234-1234-1234-1234" } }
createConference
複数のインタラクションから会議を作成します。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
データ | オブジェクト | 見る データオブジェクト. |
データオブジェクト
アクションを定義します。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
InteractionIds | 配列 | 会議に追加されたインタラクションIDのリスト。 |
例
{ "data": { "interactionIds": [ "9641cedc-4cc2-48e1-84f7-fc4xxxx513e8", "5eafbfc4-6ff4-40e4-a2d7-dxxxxxxxx809", "363ba2ca-xxxx-405e-bebe-fc59b1ae517b" ] } }
subscribe
クライアントイベントをサブスクライブします。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
データ | オブジェクト | 見る データオブジェクト. |
データオブジェクト
アクションを定義します。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
type | 文字列 | サブスクライブするイベントのタイプ。 | 値: インタラクション、通知、UserAction。 |
カテゴリ | 文字列の配列 | 通知を受け取る個々のカテゴリ。 | 値: 見る サブスクリプションタイプごとのイベント。 |
サブスクリプションタイプごとのイベント
イベント | 分類 | データ |
---|---|---|
インタラクション | データ タイプ: 文字列可能な値: 追加、変更、接続、切断、acw、割り当て解除、callbackPlaced、callbackCallEnded、blindTransfer、consultTransfer、またはcompleteConsultTransfer。 | データ タイプ: オブジェクトまたはインタラクションID |
通知 | データ タイプ: 弦 可能な値: InteractionSelection、chatUpdate、interactionWindow、conversationTranscription。 | |
UserAction | データ タイプ: 弦 可能な値: ログイン、ログアウト、 ステーション 、 ステータス 、モーダル、routingStatus、またはビュー。 | データ タイプ: オブジェクトルーティング |
例
{ "data": { "type": "Notification", "categories": ["interactionSelection", "chatUpdate", "interactionWindow", "conversationTranscription"] } }
サブスクライブされたクライアントイベントのメッセージを受信する方法の詳細については、イベントのCLIENT_EVENTを参照してください。
postMessageのWeb APIを介して、統合が発射できると周り提起されているイベントをリッスンステータス相互作用、通知、またはUserActionsイベントへの変更、相互作用の状態変化、およびサブスクリプション。
コードの例については、以下を参照してください。 Salesforce Lightningアプリのイベント (GitHub)。
イベント名 | 説明 |
---|---|
ハンドシェーク | 次の場合: クライアントイベントを有効にする がコールセンター設定で選択されている場合、統合はクライアントがロードするたびにハンドシェイクイベントを生成します。 握手イベントは、LightningコンポーネントがイベントをGenesys Cloud for Salesforceクライアントに発射するために必要なコンテキストを提供します。 |
インタラクション |
インタラクション状態の変更を起動します。 使用可能な値: 可能な値: add、change、connect、disconnect、accw、deallocate、callbackPlaced、callbackCallEnded、blindTransfer、consultTransfer、completeConsultTransfer、secureSession。 |
通知 |
通知状態の変更を起動します。 使用可能な値: InteractionSelection、chatUpdate、interactionWindow、conversationTranscription、messageUpdate。 |
UserAction |
ユーザーアクション状態の変更を起動します。 使用可能な値: ログイン、ログアウト、 ステーション 、 ステータス 、モーダル、routingStatus、またはビュー。 |
詳細については、以下を参照してください。 購読タイプごとのイベント (Genesys Cloud Developer Center)を参照してください。
管理者は、統合が起動してイベントを待機するようにコールセンター設定を構成します。
- Salesforceで、をクリックします セットアップ。
- 検索する インストール済みパッケージ。
- 下 造るクリック インストール済みパッケージ。
- の インストール済みパッケージ ページをクリックし、 設定 [Genesys Cloud for Salesforce]パッケージの隣に表示されます。
- 下 クライアントイベント設定、次の項目を構成します クライアントイベントメッセージ:
- にとって クライアントイベントメッセージタイプ、 選択する Window.postMessage API。
この設定により、クライアントがロードするたびに統合によってハンドシェイクイベントが発生します。
- (オプション) クライアントイベントタイプ、購読する他のイベント(Interaction、Notification、およびUserAction)を選択します。 クリック 矢印 下に追加するには 選択.
- (オプション)選択 チャット通知を展開 チャット通知イベント用の拡張ペイロードを受信します。
- 保存するをクリックします。
Salesforceクライアント用Genesys Cloudは、postMessage Web APIを通じて生成された次のアクションを公開します。
- アドアソシエーション
- Interaction.addCustomAttributes
- Interaction.createConference
- Interaction.updateState
- User.updateStatus
- subscribe
アドアソシエーション
インタラクションログに新しい連絡先または関係の関連付けを追加します。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
データ | オブジェクト | 見る データオブジェクト. |
データオブジェクト
アクションを定義します。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
type | 文字列 | 協会の種類。 |
値: 接触と関係 Contact の値は、埋め込みクライアントインターフェースのインタラクションログビューのName メニューに、Relation の値はRelated To メニューに表示されます。 注意: Salesforce のタスクレコードの
WhoId にコンタクトの値を、WhatId にリレーションの値を関連付けることを確認します。 互換性のないレコードフィールドと関連付けると、コールログの保存要求が失敗します。 タスクレコードフィールドの詳細については、Salesforce ドキュメント を参照してください。 |
id | 文字列 | アソシエーションのID。 | |
テキスト | 文字列 | アソシエーションの表示名。 | |
選ぶ | ブール型 |
|
|
interactId | 文字列 | アソシエーションを受信するインタラクションのID。 | select を true に設定すると、統合はこの ID を持つインタラクションにのみ関連付けを追加します。 |
例
この例では、統合により、ID1234と表示名John Smithを持つ新しいコンタクトの関連付けがインタラクションに追加されます。
{ "type": "PureCloud.addAssociation", "data": { "type": "contact", "id": "1234", "text": "John Smith" } }
Interaction.addCustomAttributes
インタラクションにカスタム属性を追加します。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
type | 文字列 | アクションのタイプ。 | PureCloud +アクション名。 |
データ | オブジェクト | 見る データオブジェクト. |
データオブジェクト
アクションを定義します。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
id | 文字列 | インタラクションのID。 | |
attributes | オブジェクト | カスタムインタラクション属性のキーと値のペア。 |
例
{ "type": "PureCloud.Interaction.addCustomAttributes", "data": { "id": "1234-1234-1234-1234", "attributes": { "record_url": "/0000413456" } } }
Interaction.createConference
複数のインタラクションから会議を作成します。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
type | 文字列 | アクションのタイプ。 | PureCloud +アクション名。 |
データ | オブジェクト | 見る データオブジェクト. |
データオブジェクト
アクションを定義します。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
InteractionIds | 配列 | 会議に追加されたインタラクションIDのリスト。 |
例
{ "type": "PureCloud.Interaction.createConference", "data": { "interactionIds": [ "9641cedc-4cc2-48e1-84f7-fc4xxxx513e8", "5eafbfc4-6ff4-40e4-a2d7-dxxxxxxxx809", "363ba2ca-xxxx-405e-bebe-fc59b1ae517b" ] } }
Interaction.updateState
インタラクションの状態を更新します。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
type | 文字列 | アクションのタイプ。 | PureCloud +アクション名。 |
データ | オブジェクト | 見る データオブジェクト. |
データオブジェクト
アクションを定義します。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
action | 文字列 | 相互作用の望ましい状態。 |
値: 値:ピックアップ、切断、ホールド、ミュート、securePause、blindTransfer、consultTransfer、finishTransfer、secureSession。 使用のみ 終了転送 相談の転送および セキュアセッション 安全なIVRフローを実現します。 |
id | 文字列 | インタラクションのID。 | |
参加者コンテキスト | オブジェクト | 見る participantContextオブジェクト. | 使用のみ 参加者コンテキスト いつ アクション は に設定されます ブラインド転送 または consultTransfer(コンサルテーション. |
secureSessionContext (セキュアセッションコンテキスト) | オブジェクト | 参照 secureSessionContext オブジェクトsecureSessionContext object. | 使用のみ secureSessionContext (セキュアセッションコンテキスト) いつ アクション は に設定されます セキュアセッション. |
見る participantContextオブジェクト.
転送を受信するエンティティを定義します。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
転送先 | 文字列 | 外部転送のエージェントまたはキューのID、フロー名、フローID、または電話番号。 |
フロー名またはフロー ID に sip: のプレフィックスを付けます (例: sip:AuditorSecureFlow)。 特殊文字を encodeURIComponent() エンコードURIコンポーネント() メソッド。 |
transferTargetType | 文字列 | 転送エンティティのタイプ。 |
値: userId、queueId、address。 使用 住所 フロー名、フローID、または外部転送用の電話番号 転送ターゲット. |
secureSessionContext オブジェクトsecureSessionContext object
転送を受信するエンティティを定義します。
パラメーター
名前 | データ・タイプ | 必須またはオプション | 説明 | メモ |
---|---|---|---|---|
フローID | 文字列 | 必須 | 転送されたインタラクションを受信するセキュアフローの ID。 | |
ユーザーデータ | 文字列 | 必須 | 顧客が提供するデータ。 |
にマップします Flow.InvocationData 安全な流れの変数。 警告: 警告: セキュアまたはPCIデータを ユーザーデータ. |
[切断] | ブール型 | 任意 | セキュアセッションの作成後にインタラクションを切断する (true)、またはセキュアセッションの作成後にインタラクションを切断しない (false)。 |
例
次の例は、エージェントまたはキューにコンサルテーションなしで転送されたインタラクションを示しています。
{ "type": "PureCloud.Interaction.updateState", "data": { "action": "blindTransfer", "id": "1234-1234-1234-1234", "participantContext": { "transferTarget": "3175550123", "transferTargetType": "address" } } }
次の例は、安全なIVRフローに転送されたインタラクションを示しています。
{ "type": "PureCloud.Interaction.updateState", "data": { "action": "secureSession", "id": "1234-1234-1234-1234", "secureSessionContext": { "flowId": "741f4f39-7a94-470d-a1dd-dd68d01e0dd8", "userData": "hello", "disconnect": false, } } }
User.updateStatus
アップデートユーザー ステータス 。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
type | 文字列 | アクションのタイプ。 | PureCloud +アクション名。 |
データ | オブジェクト | 見る データオブジェクト. |
データオブジェクト
アクションを定義します。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
id | 文字列 | インタラクションのID。 |
例
{ "type": "PureCloud.User.updateStatus", "data": { "id": "1234-1234-1234-1234" } }
subscribe
クライアントイベントをサブスクライブします。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
type | 文字列 | アクションのタイプ。 | PureCloud +アクション名。 |
データ | オブジェクト | 見る データオブジェクト. |
データオブジェクト
アクションを定義します。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
type | 文字列 | サブスクライブするイベントのタイプ。 | 値: インタラクション、通知、UserAction。 |
カテゴリ | 文字列の配列 | 通知を受け取る個々のカテゴリ。 | 値: 見る サブスクリプションタイプごとのイベント。 |
サブスクリプションタイプごとのイベント
イベント | 分類 | データ |
---|---|---|
インタラクション | データ タイプ: 文字列 使用可能な値: 追加、変更、接続、切断、acw、割り当て解除、callbackPlaced、callbackCallEnded、blindTransfer、consultTransfer、またはcompleteConsultTransfer。 |
データ タイプ: オブジェクトまたはインタラクションID |
通知 | データ タイプ: 文字列 使用可能な値: InteractionSelection、chatUpdate、interactionWindow、conversationTranscription。 |
|
UserAction | データ タイプ: 文字列 使用可能な値: ログイン、ログアウト、 ステーション 、 ステータス 、モーダル、routingStatus、またはビュー。 |
データ タイプ: オブジェクトルーティング |
例
{ "type": "PureCloud.subscribe", "data": { "type": "Notification", "categories": ["interactionSelection", "chatUpdate", "interactionWindow", "conversationTranscription"] } }
Salesforceがコールセンター設定で選択されたイベントをリッスンして起動できるように照明コンポーネントを作成します。
- AZZ、コンポーネント、およびJavaScriptファイルをSalesforceの開発者コンソールに追加します。
サンプルファイルは、次のサイトからダウンロードできます。 PureCloud for Salesforceアインシュタインの例 GitHubのリポジトリ。
詳細については、 開発者コンソールのファイルメニュー Salesforceドキュメントにあります。
- をセットする タイプ そして id JavaScriptファイルのソース用。
この設定により、クライアントのステータスを変更できます。
source.postMessage({ type: 'PureCloud.User.updateStatus', data: { id: status }, }
- 管理者がInteraction、Notification、またはUserActionsイベントを発生させるように統合を設定した場合は、JavaScriptファイルでこれらのイベントを購読します。
詳細については、 購読 メソッドを Genesysクラウド組み込み可能フレームワーク ドキュメンテーション(Genesys Cloud Developer Center)。
ライトニングメッセージサービスを通じて、統合が発射できると周り提起されているイベントをリッスンステータス相互作用、通知、またはUserActionsイベントへの変更、相互作用の状態変化、およびサブスクリプション。
コードの例については、以下を参照してください。 Salesforce Lightningアプリのイベント (GitHub)。
イベント名 | 説明 |
---|---|
InitialSetup |
Genesys Cloud forSalesforceクライアントがリクエストを処理する準備ができていることを示します。 このイベントは、Lightningコンポーネントがクライアントイベントをサブスクライブできることを示します。 |
インタラクション |
インタラクション状態の変更を起動します。 使用可能な値: 可能な値: add、change、connect、disconnect、accw、deallocate、callbackPlaced、callbackCallEnded、blindTransfer、consultTransfer、completeConsultTransfer、secureSession。 |
通知 |
通知状態の変更を起動します。 使用可能な値: InteractionSelection、chatUpdate、interactionWindow、conversationTranscription、messageUpdate。 |
UserAction |
ユーザーアクション状態の変更を起動します。 使用可能な値: ログイン、ログアウト、 ステーション 、 ステータス 、モーダル、routingStatus、またはビュー。 |
詳細については、以下を参照してください。 購読タイプごとのイベント (Genesys Cloud Developer Center)を参照してください。
管理者は、統合が起動してイベントを待機するようにコールセンター設定を構成します。
- Salesforceで、をクリックします セットアップ。
- 検索する インストール済みパッケージ。
- 下 造るクリック インストール済みパッケージ。
- の インストール済みパッケージ ページをクリックし、 設定 [Genesys Cloud for Salesforce]パッケージの隣に表示されます。
- 下 クライアントイベント設定、次の項目を構成します クライアントイベントメッセージ:
- にとって クライアントイベントメッセージタイプ、 選択する ライトニングメッセージチャネル。
この設定により、統合はメッセージチャネルでメッセージを送信します。
- (オプション)下 クライアントイベントタイプ、サブスクライブする他のイベント(Interaction、Notification、およびUserAction)を選択します。 クリック 矢印 下に追加するには 選択.
- (オプション)選択 チャット通知を展開 チャット通知イベント用の拡張ペイロードを受信します。
- 保存するをクリックします。
Salesforceクライアント用Genesys Cloudは、Lightning Message Serviceから提起された次のアクションを公開します。
- アドアソシエーション
- Interaction.addCustomAttributes
- Interaction.createConference
- Interaction.updateState
- User.updateStatus
- subscribe
アドアソシエーション
インタラクションログに新しい連絡先または関係の関連付けを追加します。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
データ | オブジェクト | 見る データオブジェクト. |
データオブジェクト
アクションを定義します。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
type | 文字列 | 協会の種類。 |
値: 接触と関係 Contact の値は、埋め込みクライアントインターフェースのインタラクションログビューのName メニューに、Relation の値はRelated To メニューに表示されます。 注意: Salesforce のタスクレコードの
WhoId にコンタクトの値を、WhatId にリレーションの値を関連付けることを確認します。 互換性のないレコードフィールドと関連付けると、コールログの保存要求が失敗します。 タスクレコードフィールドの詳細については、Salesforce ドキュメント を参照してください。 |
id | 文字列 | アソシエーションのID。 | |
テキスト | 文字列 | アソシエーションの表示名。 | |
選ぶ | ブール型 |
|
|
interactId | 文字列 | アソシエーションを受信するインタラクションのID。 | select を true に設定すると、統合はこの ID を持つインタラクションにのみ関連付けを追加します。 |
例
この例では、統合により、ID1234と表示名John Smithを持つ新しいコンタクトの関連付けがインタラクションに追加されます。
{ "type": "PureCloud.addAssociation", "data": { "type": "contact", "id": "1234", "text": "John Smith" } }
Interaction.addCustomAttributes
インタラクションにカスタム属性を追加します。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
type | 文字列 | アクションのタイプ。 | PureCloud +アクション名。 |
データ | オブジェクト | 見る データオブジェクト. |
データオブジェクト
アクションを定義します。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
id | 文字列 | インタラクションのID。 | |
attributes | オブジェクト | カスタムインタラクション属性のキーと値のペア。 |
例
{ "type": "PureCloud.Interaction.addCustomAttributes", "data": { "id": "1234-1234-1234-1234", "attributes": { "record_url": "/0000413456" } } }
Interaction.createConference
複数のインタラクションから会議を作成します。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
type | 文字列 | アクションのタイプ。 | PureCloud +アクション名。 |
データ | オブジェクト | 見る データオブジェクト. |
データオブジェクト
アクションを定義します。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
InteractionIds | 配列 | 会議に追加されたインタラクションIDのリスト。 |
例
{ "type": "PureCloud.Interaction.createConference", "data": { "interactionIds": [ "9641xxxx-4bb2-xxxx-84f7-xxxxxx8513e8", "5eafbfc4-6ff4-xxxx-a2d7-d23c1abbd809", "363ba2ca-xxxx-405e-bebe-fc59xxxxx17b" ] } }
Interaction.updateState
インタラクションの状態を更新します。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
type | 文字列 | アクションのタイプ。 | PureCloud +アクション名。 |
データ | オブジェクト | 見る データオブジェクト. |
データオブジェクト
アクションを定義します。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
action | 文字列 | 相互作用の望ましい状態。 |
値: 値:ピックアップ、切断、ホールド、ミュート、securePause、blindTransfer、consultTransfer、finishTransfer、secureSession。 使用のみ 終了転送 相談の転送および セキュアセッション 安全なIVRフローを実現します。 |
id | 文字列 | インタラクションのID。 | |
参加者コンテキスト | オブジェクト | 見る participantContextオブジェクト. | 使用のみ 参加者コンテキスト いつ アクション は に設定されます ブラインド転送 または consultTransfer(コンサルテーション. |
secureSessionContext (セキュアセッションコンテキスト) | オブジェクト | 参照 secureSessionContext オブジェクトsecureSessionContext object. | 使用のみ secureSessionContext (セキュアセッションコンテキスト) いつ アクション は に設定されます セキュアセッション. |
見る participantContextオブジェクト.
転送を受信するエンティティを定義します。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
転送先 | 文字列 | 外部転送のエージェントまたはキューのID、フロー名、フローID、または電話番号。 |
フロー名またはフロー ID に sip: のプレフィックスを付けます (例: sip:AuditorSecureFlow)。 特殊文字を encodeURIComponent() エンコードURIコンポーネント() メソッド。 |
transferTargetType | 文字列 | 転送エンティティのタイプ。 |
値: userId、queueId、address。 使用 住所 フロー名、フローID、または外部転送用の電話番号 転送ターゲット. |
secureSessionContext オブジェクトsecureSessionContext object
転送を受信するエンティティを定義します。
パラメーター
名前 | データ・タイプ | 必須またはオプション | 説明 | メモ |
---|---|---|---|---|
フローID | 文字列 | 必須 | 転送されたインタラクションを受信するセキュアフローの ID。 | |
ユーザーデータ | 文字列 | 必須 | 顧客が提供するデータ。 |
にマップします Flow.InvocationData 安全な流れの変数。 警告: 警告: セキュアまたはPCIデータを ユーザーデータ. |
[切断] | ブール型 | 任意 | セキュアセッションの作成後にインタラクションを切断する (true)、またはセキュアセッションの作成後にインタラクションを切断しない (false)。 |
例
次の例は、エージェントまたはキューにコンサルテーションなしで転送されたインタラクションを示しています。
{ "type": "PureCloud.Interaction.updateState", "data": { "action": "blindTransfer", "id": "1234-1234-1234-1234", "participantContext": { "transferTarget": "3175550123", "transferTargetType": "address" } } }
次の例は、安全なIVRフローに転送されたインタラクションを示しています。
{ "type": "PureCloud.interaction.updateState", "data": { "action": "secureSession", "id": "1234-1234-1234-1234", "secureSessionContext": { "flowId": "741f4f39-7a94-470d-a1dd-dd68d01e0dd8", "userData": "hello", "disconnect": false, } } }
User.updateStatus
アップデートユーザー ステータス 。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
type | 文字列 | アクションのタイプ。 | PureCloud +アクション名。 |
データ | オブジェクト | 見る データオブジェクト. |
データオブジェクト
アクションを定義します。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
id | 文字列 | ステータス ID。 |
例
{ "type": "PureCloud.User.updateStatus", "data": { "id": "1234-1234-1234-1234" } }
subscribe
クライアントイベントをサブスクライブします。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
type | 文字列 | アクションのタイプ。 | PureCloud +アクション名。 |
データ | オブジェクト | 見る データオブジェクト. |
データオブジェクト
アクションを定義します。
パラメーター
名前 | データ・タイプ | 説明 | メモ |
---|---|---|---|
type | 文字列 | サブスクライブするイベントのタイプ。 | 値: インタラクション、通知、UserAction。 |
カテゴリ | 文字列の配列 | 通知を受け取る個々のカテゴリ。 | 値: 見る サブスクリプションタイプごとのイベント。 |
サブスクリプションタイプごとのイベント
イベント | 分類 | データ |
---|---|---|
インタラクション | データ タイプ: 文字列 使用可能な値: 追加、変更、接続、切断、acw、割り当て解除、callbackPlaced、callbackCallEnded、blindTransfer、consultTransfer、またはcompleteConsultTransfer。 |
データ タイプ: オブジェクトまたはインタラクションID |
通知 | データ タイプ: 文字列 使用可能な値: InteractionSelection、chatUpdate、interactionWindow、conversationTranscription。 |
|
UserAction | データ タイプ: 文字列 使用可能な値: ログイン、ログアウト、 ステーション 、 ステータス 、モーダル、routingStatus、またはビュー。 |
データ タイプ: オブジェクトルーティング |
例
{ "type": "PureCloud.subscribe", "data": { "type": "Notification", "categories": ["interactionSelection", "chatUpdate", "interactionWindow", "conversationTranscription"] } }
メッセージチャネルをサブスクライブするには、 PureCloud for Salesforce管理パッケージのバージョンX以降をインストールします。 管理パッケージのこれらのバージョンには、 purecloud__ClientEvent__c すべてのメッセージを受信するチャネル。 購読した後 purecloud__ClientEvent__c、 Salesforceはコールセンターの設定で選択されたイベントをリッスンしてSalesforceできます。
実装方法は、使用するコンポーネントによって異なります。 次のコード例は、Lightning AuraコンポーネントでLMSを使用する方法を示しています。
でLightningメッセージを購読する purecloud__ClientEvent__c Auraコンポーネントのチャネル。
<lightning:messageChannel type="purecloud__ClientEvent__c" aura:id="clientEventMessageChannel" onMessage="{!c.onClientEvent}" scope="APPLICATION"/>
Lightningメッセージを受信するには、 onClientEvent.
({ onClientEvent: function (component, message, helper) { var eventData = message.getParams(); if (eventData) { if(eventData.type === 'Interaction' && eventData.data.id) { console.log(‘Interaction ID: ‘ + eventData.data.id); } } } })
Lightningメッセージを送信するには、Salesforceクライアント用Genesys Cloudがリッスンするイベントを公開します。 イベントのリストについては、 Salesforce向けGenesys Cloudとの通信 セクション。
component.find('clientEventMessageChannel').publish({ type: 'PureCloud.User.updateStatus', data: { id: status } });
他の例については、 Lightningメッセージサービス[開発者プレビュー] Salesforce Developers Blogをご覧ください。
統合の詳細については、以下を参照してください。Salesforce向けGenesys Cloudについて.