RCS ビジネス メッセージの仕組み

RCS Business Messaging(RBM)エージェントは、ビジネス目標を達成するために、メッセージ、イベント、リクエストを通じてユーザーとやり取りします。目標がシンプルなもの(配達通知の送信など)でも複雑なもの(フライトの予約など)でも、リッチカード、メディア、提案を使用して、ユーザーとエージェントのニーズを満たす流動的な会話を通じてユーザーを案内します。

仕組み

エージェントとユーザーの会話の流れは、2 人の人間が交互に発話、聞き、応答する会話に似ています。

RBM エージェントがユーザーとの会話を開始します。ユーザーはエージェントとの会話を開始できませんが、エージェントが会話を開始すると、ユーザーはいつでも返信できます。

エージェントは、構成した外部トリガーを受信すると最初のメッセージを送信します。トリガーはさまざまで、エージェントのユースケースによって異なります。

  • 荷物が発送された
  • ランチタイムのサンドイッチを毎日配信しましょう
  • ユーザーがチャットでカスタマー サポートに問い合わせをしている

外部トリガーが RBM エージェントを起動する

エージェントはトリガーを受信すると、RCS Business Messaging API を使用してユーザーのデバイスにメッセージを送信します。エージェントは、すべてのメッセージ、イベント、その他のリクエストを、JSON ペイロードを含む HTTP リクエストとして RBM API を介してユーザーに送信します。ユーザーがデバイスのメッセージ アプリでメッセージを受信します。

デバイスが RCS をサポートしていない場合、RBM プラットフォームは 404 エラーを返します。エージェントは SMS などの別のテクノロジーにフォールバックする必要があります。

ユーザーがメッセージに応答するか、イベントをトリガーすると、Google の RBM サービスは構成済みの Webhook にレスポンスを送信し、その情報をエージェントに返します。Webhook は、すべてのユーザー メッセージ、イベント、その他のリクエストを JSON としてエージェントに送信します。

エージェントはメッセージを受信すると、JSON をデコードしてレスポンスを解析します。内部ロジックを使用するか、Dialogflow などの自然言語理解(NLU)モジュールを利用して、エージェントはユーザーのメッセージに対するレスポンスを決定し、RBM API を介してユーザーのデバイスにレスポンスを送信します。

エージェントとユーザーの会話は、意図した結論に達するか、ユーザーが応答しなくなるまで続きます。

次の例は、ユーザーが最新の天気情報を要求する簡単なシナリオを示しています。

  1. エージェントが外部サービスから、ユーザーが天気の最新情報をリクエストしたことを示すトリガーを受信します。
  2. エージェントは、ユーザーのリクエストを確認し、ユーザーの位置情報を尋ねるメッセージをユーザーに送信します。
  3. メッセージ アプリで、ユーザーがメッセージを読み、自分のアドレスを返信します。
  4. エージェントがレスポンスを処理し、気象情報を取得して、会話メッセージを作成して、その情報をユーザーに送信します。さらに、ユーザーは別の場所の天気情報も必要かどうかを尋ねています。
  5. ユーザーがメッセージを読み、エージェントに感謝の言葉を伝えます。
  6. エージェントは、ユーザーが追加情報をリクエストしていないことを確認し、会話を終了します。

暗号化

ユーザーとエージェントの間で送信されるメッセージは、RBM エージェントと Google サーバーの間、および Google サーバーとユーザーのデバイス間で暗号化されます。Google はすべてのユーザーと企業を保護するために、悪意のあるコンテンツがないかメッセージをスキャンする必要があるため、エージェントは独自の暗号鍵を使用できません。

ユーザーのデバイスで受信されるメッセージは、ユーザーがデバイスに構成したデバイス全体の暗号化によって暗号化されます。Google はメッセージ データを保護するため、オンデバイスのセキュリティ モデルをデプロイします。

次のステップ

これらのコンセプトを理解したら、エージェントに求めることを検討し、最初のエージェントを作成します。