カスタム会話型AIインテグレーションでは、AIエージェント(Advanced)のパブリックAPIを使用してAIエージェントとメッセージを送受信したり、WebhookからAIエージェントのイベントを登録することで、テキストベースの会話を自動化できます。
この記事では、次のトピックについて説明します。
新しいCRMインテグレーションを作成する
新しいCRMインテグレーションを設定する場合、このプロセスはCRMインテグレーションとほぼ同様に開始します。
ステップ1 | |
|
![]() |
ステップ2 | |
インテグレーションを作成したら、インテグレーションに必要な追加の技術情報を入力できます。 WebhookのURLとインテグレーション名は必須フィールドですが、それ以外はすべてオプションです。 インテグレーションを保存すると、アクセス権のあるAIエージェントと同じ組織に属するAIエージェントに割り当てることができます。 |
![]() |
AIエージェントレベルでインテグレーションを割り当て、定義する
ここでは、AIエージェントとのコミュニケーションパートナーとなるCRMとして、新しく作成したインテグレーションを選択します。
説明 | 画面表示 |
同じビューに、アクセストークンがあります。これは、このAIエージェントのみにAPIへのアクセスを許可する読み取り専用のトークンです。このトークンは、インテグレーションとこのAIエージェント間のコミュニケーションに使用されます。 |
![]() |
アクセストークンは、このインテグレーションをインストールするAIエージェントごとに一意である必要があります。
アプリケーションを作成する
使い慣れたプログラミング言語を使用して、アプリケーションを作成できます。このセクションでは、アプリケーションが対応するユースケースと、AIエージェント(Advanced)APIを使用してこれらのユースケースに対応する方法について説明します。
アプリケーションの対応内容:
ステップ1 - メッセージソースに接続する
複数のAIエージェントと複数のカスタマー用にインテグレーションを作成する場合(推奨)、システムによって認証の要件が異なるため、外部システムのカスタマー固有のアカウントとAIエージェント(Advanced)のAIエージェントアクセストークンにアクセスし、それらを一緒にマッピングできることを確認する必要があります。
これは、選択したシステムの最初の受信者としてチャットの会話を引き継ぐ必要があるという考えに基づいています。システムによっては、通常、APIへのアクセスに使用され、チャットの会話におけるデフォルトの最初の受信者として設定されるエージェントアカウントを作成する必要があります。
以下は、LivePersonとそのパブリックAPIドキュメントの例です。
サードパーティのボット - パブリックAPI | LivePerson Developer Center
ステップ2 - AIエージェント(Advanced)のAPIを確認する
ソースから訪問者メッセージを受信したら、それらのメッセージを適切なAIエージェントにルーティングします。
適切なAIエージェントに接続するには、必ずリクエストごとにAIエージェントIDとアクセストークンを送信する必要があります。インテグレーションのオーナーとして、どのAIエージェントが、訪問者メッセージの送信元システムのどのアカウントに関連付けられているかを追跡する必要があります。
チャットエンドポイントへの接続については、AIエージェント(Advanced)のドキュメントを参照してください。
レスポンスコードを以下に示します。 |
200:OK |
400:検証エラー |
401:アクセス権がありません |
404:AIエージェントが見つかりません |
Metadataとパブリックセッション
各会話には、会話履歴と、この会話中に収集された情報を保持するセッションがあります。例えば、ある時点でユーザーにメールを求めた場合、そのメールは保存され、会話中の任意の時点で取得して使用することができます。
meta_dataオブジェクトを使用すると、訪問者の会話の処理に役立つ可能性のあるセッションパラメータをプログラムで設定できます。
ステップ3 - AIエージェント(Advanced)へのメッセージの送信と会話のライフサイクル
AIエージェントと通信できるようになったら、会話のライフサイクルと、この会話で実行されるすべてのイベントについて理解する必要があります。
新しい会話を開始する
新しい会話を開始する場合、APIエンドポイントを呼び出すときにこのタイプのイベントを使用します。
実際に新しい会話を開始するには、WhatsappやHelpscoutなどの使用しているプラットフォーム、またはアプリケーションで生成される一意の会話IDを提供する必要があります。会話IDはこの会話に一意である必要があります。
既存の会話IDで会話が開始され、元の会話セッションがまだアクティブな場合、AIエージェントは新しい会話を開始するのではなく、元の会話を再開します。
会話セッションの時間はAIエージェントごとに設定できます。デフォルトでは最後のメッセージを送信、または受信してから2時間です。
会話
これは、会話がすでに開始されていて、訪問者メッセージをAIエージェントにルーティングする場合に必要です。会話IDは必ずbodyパラメータに渡す必要があります。
会話を終了
この機能は、訪問者が会話を終了するときに使用します。
メモ:終了した会話に新しいメッセージを送信すると、同じプラットフォーム会話IDで新しい会話が開始されます。
ステップ4 - Webhookイベント
イベントは、AIエージェントが非同期に会話とやり取りするための手段です。ボットはメッセージを受信すると、インテグレーションに設定されている各Webhookに対して、3つの異なるタイプのイベントのいずれかで応答します。
AIエージェントのメッセージ
これらは、ウェルカムメッセージなど会話の開始または訪問者メッセージへの応答として、AIエージェントによって送信されるメッセージです。
AIエージェントのレスポンスは、テキスト、ボタン、またはカルーセルのいずれかになります。最終的に訪問者のチャットウィンドウにどのように表示されるかは、管理者とプラットフォームの機能によって決まります。
アクショントリガ
アクションは、インテグレーションのオーナーが、会話のライフサイクル内の特定のインスタンス上でインテグレーションから機能をトリガするための手段です。これらはインテグレーションの設定ステップですでに登録されており、必要に応じてAIエージェントの作成プロセスで特定のアクションをトリガするために使用できます。
アクションの例:
- 会話にタグを追加する
- アカウント情報を取得する
インテグレーションの設定時に定義したアクションは、以下のようにAIエージェントが会話中いつでもトリガできます。
- 会話の開始時または終了時
- 特定の目的がトリガされたとき
- 対話内の特定のノードで
Webhookは、トリガされたアクションの名前と、このアクションに必要なデータをセッションパラメータから受け取ります。
その後、Webhookはレスポンスを待ちます。空のレスポンスを送信するか、後で会話で使用できるように会話セッションで保存されるデータを送信します。
アクションのユースケースの例
- チケットにタグを追加する
- ユーザー情報を取得する
- 以前のチケット履歴を取得する
エスカレーションリクエスト
エスカレーションは、成功した場合に訪問者をAIエージェントからライブエージェントに転送する特殊なアクションです。
エスカレーションは、カスタマーが選択した条件に基づいてAIエージェントの対話内で定義できます。詳細については、こちらを参照してください。