web-dev-qa-db-ja.com

Googleアクション開発プロジェクトのプレビューを長く持続させる

Google Home用のGoogle音声操作アプリを作成したい。ただし、簡単な調査に基づき、12月11日の時点で、GoogleはGoogle Homeのプライベートプロジェクトを許可していません。

参照:

API.aiプロジェクトからアプリをプレビューでき、リンクされたGoogle Homeデバイスにデプロイされることを理解しています。

API.ai preview

しかし問題は、デプロイされたアプリが存続しないことです。数時間後には利用できなくなります。どうすれば永続化できますか(方法がある場合)

[〜#〜]更新[〜#〜]

レオンの答えに基づいて、24 hoursのサンプルを有効にする方法の手順を拡張したいと思いました。

  1. 右下の「Google Home Web Simulator」リンクをクリックします。
  2. 次に、Googleホームデバイスが表示されます-そのページの「開始」ボタンをクリックします
  3. 次のページの右上隅に、「アクションパッケージ」ボタンがあります。レオンが話しているところです。それをクリックし、「24時間プレビュー」ボタンをクリックして有効期限を延長します。下のスクリーンショットを参照してください。

Extend for 24 hours

23
Hossain Khan

開発アクションをWebシミュレーターまたはGoogle Homeデバイスでプレビューできる時間を延長できます。 API.AIからアクションをプレビューした後、Webシミュレーターでアクションパッケージのリストをクリックします。次に、アクションパッケージの[24時間プレビュー]リンクを選択します。

6
Leon Nicholls

API.aiでアクションを作成し、それを無期限にプレビューする方法を見つけました。

API.aiから:

  1. ブラウザの開発コンソールを開きます([ネットワーク]タブ)
  2. 統合に移動
  3. 「Actions on Google」の統合をオンにする
  4. 「承認」をクリックします
  5. 「プレビュー」をクリック
  6. ネットワーク開発コンソールで https://console.api.ai/api/agent/googleassistant/preview からのXHR応答を検査します

    {  
      "status":{  
      "code":401,
      "errorType":"unauthorized",
      "errorDetails":"You are not authorized for this operation. ",
      "webhookTimedOut":false
       }
    }
    
  7. 応答の内容をaction.jsonというファイルにコピーして貼り付けます

次に、ここからgactions CLIをダウンロードしてインストールします- gactions CLI 次に、次のコマンドを実行します。

gactions preview --action_package action.json --preview_mins 9999999 \
  --invocation_name [your_own_invocation_name_here] 

preview_minsの値が9999999の場合、プレビューは事実上無期限になります。

これを示すビデオは次のとおりです。

Export action.json from API.ai for Google Action

31
Brady Holt

2017年5月17日の時点で、Actions on Google SDKがv2にアップグレードされたため、この質問に対する最高投票数の回答は新しいAPI.aiプロジェクトでは機能しなくなりました。 @Bradyの回答と同様の方法論はまだ機能しますが、一部の方法(Googleに提供する必要がある情報、ローカルのみのテストであるにもかかわらずグローバルに一意の呼び出し名)、および他の方法(gactions)の方が困難になっていますCLIドキュメントは、無期限のプレビューが受け入れられることを明示的に述べており、gactions test呼び出しへの引数として提供されていない場合、実際にはデフォルトです。

  1. 通常どおりにAPI.aiエージェントを作成します。
  2. [統合]サイドメニューの下で、[Actions on Google]設定を開きます。
  3. 表示されるダイアログボックスの下部から[テスト]を選択します(ここで、いくつかの操作を行ったり、サインインしたり、アカウントアクセスを承認したりする必要がある場合があります)。
  4. ここが少し異なります。次に、Actions on Googleコンソールでプロジェクトを作成する必要があります。プロジェクトを作成するか、コンソールにインポートします。
  5. 最初に必要な手順は、API.aiまたはSDKから直接取得できるアクションパッケージを提供することです。 API.aiの場合は、前の統合ページに戻り、Actions on Googleの設定で[更新]を押す必要があります。 (SDKの以前のバージョンでは、これは「デプロイ」というラベルが付けられており、アプリを公開していましたが、心配する必要はありません。これにより、AoGコンソールが更新されます。必要に応じて、後でAoGコンソールから公開します) 。
  6. この新しいコンソールでは、以前よりも多くの情報が必要になります。 「アシスタントアプリの名前」は何でもかまいませんが、「発音」はいくつかの条件に厳密に制限されています(グローバルに一意、予約済みのキーワード、非ブランド違反)。また、発音だけでなくアプリ名を使用して呼び出すこともできることもわかりましたが、修正されると思います。
  7. 必要な情報をすべて入力したら、API.aiからテストできます。 API.aiのAoG設定メニューに戻り、HTTPリクエストpreviewから応答コンテンツを取得します(上記の@Bradyの回答と同様)。ここで私たちは別の違いにぶつかりました。別のオブジェクトにラップされているため、リクエスト応答の内容をaction.jsonファイルで直接使用することはできません。プロパティactionPackageのオブジェクトのみを使用します。 (つまり、削除

    {
      "actionPackage": 
    

    コンテンツの最初から

    }
    

    最後から)。最終的には、次のような構造のオブジェクトになるはずです(ただし、正確ではない可能性があります。API.aiエージェントのコンテンツによって異なります)。

    {
      "actions": [...],
      "types": [...],
      "manifest": {...},
      "conversations": {...}
    }
    
  8. これをaction.jsonファイルに入れます。

  9. 新しいgactions CLIコマンドを実行します。

    gactions test --project <your_project_name_from_aog_console> --action-package action.json
    
  10. ローカルのv2 Actions on Google SDKプロジェクトをお楽しみください!そして、グーグルが契約をこれ以上変えないように...

私は記憶から何をしなければならなかったか思い出すために最善を尽くしたので、この記事にいくつかの間違いがあるかもしれません。うまくいけば、これは誰かを助けます。

8
dadykhoff