はじめに
対話型AIプラットフォーム
チャットボットの概要
自然言語処理(NLP)
ボットの概念と用語
クイックスタートガイド
プラットフォームへのアクセス
ボットビルダーの操作
リリースノート
最新バージョン(英語)
以前のバージョン(英語)
廃止機能(英語)
コンセプト
設計
ストーリーボード
ダイアログタスク
ダイアログタスクとは
ダイアログビルダー
ノードタイプ
インテントノード
ダイアログノード
エンティティノード
フォームノード
確認ノード
ロジックノード
ボットアクションノード
サービスノード
Webhookノード
スクリプトノード
グループノード
エージェント転送ノード
ユーザープロンプト
音声通話プロパティ
ダイアログ管理
イベント ハンドラー
ナレッジグラフ
ナレッジグラフの抽出
ナレッジグラフの構築
ボットにナレッジグラフを追加
グラフの作成
ナレッジグラフの構築
FAQを追加
タスクの実行
既存のソースからFAQを構築
特性、同義語、停止用語
変数ネームスペースの管理
更新
ノード間の質問と回答の移動
用語の編集と削除
質問と応答の編集
ナレッジグラフの分析
通知タスク
スモールトーク
デジタルスキル
デジタルフォーム
デジタルビュー
デジタルビューとは
パネル
ウィジェット
トレーニング
トレーニングとは
機械学習
機械学習とは
モデル検証
ファンダメンタルミーニング
ナレッジグラフ
示唆
ランキングおよび解決
NLPの詳細設定
NLPのガイドライン
インテリジェンス
インテリジェンスとは
コンテキスト
コンテキストインテント
割り込み
複数インテントの検出
エンティティの変更
デフォルトの会話
センチメント管理
トーン分析
テストとデバッグ
ボットと会話
発話テスト
バッチテスト
会話テスト
デプロイ
チャネル
公開
分析
ボットの分析
NLPメトリクス
会話フロー
Usage Metrics
封じ込め測定
カスタムダッシュボード
カスタムダッシュボードとは
メタタグ
カスタムダッシュボードとウィジェット
スマートボット
ユニバーサルボット
ユニバーサルボットとは
ユニバーサルボットの定義
ユニバーサルボットの作成
ユニバーサルボットのトレーニング
ユニバーサルボットのカスタマイズ
他言語の有効化
ストア
プラントと使用
Overview
Usage Plans
Support Plans
Invoices
管理
ボット認証
複数言語対応ボット
個人を特定できる情報の編集
ボット変数の使用
IVRのシステム連携
一般設定
ボット管理
ハウツー
会話スキルの設計
バンキングボットを作成
バンキングボット – 資金の振り替え
バンキングボット – 残高を更新
ナレッジグラフを構築
スマートアラートの予約方法
デジタルスキルの設計
デジタルフォームの設定方法
デジタルビューの設定方法
データテーブルのデータの追加方法
データテーブルのデータの更新方法
Add Data from Digital Forms
ボットのトレーニング
示唆の使用方法
インテントとエンティティのパターンの使用方法
コンテキスト切り替えの管理方法
ボットのデプロイ
エージェント転送の設定方法
ボット関数の使用方法
コンテンツ変数の使用方法
グローバル変数の使用方法
Web SDK Tutorial(英語)
Widget SDK Tutorial(英語)
ボットの分析
カスタムダッシュボードの作成方法
カスタムタグを使ってフィルタリング
管理
ボット管理者コンソール
ダッシュボード
ユーザーの管理
ユーザーの管理
グループの管理
ロール管理
ボット管理モジュール
登録
ユーザーの招待
招待状の一括送信
ユーザーデータのインポート
Active Directoryからユーザーを同期
セキュリティ/コンプライアンス
シングル サインオンの使用
セキュリティ設定
Billing(日本未対応)
  1. ホーム
  2. Docs
  3. Virtual Assistants
  4. How Tos
  5. エージェント転送の設定方法

エージェント転送の設定方法

よくある質問の1つは、チャットをBotからヒューマンエージェントに転送する方法です。これは、Botがカスタマーサービス期間にある場合は特に必要です。チャットBotが完全に人間に置き変わることはありません。多くの場合、チャットBotが満足に答えられない、または最初からユーザーが人間と話したい/チャットしたい場合があります。この場合、チャットBotはチャットをヒューマンエージェントまたはカスタマーケア担当者へ転送する必要があります。どのようにそれを達成するのでしょうか? この記事では、Kore.aiエージェント転送を使用してライブチャットをBotに連携する方法の概要を説明します。エージェント転送のソースコードは、以下のKore.ai githubリポジトリにあります。https://github.com/Koredotcom/BotKit

