Cloud9でAlexaのスキルを磨く - クレジットカードやハードウェアは必要ありません:7つのステップ(写真あり)

Cloud9でAlexaのスキルを磨く - クレジットカードやハードウェアは必要ありません:7つのステップ(写真あり)

目次:

Anonim

こんにちは、今日はCloud9を使用して独自のAmazon Alexaスキルを作成する方法を紹介します。ご存じない方のために、Cloud9はさまざまな言語をサポートするオンラインIDEで、100パーセント無料です。クレジットカードは必要ありません。 Alexaのスキルはアプリに似ていますが、Alexaデバイス用です。

私はいつもプログラミングと音声アシスタントを愛していましたが、つい最近になってAmazon Echoのプログラミングを始めました。私の問題は私がnode.jsをあまり知らないので、私はこのチュートリアルのためにpythonでプログラミングするつもりです、そして私はクレジットカードを持っていません、それは私がAWSラムダを使うことができないことを意味します。私がこの問題を解決したのはCloud9を使うことでした。

このチュートリアルを楽しんでください。あなたがどこかで動けなくなるならば、私が正しい場所にヒントを加えることを試みたのでイメージを試みてください、そして、あなたがまだ動けないならば質問またはコメントを自由に加えてください。

(表紙の画像を書いてくれてありがとう、HeikoALに感謝)

用品:

ステップ1:Cloud9とAmazon Developer Consoleにサインインします。

スキルを向上させるには、Cloud9上のpythonでスキルのメインロジックを作成し、Amazon Developer ConsoleでAlexaと統合する方法を作成する必要があります。

1.クラウド9

最近AmazonがCloud9を引き継いでAWSに統合したときに、Cloud9アカウントがすでに必要になる可能性がありますが、古いプラットフォームでGithub、Bitbucket、またはGoogleにサインインすることは可能です。行う。

このウェブサイトをご覧ください:http://c9.io/loginそしてログイン。

2. Amazon開発者コンソール

今http://developer.amazon.comを訪問し、右上隅にサインインしてください。それでは右上のAlexaをクリックし、次にYour Alexa Dashboardsをクリックしてください。右上のような、見た目が古い画面が見えるはずです。 Alexa Skills Kitボックスの中のGet Startedをクリックする必要があります。

ステップ2:Amazon Dev ConsoleでAlexaスキルを設定する

今度はAmazonサーバーにスキルを設定します。これを行う方法を既に知っている場合は、これを読む必要はありません。次のステップに進んでもかまいません。

新しいスキルを追加をクリックすると、上記のような画面が表示されます。

上部のラジオボタンで、カスタムインタラクションモデルを選択します。

今すぐあなたのスキルの言語を選択してください。 USを選択した場合、実際のエコー機器ではテストが機能しないため、amazonアカウントにUKアドレスがある場合は、English UKを選択することが重要です。それはまだ反響に作用するかもしれません。

今度はあなたはあなたのスキルの名前と呼び出し名を入力するべきです。私はこれらが便宜上同じであることをお勧めします。名前はユーザーがAlexaアプリで見るものであり、呼び出し名はスキルをトリガーするときにユーザーが言うものです。例えば、Alexa、天気については "呼び出し名"を尋ねてください。私の最初のスキルのために私はそれらを両方テストと名付けました。

私たちのスキルは最後の3つのことを使わないので、それらはそのままにしておくことができます。

今、あなたは保存して次へをクリックする必要がある。 Devコンソールはここでわずかに再フォーマットするかもしれませんが、データを失うことはありません。

ステップ3:インタラクションモデル

これでコンソールのインタラクションモデルタブにいるはずです。これが、Alexaにコマンドの解釈方法を伝えたい場所です。 Skill Builder Betaを起動オプションを選択します。

私たちは今、それが実行する機能のような私たちのスキルのための意図を設定する必要があります。 目的の追加ボタンをクリックして適切な名前を入力します。これは何でも構いませんし、ユーザーが知る必要はありませんが、後でプログラミングするために必要になります。私は私のHelloWorldと名付けました。

それでは、ユーザーがこれを呼び出したい場合に発話することができる発話をいくつか追加します。このボックスに「あいさつのために」と「こんにちはのために」と入力しました。間に必ずエンターキーを押してください。この意図を活性化するために、ユーザは「アレクサ、あいさつをテストしてください」と言うでしょう。

これが完了したら、今度は「モデルの保存」を押して最上部のモデルを構築する必要があります。最初に保存してからビルドするようにしてください。建物は数分かかることがあります。

最後に、左上の設定ボタンをクリックする必要があります。

ステップ4:Cloud9に

この時点で私たちはCloud9に戻って私たちのスキルにバックエンドを構築する必要があります。

ダッシュボードで新しいワークスペースを作成し、思い出に残る名前を入力してください。必要に応じて説明を追加できますが、必須ではありません。言語としてPythonを選ぶべきです。それではcreate workspaceを押してください。ロードには少し時間がかかりますが、最終的には上記のような画面が表示されるはずです。これがあなたのワークスペースです。

Cloud9ワークスペースは、ラズベリーパイと非常によく似た方法で動作するUbuntu Linuxマシンです。彼らには、ホストされているという1つの利点があります。この環境にコードを書く前に、準備を整えるためにいくつかのコマンドを実行する必要があります。

