横田慎介(50)20この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。EchoからiPhoneを鳴らせるようにしたので、その方法を紹介します。4と鳴らしたいデバイスの番号を答えることで、iPhoneなどが鳴ります。0と最初からデバイスを指定することで、いきなり対象のデバイスが鳴ります。それでは作り方を見ていきます。Skillの基礎については、過去の投稿もあるのでよろしければご参照ください。全体の構成は下の図のようになります。Alexaに送ります。Lambdaに送ります。Lambdaは指定された端末を鳴らすようにAppleのiCloudにリクエストを投げます。iCloudが指定された端末を鳴らすことでユーザはiPhoneを見つけることができます。SkillとAlexaからイベントを受け取るLambdaファンクションです。Lambdaファンクションから作って行きます。Lambdaをエンドポイントとして利用しました。Lambdaファンクションで行うのは、次の二つです。Lambdaファンクションを作成します。バージニアリージョンのLambdaの画面を開き、AlexaのBlueprintからファンクションを作成します。言語はPython2.7を使うので、「alexa-skills-kit-color-expert-python」というブループリントを選択します。「Runtime」がPython2.7になっていることを確認してください。「Name」と「Description」は分かりやすいものを入力します。code」は下の写真ではzipファイルをアップロードしていますが、とりあえずはBlueprintの初期値のままで構いません。のちほど、実行コードを作成した後でアップロードします。次に実行コード内で利用する環境変数を指定します。Skillの設定をする時に割り振られるので、今は空欄にしておいてください。finder"と呼びかけた時に、この環境変数のあたいのデイバイスが鳴ります。指定がない場合は、デイバイスの一覧が読み上げられます。鳴らしたいデバイスがあらかじめ決まっているときはこの環境変数を作っておくと楽です。helpers」を有効にして暗号化します。KMSのキーがない場合は、案内に従って作成します。「TARGET_DEVICE_NAME」以外は「Encrypt」をクリックして暗号化を有効にします。「Handler」と「Role」の設定を行います。「Handler」は初期値のまま、つまり「lambda_function.lambda_handler」にします。permissions」を付与します。先ほどの環境変数を複合化する必要があるからです。これでLambdaファンクションの設定は一旦完了です。Skillの設定が終わった後に一部修正します。言語はPython2.7を使うのでした。iCloudを操作するためにpyicloudというライブラリを利用しています。作業用ディレクトリを作成し、必要なライブラリをインストールします。."をつけて、カレントディレクトリにライブラリがインストールされるようにします。tzlocal-1.3Lambdaファンクションでの実行ファイルをlambda_function.pyという名前で作ります。event['session'])これで実行コードの準備はできたのでzipで固めて、先ほどのLambdaファンクションにアップロードします。0%)AWSのコンソールでLambdaファンクションの設定画面に戻り、zipファイルをアップロードしましょう。Lambdaファンクションの動作確認Lambdaのテスト機能を使って、テスト用イベントを発行してみます。event」を選んでください。次のようなイベントを登録し、「Save」します。"1.0"}Lambdaファンクションの環境変数「APPLICATION_ID」の値をテストイベントに合わせて「dummy」にした上で「Encrypt」し保存、テストして見ましょう。Result」が「Succeeded」になります。エラーが出た場合はデバッグしてください。Skillの設定を行います。Echoから受け取った音声をいま作ったエンドポイントにつなぐ部分です。Console上で行います。Echoで使っているAmazonのアカウントでログインおよび登録を行ってください。Skillは一般には公開しません。Skillも利用できます。Kit」を選択してください。新しくSkillを作成します。Information」の設定です。Finder」とします。Name」はこのスキルを呼び出すときの名前になります。Finder"と呼びかけることで、このスキルが発動します。呼びやすい単語を選びましょう。Model」の設定です。ここで、エンドポイントとAlexa、そしてAlexaとユーザがどのようなやり取りを行うか定義します。Schema」を定義します。]}"intent"は日本語に訳すと「意図」です。先ほど設定したLambdaファンクションはAlexaから"intent"を受け取り、"intent"に応じた処理を行います。上の例では2つのintentが定義されています。"TargetDeviceIsIntent"は特定のデバイスを鳴らしたいというintentです。このintentではデバイスを特定するために"slots"を持っています。"TargetDeviceIsIntent"は数値("AMAZON.NUMBER")が入る"TargetDeviceNumber"という"slot"を持っています。この値は"intent"情報としてエンドポイント(Lambdaファンクション)に渡されます。一つの"intent"、"ListMyDevicesIntent"は自分のデバイスのリストが欲しいというintentです。付加情報は必要ないので"slots"を持っていません。ここでAlexaとエンドポイントでやり取りされる情報の定義を行なっています。Utterances」を列挙していきます。iphone"utterance"は日本語だと「発言」という意味ですが、ここでは"intent"の発話表現という趣旨だと思います。devices"と発言することもあるでしょう。上の例ではどちらの"utterance"も"ListMyDevicesIntent"に対応づけられているので、Alexaはこれらの発言を"ListMyDevicesIntent"と解釈して、エンドポイントに伝えます。devicesとなる必要があります。Echoの起動キーワード、"open"や"ask"はスキルの発動キーワードです。Name"が呼ばれ、その後にここで定義している"utterance"が続きます。発動キーワードは文脈によって自然なものを選べるようにたくさん用意されています。Utterances」はこれらの"utterance"を集めたものです。できるだけ多くの場面でAlexaがユーザの意図を汲み取れるようにするために、できるだけたくさん列挙した方が良いでしょう。FanctionのARNを入力します。America」を選びます。EchoからAlexaに届いた情報をLambdaファンクションに送れるようになりました。Information」のページで確認できます。Idを環境変数「APPLICATION_ID」に入力し「Encrypt」後に保存します。これでLambdaファンクションの設定は完了です。動作確認Alexaからのデータを処理できるかテストします。Developerの先ほどのページに戻り、「Test」ページを開きます。このスキルを「Enabled」にし、自分のアカウントで利用できるようにした後、下にあるシミュレーターでテストします。devices」と入れてテストします。期待通りリストが取れました。4」と入れてテストします。soon"」とあるので期待通りです。Echoが返答するときの音声を聞くことができます。単語や文章の間などを調整するのに便利です。Compliance」を入力して完成です。Storeに出すための審査が始まるので、公開の予定がない場合は左下の「Save」を選びます。Alexaアプリでスキルを有効化Alexaアプリに開発時と同じアカウントでログインし、スキル一覧を確認します。Alexaアプリのマイスキルページいま追加したスキルが確認できるはずです。「Disabled」になっている場合は有効化します。最後に無くなりがちなiPhoneを見つけやすくなりました。503,592まだプロフィールが設定されていません。リモート】クラスメソッドの会社説明会を開催しますクラスメソッドでは、AWS・AI・ビッグデータ・モバイルなどの技術職や営業のメンバーとして一緒にお仕事をする仲間を大募集しています。#cmdevio新型コロナウイルスの感染拡大を受け、本イベントを延期させていただくことになりました(開催時期未定)。お申し込みいただいた皆様には大変申し訳ございませんが、何卒ご理解いただけますようよろしくお願いいたします。AWSについてライトに色んな情報交換をしましょう。濱田孝治416re:Invnetの動画検索でもめちゃくちゃ便利ですが、その他ブログやホワイトペーパーやGitHubも横断検索できるので、是非一度使ってみてください。CAFEの他、NTTデータとセブンイレブンの取り組みや、サインポスト、Zippinなどの各社と流通・小売業との連携を業界マップに作成してみました。泰雨111皆さん、こんにちは。コンサル部のテウです。2020年もあっという間に2ヶ月が経ちました。今年こそ機械学習に入門しようぜ!!って決心された方もいらっしゃると思います。入門できる方法をご紹介させて頂きたいと思います。本記事の手順通り、ランチタイム等の時間を活かして、手軽に入門してみてください。濱田孝治416re:Invnetの動画検索でもめちゃくちゃ便利ですが、その他ブログやホワイトペーパーやGitHubも横断検索できるので、是非一度使ってみてください。夏目祐樹414こんにちは、CX事業本部の夏目です。MacのタッチバーのタッチIDが非常に便利なのですが、Terminalでsudoを叩かないと行けないときに使えたらなぁと思ったので、情報を共有します。臼田佳祐296ワークフロー自動化OSSのn8nをAWS環境で建てて検証してみました。非常に期待できるサービスです。Fargateの勉強をしています。使ってみたい方は参考にしてください。洋介257SnowflakeがAWSの東京リージョン上で稼働するようになりました。データを日本に置けます。クラスメソッド株式会社が運営するAWS・iOS・HTML5に関する技術情報サイトです。