概要

当社のBotはソリューション全体の中心部分です。通常のすべての機能の実行の他に、当社のBotはユーザーとエージェント間のプロキシとしても機能します。

  • Bot: ユーザーがインタラクトするチャットBot。
  • ユーザー:ユーザーとは このBotを使用する顧客です。
  • エージェント:エージェントとはユーザーとチャットする人間です。エージェントにもチャットウィンドウが必要です。このために、当社はliveperson/livechatソフトウェアを使用します。

Prerequisites

  • 完全機能Bot(当社はバンキングBotを使用)。
  • Koreのgithub からBotKit SDKをダウンロードします。
  • Node.jsをダウンロードし、インストールします。BotKit SDKをSDKがインストールされている同じサーバー内で実行するにはnode.jsが必要です。
    1. https://nodejs.org/en/download/ へ移動し、Macの場合は.pkgファイルタイプとして、Windowsの場合は.msiファイルタイプとしてOSを選択します。
    2. 端末ウィンドウで、node -v コマンドを実行して、インストールとバージョン、たとえばv6.10.2を検証します。
  • テストコールバックサーバーアプリケーション。https://dl.equinox.io/ngrok/ngrok/stable からの NGROKを使用して、コールバックサーバーアプリケーションをシミュレーションします。以下は、NGROKをインストールするステップです。
    1. https://dl.equinox.io/ngrok/ngrok/stable を開きます。
    2. オペレーティングシステムのngrokファイルをダウンロードおよびインストールします。
      • WindowsへのNGROKのダウンロード:
        1. Windowsマシン32-ビットまたは64-ビット用のzipファイルをダウンロードします。
        2. 解凍して、ngrok.exe ファイルを実行し、ngrokをインストールします。
      • MacへのNGROKのダウンロード:
        1. Command+Space を押し、端末を入力し、Enter/Returnキーを押します。
        2. 以下の端末アプリをruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" < /dev/null 2> /dev/null 実行し、Enter/Returnキーを押します。画面でパスワードの入力を促されたら、Macのユーザーパスワードを入力して、続行してください。パスワードを入力しても画面上には表示されませんが、システムは承認しています。したがって、パスワードを入力して、ENTER/RETURNキーを押します。コマンドが終了するのを待機します。
        3. ライブエージェントソフトウェアを brew cask install ngrok
  • 実行します。LiveChatInc.com を使用します。独自のLiveChatサブスクリプションを使用、または LiveChatを今すぐ始める!にビジネスeメールを入力して、 LiveChatInc.comで30日間の無償試用アカウントをセットアップできます。サインアップして、アカウントを作成します。

