Chat アプリを他のサービスやツールに接続する

このページでは、Google Chat アプリをサービスに接続する方法について説明します。 外部 IP アドレスやツールを使用できます。Chat 用アプリは 他のシステムと連携して動作することが多く アカウントの接続、データアクセスの承認、 追加データの追加、ユーザー設定の構成ができます。

前提条件

インタラクティブ機能を有効にする Google Chat アプリ。新しい 次のいずれかのクイックスタートを完了してください。 使用するアプリ アーキテクチャ: <ph type="x-smartling-placeholder">

ユーザーに Chat 用アプリの構成をリクエストする

リクエストを完了するために、追加の構成が必要となる場合や、 直接 Chat 用アプリで行った場合、 または非公開で表示する場合、 次の形式にします。

{
  "actionResponse": {
    "type": "REQUEST_CONFIG",
    "url": "CONFIGURATION_URL"
  }
}

これにより、Google Chat でユーザーに対して非公開のプロンプトが表示されます。 CONFIGURATION_URL はリンクです して、追加の認証、認可、ユーザー アクセスのためにユーザーが できます。REQUEST_CONFIG レスポンスは通常のレスポンスと相互に排他的です。 レスポンス メッセージが返されます。テキスト、カード、その他の属性は無視されます。

構成リクエストを完了する

MESSAGE インタラクション イベント Chat 用アプリが受信するメッセージには、 configCompleteRedirectUrl。この URL は プロセスの完了時に使用する構成 URL。これにリダイレクトしています URL から設定リクエストが満たされたことが Google Chat に通知されます。

Chat 用アプリの起動時に、フローは 確認することもできます。@app help のようなメッセージに対する応答として、 Chat アプリは、メッセージなしで応答する必要があります。 追加の構成が必要です。

ユーザーが configCompleteRedirectUrl に正常にリダイレクトされたとき 元のメッセージに含まれている場合、Google Chat は次の手順を実行します。

  1. 開始ユーザーに表示されたプロンプトを消去します。
  2. 元のメッセージを一般公開に変換して、 できます。
  3. 元のメッセージを同じ Chat アプリに送信する 2 回目になります

configCompleteRedirectUrl へのアクセスは、単一のユーザー メッセージにのみ影響します。 ユーザーが複数の Chat 用アプリにメッセージを送信しようとした その結果 複数のプロンプトが表示され 認証と構成のプロセスを完了しても、影響を受けるのは 見つけることができますその他のメッセージは変更されません。

この方法で MESSAGE インタラクション イベントを再送信する場合、同じである必要がある 割り当てることができます。ただし、MESSAGE 場合によって異なります。たとえば、メッセージに Chat アプリ A と Chat アプリ B Chat アプリ A でメッセージを編集できる で認証を行う前に、通常のメッセージで応答します。 Chat アプリ B。この例では Chat アプリ B は、メッセージの後に、編集されたメッセージ テキストを ユーザーが認証と構成を完了します。

Chat の外部で Chat ユーザーを認証する

API の OAuth 認証をリクエストするなど、場合によっては、アプリに Chat 以外の URL にリンクしつつ、ユーザーも維持する できます。このような場合にユーザーを識別する最善の方法は、 Google ログインを使用してリンク先アプリを作成します。

こちらの ID トークン ユーザー ID を取得する必要があります。sub クレームには、ユーザーの Google Chat のユーザー ID と関連付けることができます。

2 つの ID は完全に同一ではありませんが、強制変換される場合があります。宛先 sub クレームの値を Google Chat の users/{user} に強制変換し、 値を users/ に置き換えます。たとえば、123 のクレーム値は同等です。 ユーザー名 users/123 宛てのメールで Chat アプリ。