次の方法で共有


Teams 用のボットを構築する

ボットは、チャットボットまたは会話ボットとも呼ばれます。 これは、カスタマー サービスやサポート スタッフなどのユーザーが単純で反復的なタスクを実行するアプリです。 ボットの日常的な使用には、天気に関する情報を提供するボット、ディナーの予約を行うボット、旅行情報を提供するボットなどがあります。 ボットとのやり取りは、質問や回答を素早く行ったり、複雑な会話になったりする場合があります。

まず、 JavaScript を使用して最初のボット アプリをビルド するか、新しい世代の Teams 開発ツールを使用して JavaScript を使用して通知ボットをビルド することをお勧めします。 詳細については、「 Teams Toolkit の概要」を参照してください。

重要

  • ボットは 、Government Community Cloud (GCC)、GCC-High、および国防総省 (DOD) 環境で使用できます。 GCC-High と DOD 用のMicrosoft Teams内のボット アプリケーションは Azure bot Service を通じて利用でき、ボット チャネルの登録はポータルAzure Government行う必要があります。

  • アダプティブ カードの画像 URL は、GCC-High 環境と DOD 環境ではサポートされていません。 画像 URL を Base64 でエンコードされた DataUri に置き換えることができます。

  • ユーザーがボットの Teams テーマを変更した場合、そのテーマはアダプティブ カードを使用して共有されたコンテンツには適用されません。

会話型ボットを使用すると、ユーザーはテキスト、対話型カード、ダイアログ (TeamsJS v1.x のタスク モジュールと呼ばれます) を使用して Web サービスと対話できます。

スクリーンショットは、テキストを使用した Web サービスを示す例です。

スクリーンショットは、対話型カードを使用した Web サービスを示す例です。

スクリーンショットは、ダイアログを使用した Web サービスを示す例です。

会話ボットは非常に柔軟です。 ボットは、人工知能と自然言語処理を含むいくつかの基本的なコマンドまたは複雑なタスクを処理できます。 ボットは、大規模なアプリケーションの一部にすることも、スタンドアロンにすることもできます。

カード、テキスト、ダイアログの適切な組み合わせを使用して、便利なボットを作成します。 次の図は、テキストカードと対話型カードを使用して、1 対 1 のチャットでボットと会話するユーザーを示しています。

スクリーンショットは、サンプルの FAQ ボットを示す例です。

ユーザーとボットの間のすべての対話は、アクティビティとして表されます。 ボットは、アクティビティを受け取ると、そのアクティビティ ハンドラーに渡します。 ボット アクティビティ ハンドラーを参照してください。

ボットは、会話インターフェイスを持つアプリです。 テキスト、対話型カード、音声を使用してボットと対話できます。 ボットの動作は、チャネルまたはグループ チャットの会話と 1 対 1 の会話で異なります。 会話は、Bot Framework コネクタを介して処理されます。 会話の基本を参照してください。

ボットには、関連するコンテンツにアクセスし、ボットのエクスペリエンスを向上させるために、ユーザー プロファイルの詳細などのコンテキスト情報が必要です。 Teams コンテキストを取得を参照してください。

Graph API または Teams ボット API を使用して、ボットを介してファイルを送受信できます。 ボットを介してファイルを送受信する方法を参照してください。

レート制限は、Teams アプリケーションに使用されるボットを最適化するために使用されます。 Teams とそのユーザーを保護するために、ボット API は受信要求のレート制限を提供します。 Teamsでレート制限を使用してボットを最適化を参照してください。

通話やオンライン会議用の Microsoft Graph API により、Microsoft Teams アプリは音声とビデオを使用してユーザーと対話できるようになりました。 通話と会議のボットを参照してください。

Teams ボット API を使用して、チャットまたはチームのメンバーの情報を取得できます。 チームまたはチャット メンバーをフェッチするための Teams ボット API に対する変更を参照してください。

ボットの名前とアイコン