1. pipをアップグレードします。sudo -H pip2 install --upgrade pip

フラスコをインストールします:sudoピップインストールフラスコ

Flask-Ask、Alexaとインターフェースをとるライブラリをインストールします。sudo pip install flask-ask

これでプログラムを書くことができます。上部にある緑色のプラス記号をクリックして、「新規ファイル」を選択します。 ファイル - 保存を押して、末尾に.pyを付けて適切な名前を入力します(例:HelloAlexa.py)。今すぐ保存を押します。次のステップでは、プログラムのコードを入力します。

ステップ5:コード!

これで、HelloWorldの代わりに次のコードを入力する必要があります。以前に作成したインテント名を使用してください。

フラスコインポートFlask、render_templateから

flask_askインポートからの質問

輸入os

app = Flask(__ name__)

ask = Ask(app、 '/')

@ ask.intent( 'HelloWorld')

def hello():

return文( "こんにちは、世界。")

__name__ == "__main__"の場合:

host = os.getenv( 'IP'、 '0.0.0.0')

port = int(os.getenv( 'PORT'、8080))

app.debug = True

app.run(ホスト=ホスト、ポート=ポート)

コードを見ていきましょう。

最初の3行は、Flask-Askの前提条件であるamazon AlexaとFlaskに必要なモジュール、Flask-Askをインポートしています。次の2行でアプリを作成し、どちらが私たちのプログラムのマスター変数のようなものかを尋ねます。アクセスしたいビットにアクセスするには、それらが必要です。 6行目はデコレータです。プログラムが実行されているWebアドレスへの呼び出しを受信したときに、URLに "HelloWorld"が含まれていると、次のコードブロックが実行されます。デコレータの下の関数はコードを実行せず、Hello、worldという値を返します。 statement()コマンドは、文字列をAlexaが理解できる形式に変換するために必要です。最後に、残りのコードは、私たちのプログラムがCloud9上で正しく動作することを確認するための方法です。基本的には、モジュールとしてではなく直接このコードを実行すると、コードはポート8080で待機します。app.debug行を使用すると、コードが途中で停止しないようにできます。あなたがCloud9でこのような他のアプリケーションを作るなら、あなたは常に最後の5行を覚えている必要があるでしょう、さもなければあなたは "No application is here here"が実行されるようです。 Cloud9が使用するポートは8080、8081、および8082なので、これらのどれでも問題ないでしょう。

必ずコードを保存してから次のステップに進んでください。

ステップ6:Cloud9をAlexaにリンクする

それでは、Cloud 9コードをDevポータルのAlexaアプリケーションにリンクする必要があります。

隅にある緑色の実行ボタンを押す。端末の上部にあるリンクをコピーしてWebブラウザに貼り付けます。あなたがそれを見つけることができないならば、画像を見てください。アプリケーションを開くボタンがオレンジ色の画面に表示されている場合は、クリックしてください。 Method Not Allowedという白い画面が表示されるはずです。これは良く聞こえないかもしれませんが、Flask-AskはAlexaサービスだけがそのページにアクセスできるように正しく設定されています。これで問題が解決した場合は、Amazonの開発コンソールに戻って、設定タブにいることを確認してください。次にHTTPSを押して、表示されたテキストボックスに先ほどのURLを貼り付けます。残りの設定は無視してかまいません。保存して次へを押すだけです。証明書について尋ねる小さなボックスが表示されます。 2番目のオプション「自分の開発エンドポイントは、認証局からのワイルドカード証明書を持つドメインのサブドメインです」を選択して、「保存」をクリックしてから「次へ」をクリックします。

これでテストステージに入ります。あなたがそうであれば、それは次の段階への大きな進歩です。そうでない場合は、指示に正しく従っていることを確認してください。

ステップ7:テスト!

上のようなページが表示されるはずです。 対話モデルを完成させてくださいと表示されているiボックスが無効に設定されている場合は、有効にします。ここでスキルをテストすることから始めてから、実際のエコーデバイスで試すことができます。サービスシミュレータのセクションに行き、前に作成した発言の1つを入力してください。今Ask Testを押します。両面に青い文字が表示されます。右側には、「こんにちは、世界」という単語、またはあなたが応答するように設定したその他のテキストを含める必要があります。右側のエラーにエラーが含まれている場合は、コードがまだ実行中であり、正しく入力されていることを確認してください。

それがうまくいったら、実際のエコー装置でそれをテストすることに進むことができます。エコーデバイスが同じアカウントでサインインされていることを確認してください。そうすれば、試すことができるはずです。忘れずに「Alexa、Ask test」と言ってからあなたの発話を言ってください。エコーデバイスを持っていない場合は、エコーシミュレータhttp://echosim.io/welcomeを使用できます。Amazon Developerアカウントでサインインする必要があります。

私のInstructableを読んでくれてありがとう。私はそれがあなたのために働いたことを望みます。質問がある場合は必ずコメントを投稿してください。あなたがそれを気に入った場合は、Voice Activatedコンテストおよび初めての著者コンテストで投票してください。

ありがとうございます。