ボット開発者向けアダプティブ カード

アダプティブ カードはボットに最適です。 一度カードを作成すれば、Microsoft Teams などの各種アプリ内、Web サイト、その他の場所で美しく表示できます。

注意

Skype は現在のプレビューではサポートされていません。 最新の情報については、パートナー ステータスのページを参照してください。

試してみる

次のリンクをクリックして Scuba ボットに話しかけます。 「I'm looking for scuba」と言うと、あなたが夢見るスキューバ旅行の予約を手伝ってくれます。

ボットの応答はすべて、アダプティブ カードによって作成されます。

Scuba のチャットのスクリーンショット

コードを入手する: 完全な Contoso Scuba ボットのソース コードは GitHub で入手できます。

Bot Framework の統合

Bot Framework を使用すれば、Skype、Microsoft Teams、Facebook Messenger など、複数の "チャネル" にまたがってユーザーとチャットできる単一の Bot を作成できます。

チュートリアル

ボットにアダプティブ カードを追加するのはとても簡単です。

ステップ 0: 基本的なメッセージから始める

次に示すのは、標準の Bot Framework message ペイロードであり、これを任意のチャネルに配信してユーザーにテキストを表示することができます。

{
   "type": "message",
   "text": "Plain text is ok, but sometimes I long for more..."
}

ステップ 1: アダプティブ カード attachment を追加する

単なるテキストを超えたリッチさを追加するために、Bot Framework にはattachmentsの概念があります。

カスタム テキストを表示するアダプティブ カードを添付してみましょう。

基本的なアダプティブ カード

{
  "type": "message",
  "text": "Plain text is ok, but sometimes I long for more...",
  "attachments": [
    {
      "contentType": "application/vnd.microsoft.card.adaptive",
      "content": {
        "type": "AdaptiveCard",
        "version": "1.0",
        "body": [
          {
            "type": "TextBlock",
            "text": "Hello World!",
            "size": "large"
          },
          {
            "type": "TextBlock",
            "text": "*Sincerely yours,*"
          },
          {
            "type": "TextBlock",
            "text": "Adaptive Cards",
            "separation": "none"
          }
        ],
        "actions": [
          {
            "type": "Action.OpenUrl",
            "url": "http://adaptivecards.io",
            "title": "Learn More"
          }
        ]
      }
    }
  ]
}

ステップ 2: さらにリッチなカードを作成する

アダプティブ カードは、単なるカスタマイズ可能テキストを大きく超えたものを提供します。

次のことを実行できます。

プラットフォーム SDK

.NET または NodeJS を使用してボットを開発している場合、アダプティブ カードの構築をさらに簡単にするライブラリが用意されています。

プラットフォーム インストール 詳細情報
.NET Install-Package AdaptiveCards -IncludePrerelease Bot Framework .NET ドキュメント
NodeJS npm install adaptivecards Bot Framework NodeJS ドキュメント

チャネルの状態

Bot Framework を使用すれば、複数のチャネルにボットを公開できます。 アダプティブ カードの全面的サポートを提供するために、さまざまなチャネルと提携しています。 最新の情報については、パートナー ステータスのページを参照してください。

もっと詳しく!

このチュートリアルで扱ったのはごく初歩的な内容です。下記のリンクから、アダプティブ カードを使用してボットを強化するその他の方法について理解を深めてください。