ボット名: Teams 環境に表示されるボット名は、次の状況で更新することで変更できます。

  • チャット ウィンドウにタイトルとして表示されるボット名は、アプリ マニフェスト (以前は Teams アプリ マニフェスト) 内で更新および管理されます。

  • Teams チャット リストと各メッセージのチャット ウィンドウに表示されるボット名は、Microsoft Azure portal内で管理されます。 カスタムアップロードされたアプリの場合は、Azure portalの [Bot profile]\(ボット プロファイル\) ページでボット名を更新できます。

    スクリーンショットは、Teams ウィンドウに表示されるボット名を示しています。

ボット アイコン: Teams アプリのボット アイコンを次のように追加または更新できます。 更新されたボット アイコンは、ユーザーがサインアウトして Teams にサインインし直した後にのみ表示されます。 これは、アイコンがキャッシュされるためです。

  • Microsoft Teamsストア アプリ: Teams ストア アプリの場合、ボット アイコンはアプリ マニフェストからフェッチされます。 ボット プロファイル アイコンは、アプリ マニフェストを使用して更新し、アプリを再発行することで更新できます。

    
    {
      "$schema": "https://developer.microsoft.com/json-schemas/teams/v1.16/MicrosoftTeams.schema.json",
      "manifestVersion": "1.17",
      "version": "1.0.0",
      "id": "%MICROSOFT-APP-ID%",
      "icons": {
         "outline": "A relative path to a transparent .png icon — 32px X 32px", // This icon is used for bot profile.
         "color": "A relative path to a full color .png icon — 192px X 192px"
      },
      "bots": [
      {
        "botId": "%MICROSOFT-APP-ID-REGISTERED-WITH-BOT-FRAMEWORK%",
        "scopes": [
          "team",
          "personal",
          "groupChat"
        ]
      }
      ]
    ...
    }
    
    
  • Teams または組織用に構築されたカスタム アプリ (LOB アプリ) でカスタム アプリをアップロードする:

    • Azure portal: [Azure portal] に移動してボット アイコンを変更できます

      ボット アイコンを更新するAzure portalのスクリーンショット。

    • Bot Framework ポータル: Bot Framework Portal を使用して作成されたボットの場合は、[ 設定] ページでボット アイコンを更新できます。

      ボット アイコンを更新する Bot Framework ポータルのスクリーンショット。

ホスト ランタイム要件を指定する (開発者プレビュー)

アプリが常に顧客に高品質のエクスペリエンスを提供するようにするには、該当する Microsoft 365 ホストでアプリの動作を調整するか、サポートする準備ができていないコンテキストでの表示から除外することができます。 アプリ マニフェストを使用して、アプリの機能間の 依存関係 と、静的タブ、メッセージ拡張機能、ボットの特定の ランタイム要件 を指定します。

詳細については、 アプリ マニフェストで Microsoft 365 ホスト ランタイム要件を指定する方法に関するページを参照してください

会話ボットに SSO 認証を追加する

次の手順を使用して、会話ボットにシングル サインオン認証を追加できます。

ボット構成エクスペリエンス

ボット構成エクスペリエンスは、ユーザーがインストール中にボットを構成し、ボットがインストールされているチャネルまたはグループ チャット スコープからボットを再構成するためのボット設定を有効にするのに役立ちます。 ボットの構成は、Teams プラットフォーム内のアプリにとって重要な機能であり、運用効率の基礎を築きます。 詳細については、「 ボットの構成エクスペリエンス」を参照してください。

コード サンプル

サンプルの名前 説明 .NET Node.js マニフェスト
ボットの毎日のタスクリマインダー このサンプルでは、ボットを使用して定期的なタスクをスケジュールし、スケジュールされた時刻にリマインダーを取得する方法を示します。 表示 表示 表示
Helloワールド ボット これは、ボットとメッセージ拡張機能の両方の機能を備えたシンプルな hello world アプリケーションです。 該当なし 表示
アダプティブ カード通知 これはサンプルであり、ボットを使用してさまざまなアダプティブ カードで通知を送信する方法を示しています。 該当なし 表示
受信 Webhook 通知 これは、Microsoft Teams チャネルで受信 Webhook を使用して通知を送信する方法を示すサンプルです。 該当なし 表示

次の手順

関連項目