> ## Documentation Index
> Fetch the complete documentation index at: https://docs-agents.fpt.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Microsoft Teams チャネル

> Agent を Microsoft Teams のボットにつなぎ、Teams の中で話しかけられるようにします

<Info>
  Microsoft Teams チャネルを使うと、Teams の中から Agent にメッセージを送れます。Azure でボットを登録し、その資格情報を Console に貼り付けると、Agent がそのボットとして応答します。
</Info>

## チャネル画面を開く

<Steps>
  <Step title="つなぎたい Agent を開く">
    左メニューの **マイエージェント** から、Agent の名前をクリックします。
  </Step>

  <Step title="チャネルタブを選ぶ">
    上部のバーの、ビルド、テスト、インサイトの隣にあります。
  </Step>
</Steps>

<img src="https://mintcdn.com/fpt-62e894b4/eYHsj96EPHct7l3u/images/en_teams_channels.jpg?fit=max&auto=format&n=eYHsj96EPHct7l3u&q=85&s=c4e78f6abcd3a107c12d8186fd057b32" alt="チャネルの一覧" width="1562" height="784" data-path="images/en_teams_channels.jpg" />

Microsoft Teams は **外部チャネル** のグループに、Web ウィジェット、API、Zalo と並んでいます。接続するまでカードには **未設定** と出ます。

<Warning>
  ここで設定しても、Agent を公開するまでは誰にも応答できません。メッセージを送った人には、この会話は利用できないという案内が出ます。先に設定しておくこと自体は問題ありません。
</Warning>

## Azure 側の準備

Console を埋める前に、Azure Portal でボットを登録しておく必要があります。そこから 3 つの値を取ります。

* **App ID**: ボットの Microsoft App ID。アプリ登録の画面にあります。
* **クライアントシークレット**: 同じアプリ登録で作成したシークレットの値。
* **テナント ID**: Entra のディレクトリ (テナント) ID。ボットをシングルテナントで登録した場合にだけ必要です。

<Note>
  App ID とクライアントシークレットは、どちらも Azure Portal のボットのアプリ登録から取ります。同じページにある別々の値です。
</Note>

## Microsoft Teams をつなぐ

<Steps>
  <Step title="Microsoft Teams のカードをクリックする">
    **Microsoft Teams 設定** のダイアログが開きます。
  </Step>

  <Step title="Webhook URL をコピーする">
    この URL は Console が生成するもので、編集はできません。欄の端のコピーボタンをクリックし、Azure のボットの **メッセージングエンドポイント** に貼り付けます。
  </Step>

  <Step title="App ID とクライアントシークレットを入力する">
    どちらもアプリ登録から貼り付けます。目のアイコンをクリックすると、貼り付けたシークレットを確認できます。
  </Step>

  <Step title="必要ならテナント ID を入力する">
    マルチテナントで登録したボットなら空のままにします。
  </Step>

  <Step title="表示名を設定する">
    この名前がチャネルの一覧に出ます。空にすると、Console は App ID をラベルとして使います。
  </Step>

  <Step title="接続をクリックする">
    保存せずに閉じるなら **キャンセル** をクリックします。
  </Step>
</Steps>

<img src="https://mintcdn.com/fpt-62e894b4/eYHsj96EPHct7l3u/images/en_teams_config.jpg?fit=max&auto=format&n=eYHsj96EPHct7l3u&q=85&s=7a12feeac28c26812bbc203fab919d4a" alt="Microsoft Teams の設定ダイアログ" width="1562" height="784" data-path="images/en_teams_config.jpg" />

## 項目の一覧

| 項目 | 必須 | 意味 |
| - | - | - |
| Webhook URL | 読み取り専用 | Console が生成する URL。Azure のボットのメッセージングエンドポイントに貼り付けます。1 つの URL がすべてのボットを受け持ち、署名付きトークンの中の app id で振り分けます |
| App ID | はい | ボットの Microsoft App ID。秘密情報ではありませんが、受信メッセージの振り分けはこれを鍵に行います |
| クライアントシークレット | はい | シークレットの値で、Secret ID ではありません。Azure は作成時に一度だけ表示します |
| テナント ID | いいえ | ボットのトークンを発行する Entra のディレクトリ。マルチテナントで登録したボットなら空のままに |
| 表示名 | いいえ | チャネルの一覧に出るラベル。空にすると App ID が使われます |

## チャネルの編集、停止、削除

Microsoft Teams のカードをもう一度クリックするとダイアログが開き、保存した内容を変更できます。チャネルを止めるには、App ID とクライアントシークレットを消して保存します。Teams が **未設定** に戻り、Agent はそのボットで応答しなくなります。

<Tip>
  Azure 側でクライアントシークレットを入れ替えたら、ここに戻って新しい値を貼り付けてください。そのままにしておくと、古いシークレットの期限が切れた時点でボットが応答しなくなります。
</Tip>

## 注意点

* クライアントシークレットは機微な情報です。それが写ったスクリーンショットを共有しないでください。
* 1 つの Agent が複数のチャネルで同時に応答できます。Teams チャネルは Web ウィジェット、API、Zalo とは独立して動きます。
* チャネルをつないだら、実際の利用者が使えるように Agent を公開してください。


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.