Actions SDK の概要(Dialogflow)

Actions on Google では、Google アシスタントの機能を拡張できます。 アクション。アクションを使用すると、簡単なコマンドを出して照明をつけたり、雑学クイズを出すなどの長い会話をすることまで、ユーザーが会話型インターフェースを使ってさまざまなことを行えます。

Actions SDK は、Google Cloud 内での会話のフルフィルメントを 構築する方法を説明しますActions SDK を使用する場合は、アクション パッケージを使用して インテントをフルフィルメントにマッピングします。モジュールでクエリパターンも指定する必要があります。 アクション パッケージを使用して、ユーザーが発話する可能性のあるフレーズの例を定義します。

gactions CLI

Actions SDK を使用して開発する場合は、gactions コマンドラインを使用する インターフェース(CLI)を使用して、アクション プロジェクトのテストと更新を行うことができます。gactions CLI 会話型アクションのアクション パッケージの作成と管理にも役立ちます。

アクション パッケージでアクションを作成する

インテントをフルフィルメントにマッピングすることで、アクション パッケージでアクションを作成します。 アクションは、一意のキーで会話を開始するためのエントリ ポイントを インテントと呼ばれる識別子です。インテントはフルフィルメントにマッピングされます。フルフィルメントは、 使用します。

たとえば、プロジェクトを作成し、そこにアクションを 商品の購入、注文状況のチェック、日替わりセールの表示などができます。 その場合、次の発話によってトリガーされるインテントを定義できます。

  • 「OK Google, ExampleAction に話しかけて」
  • 「OK Google, ExampleAction に話しかけて靴を買って」
  • 「OK Google, ExampleAction に話しかけて注文を確認して」
  • 「OK Google, ExampleAction に話しかけて今日のお買い得情報を見せて」

アクション パッケージの JSON ファイルは次のようになります。

{
  "actions": [
    {
      "name": "MAIN",
      "intent": {
        "name": "actions.intent.MAIN"
      },
      "fulfillment": {
        "conversationName": "ExampleAction"
      }
    },
    {
      "name": "BUY",
      "intent": {
        "name": "com.example.ExampleAction.BUY",
        "parameters": [{
          "name": "color",
          "type": "org.schema.type.Color"
        }],
        "trigger": {
          "queryPatterns": [
            "find some $org.schema.type.Color:color sneakers",
            "buy some blue suede shoes",
            "get running shoes"
          ]
        }
      },
      "fulfillment": {
        "conversationName": "ExampleAction"
      }
    },
    {
      "name": "ORDER_STATUS",
      "intent": {
        "name": "com.example.ExampleAction.ORDER_STATUS",
        "trigger": {
          "queryPatterns": [
            "check on my order",
            "see order updates",
            "check where my order is"
          ]
        }
      },
      "fulfillment": {
        "conversationName": "ExampleAction"
      }
    },
    {
      "name": "DAILY_DEALS",
      "intent": {
        "name": "com.example.ExampleAction.DAILY_DEALS",
        "trigger": {
          "queryPatterns": [
            "hear about daily deals",
            "buying some daily deals",
            "get today's deals"
          ]
        }
      },
      "fulfillment": {
        "conversationName": "ExampleAction"
      }
    }
  ],
  "conversations": {
    "ExampleAction": {
      "name": "ExampleAction",
      "url": "https://www.example.com/ExampleAction"
    }
  }
}

フルフィルメント Webhook を作成してデプロイする

プロジェクト内のアクションが呼び出されると、Actions on Google は フルフィルメントを使用してユーザーとの会話を開始し、アクションを履行します。

フルフィルメント Webhook に対する各リクエストでは、ユーザー入力を 指定します。インテントを処理するには、通常、テキスト入力を解析し、 レスポンスが返されます。この相互のやり取りは、アクションが確立されるまで 会話が終了します。

アクション パッケージをアップロードする

アクション パッケージを作成してそのフルフィルメントをデプロイしたら、次の手順を行います。 アクション パッケージをアクション コンソールにアップロードできます。Actions Console アクション プロジェクトを使用して、レビューなどのメタデータで会話型アクションをグループ化します ステータスと表示名がアシスタント ディレクトリに表示されます。このプロジェクトでは、 アクションに関するメタデータを定義し、 プロセスです。

プロジェクトを作成したら、すべてのプロジェクトを定義するアクション パッケージを gactions CLI を使用してアクションを作成できます。

プロジェクトを提出し、承認を得てからユーザーに公開する

サンプル

完成したプロジェクトを見るには、Node.js と Java の Actions SDK のサンプルをご覧ください。