onInteractionRemoved
このハンドラーは、エージェントとのやり取りが終了した後に呼び出されます。このイベントには、完了したやり取りに関するすべてのデータが含まれます。Communicator ウィジェット 2.0 にのみ適用されます。
リクエスト
構文
| on('ON_INTERACTION_REMOVED', handler: OnInteractionRemovedHandler): void
type OnInteractionRemovedHandler = (removedInteraction: InteractionData) => void type InteractionData = { interactionId: string 状態: InteractionState type: InteractionType callParties: CallParty[] chatParties: ChatParty[] callMuted: boolean callRecording: boolean attachedData: AttachedData internal: boolean phoneNumber?: string メール?: string callDirection?: CallDirection startTime?: number endTime?: number duration?: number description?: string disposition?: string globalInteractionId?: string サービス?: string 再生URL?: 文字列 録音URL?: 文字列 DNIS?: 文字列 ANI?: 文字列 発信元?: InteractionOrigination } 型 InteractionType = "音声" | "チャット" | "メール" type InteractionState = "不明" | "キュー" | "ivr" | "wrap_up" | "wrap_up_hold" | "delivered" | "delivery_pending" | "hold" | "完了" type InteractionOrigination = "dialpad" | "dialpad-search" | "ディレクトリ" | "履歴" | "お気に入り" | "ワークアイテム" | "インターアクション" | "連絡先プロフィール" | "ヘルプ" | "会議" | "auto" | "integration-api" type CallDirection = "インバウンド" | "アウトバンド" type CallParty = { id: string name: string 電話: string userId?: string } type ChatPartyType = "internal" | "external" type ChatParty = { id: string type: ChatPartyType name: string userId?: string contactId?: string email?: string phone?: string } |
パラメータ
| パラメータ | パラメータ値 | データ型 | オプション/必須 | 説明 |
| interaction | ||||
| 入力 | 文字列 | 必須 | インタラクションの種類を示します。認識される種類は以下の通りです:
| |
| interactionId | 文字列 | 必須 | インタラクションのid | |
| globalInteractionId | 文字列 | オプション | インタラクションのグローバルインタラクション id (GIID) | |
| サービス | 文字列 | オプション | そのインタラクションに関連するサービスの名前 | |
| callParties | CallParty[] | 必須 | 通話参加者のリストを提供します。なお、これは type が「音声」であるインタラクションに適用されます。各項目は以下の通りです:
| |
| chatParties | ChatParty[] | 必須 | チャットの参加者のリストを提供します。なお、これは type が「chat」であるインタラクションに適用されます。各項目は以下の通りです:
| |
| callMuted | ブール値 | 必須 | true に設定するとコールのミュートが有効になり、false に設定するとミュートが有効になりません。コールのほかでのやり取りでは常に false となる点にご注意ください。 | |
| callRecording | ブール値 | 必須 | true に設定すると、通話録音機能が有効になります。false に設定すると、通話録音機能は無効になります。通話以外の操作については、常に false に設定される点にご注意ください。 | |
| disposition | 文字列 | オプション | この受け付けられたインタラクションのdispositionカテゴリーの名前 | |
| 説明 | 文字列 | オプション | そのインタラクションについてエージェントが追加したメモ | |
| recordingUrl | 文字列 | オプション | 通話録音のURLです。なお、これは「'type」が「音声」であるインタラクションに適用される点にご注意ください。 | |
| playbackUrl | 文字列 | オプション | 通話録音の再生用URLです。なお、これは「音声」タイプのインタラクションに適用されます。 | |
| callDirection | 文字列 | オプション | コールのタイプです。認識される方向は以下の通りです:
なお、これはタイプが「音声」であるインタラクションに適用されます。 | |
| 内線 | ブール値 | 必須 | そのインタラクションが内線対話(別のエージェントとの間)のものか、外部の顧客とのものかを示します。 | |
| DNIS | 文字列 | オプション | ダイヤル番号認識サービス (DNIS)。なお、これはタイプが「音声」であるインタラクションに適用されます。 | |
| ANI | 文字列 | オプション | 転送時の自動番号識別(ANI)です。なお、これはタイプが'「音声」であるインタラクションに適用されます。 | |
| phoneNumber | 文字列 | オプション | 受信先の電話番号です。なお、これはタイプが'「音声」であるインタラクションに適用されます。 | |
| startTime | 数値 | オプション | インタラクションの開始日時 | |
| endTime | 数値 | オプション | インタラクションの終了日時 | |
| duration | 数値 | オプション | インタラクションの duration(秒単位) | |
| 添付データ | オブジェクト | 必須 | シナリオからインタラクションに添付されたキーと値のペア | |
| 発生元 | 文字列 | オプション | インタラクションがどのように開始されたかを示します。事前定義された値のリストがあります。 |
リクエスト例
const interactionsList: InteractionData[] = [];
function interactionRemovedCallback(data: InteractionData) {
const delIndex = interactionsList.findIndex(item => item.interactionId === data.interactionId);
if (delIndex !== -1) {
interactionsList.splice(delIndex, 1);
}
}
adApi.on("ON_INTERACTION_REMOVED", interactionRemovedCallback);
戻り値
null