設計および設定

  1. Bot開発者として、Kore.ai Botビルダー – https://bots.kore.ai/botbuilder を開きます。
  2. エージェント転送を設定する必要があるBotを選択します。
  3. ダイアログタスク(サポートコールバック)開くまたは作成し、 エージェント転送ノードを追加します。
  4. 名前(LiveChat)説明を入力し、保存します。
  5. メッセージ「SDKは現在設定/サブスクリプションされていません。APIの拡張へ移動して、SDKを設定してください」が表示されます。この記事の後半でSDKの設定方法を示しますので、現在はこのメッセージは無視してください。
  6. Botビルダー画面から、API拡張 -> エージェント転送へ移動します。
  7. アプリ名セクションで、リストから既存のアプリを選択、またはアプリ作成オプションを使用して新しいアプリを作成します。
  8. BotIDクライアントID および クライアントシークレットキーを書き留めます。
  9. BotKIt SDKイベントが呼び出すアプリケーションのコールバックURLを入力します。NGROKを使用しているため、コールバックURLの取得方法を示します。
    1. 端末Windowで、ngrok を起動し、以下のコマンドを使用してポート8003を監視します。ngrok http 8003.
    2. ngrokを転送するURLをコピーします。以下のフォーマットとなります。 http://XXXXXXaa.ngrok.io
    3. コールバックURLとしてこの転送URLを使用し、保存します。注意:ngrokが再起動されると、常に転送URLが変更されます。ngrokが再起動されるたびに、コールバックURLが変更されていることを確認してください。
  10. エージェント転送はダイアログレベルで設定されます。ダイアログタスクを開き、エージェント転送ノードを開き、以下に示すように設定が保存されていることを確認できます。必須イベントは選択できます(詳細は以下を参照)。
  11. エンタープライズ要件およびライセンスの可用性に応じて、Livechat、Liveperson、Concentrix、Vayusphere などのライブエージェントソフトウェアをインストールします。LiveChatを使用しているため、エージェント転送に必要なライセンスの取得方法を知る必要があります。
    1. LiveChatアカウントにサインインします。
    2. 左のナビゲーションから設定へ移動し、チャットリンクを選択します。
    3. URLをコピーし、ライセンスコードを書き留めます。URLが https://lc.chat/now/104xx297/ の場合、ライセンスコードは 104xx297
  12. ダウンロードした BotKit SDKフォルダを開き、以下を行います。
    • 編集 livechatapi.js:
      1. 前にコピーしたBotのそれぞれのbotIdとbotNameを指定します。
      2. このJSファイルには、3つのKoreのAPI – 初期化、メッセージ送信、メッセージ取得が含まれます。必要に応じて、ヒューマンエージェント転送に記述された新しい APIは、ここに配置する必要があります。例:接続を終了する必要がある場合は、記述した終了接続 apiはlivechatapi.jsに入る必要があります。
    • 編集 config.json
      1. クライアントID、クライアントシークレットキー、実行中のそれぞれのサーバーポート、およびサードパーティのliveagentライセンスがここに入ります。
      2. クライアントId、クライアントシークレットは、イベントおよび拡張 – エージェントへの転送からコピーできます。
      3. Ngrok転送urlはインスタンスを実行中のngrokからコピーできます。コールバックurlです。これがURLエントリです。
      4. Liveagentlicenseは、Livechatのチャットリンクで指定されるコードです。

    • 編集 LiveChat.js
      • 前にコピーしたBotのそれぞれのbotIdとbotNameを指定し、保存します。
    • app.jsを編集します。
      1. 以下の行を追加します。 sdk.registerBot(require('./LiveChat.js'))
      2. サポートされていない場合は、既存のsdk.registerBotステートメントを削除します。

実行

  1. 端末ウィンドウを開き、以下のコマンドを入力してBotKit SDK を実行します。 node app.js
  2. 以下に示すように、エラーなしでサーバーを正常に実行するために欠落しているモジュールがすべてインストールされていることを確認してください。例、エラー「メソッド url-template、node-scheduleが欠落しています」が表示される場合は、Windowsの場合はコマンド npm install <module-name> 、Macの場合は sudo npm install <module-name> を使用して、上のモジュールをインストールします。
  3. ngrokおよびnode.jsサーバーが別の端末で実行されます。
  4. ユーザーがBotからチャットを始める場合、Botはコールをエージェントに転送し、メッセージをユーザーに送信します。
  5. エージェントはlivechat上でこれに関する通知を受け取ります。
  6. これで、エージェントとユーザー間の接続が確立され、会話が続行します。

イベント

注意:ユーザー、Botからメッセージを送信、エージェントに転送するために必要なイベントとメソッドは、LiveChat.JSに概要説明されています。

  1. ユーザーがメッセージを送信すると、on_user_message イベントがトリガーされ、このメッセージはsendBotMessageメソッドを使用してBotへ送信されます。
  2. Botがメッセージを送信すると on_bot_message がトリガーされ、このメッセージはSendUserMessageメソッドを使用してユーザーへ送信されます。
  3. サービスagentTransferノードがBotでトリガーされると、on_agent_transfer イベントがトリガーされます。このイベントは内部でinitChat APIをコールするconnectToAgentメソッドを使用してエージェントに接続されます。
  4. gethistory メソッド、ユーザーのBotとのチャット履歴を転送されたエージェントに送信します。
  5. scheduleJob は5秒ごとに実行され、内部で getPendingMessagesをコールするエージェントからの保留メッセージをポーリングします。
  6. getPendingMessages はエージェントからのすべての保留メッセージを取得し、ユーザーに配信します。
  7. エージェントがユーザーとのチャットをクローズすると、chat_closed がトリガーされます。
メニュー