Amazonタイムセール祭りは9/20から開催——クリックして特集記事へ

Alexaのスキル作成支援にRaspberry Pi でPythonベースのソフトウェアとサンプルプロジェクトを利用する

alexaとRaspberry Pi 連携タイトル Amazon
この記事は約5分で読めます。

皆さんはアレクサを体験済みですか? Raspberry Pi とは一見して関係が無さそうに思えるAmazonEchoとそのサービスは、Echoスキルの開発として実はAmazonが推奨しています。

先日のセールにてRaspberry Pi と連携させるべくAmazonEchoShow5を購入しました。

ツールキットを利用してRaspberry Pi で開発していければと思っています。

スポンサーリンク

Alexa Gadgets Toolkit

Amazonはカスタムインターフェイスの開発支援するために、Raspberry PiとPythonベースのソフトウェアを使用してガジェット(スキル)の構築ガイドとしてサンプルプロジェクトをオンラインで公開しています。

Alexa Voice Service Developer Console

Echoデバイスで動作するガジェットを作成することになります。

そのためには最初にAlexa Voice Service Developer Consoleで新しいガジェットを登録する必要があります。

これらを使い、ユーザーはAlexa Gadgets Toolkitを使用して、Alexaの音声応答やタイマー、アラーム、リマインダー、Amazon Musicなどへの動作を促すトリガーを作成できるようになります。

サンプルがあるGitHubリポジトリには、カスタムインターフェイスコントローラーを使用してスキルが制御できるリソースが含まれています。

サンプルはNode.jsとPythonとあり、これら両方で使用できるPythonクライアント側コードもあります。

Alexa Gadgets Raspberry Pi Samples ページ

開発に必要な環境

これらRaspberry Pi を使ったAmazonスキルの開発に必要な条件は以下です。

  1. Raspberry Pi Zero WまたはRaspberry Pi 3B+(要インターネット接続)
  2. 最新バージョンのRaspian Stretchがインストールされた最小で8GBからのmicroSDカード
  3. Amazon開発者アカウント
  4. Alexaガジェットと互換性のあるEchoデバイス

Echoデバイスは持っているのは当然として、Raspberry Pi も手に入りやすい3B+とZeroWなので、問題ありませんね。

パイグリーン
パイグリーン

Raspbian Stretchの次バージョンであるBusterではどうなんだろう??

3番の開発者アカウントが無い人が多いかと思います。無料ですし、この機会に登録してみてください。

手順については公式サイトも詳しく載っています。

alexa/Alexa-Gadgets-Raspberry-Pi-Samples
This repository enables you to prototype an Alexa Gadget using Raspberry Pi. It includes Python-based software, sample projects, and step-by-step instructional...

まだ英語の環境なので別の記事でまとめたいと思っています。ただ、公式サイトもキャプチャ画像が豊富な説明なので分かり易いでしょう。

連携の導入手順は一応まとめてみました。

ラズパイとAmazonアレクサを連携してAlexa Gadgetを使う
ここではssh経由でMacのターミナルを使いRaspberry Pi 3B+にインストールされたRaspbianへ必要...

サンプルプログラム

インストールが終われば、exampleフォルダに5つのプロジェクトが入っています。

/home/pi/Alexa-Gadgets-Raspberry-Pi-Samples/src/examples
  • Kitchen Sink Gadget
    ダイレクトに応答してメッセージを印刷させる。ウェイクワードの検出、アラーム、タイマー、通知、リマインダーが含まれます。
  • Color Cycler Gadget
    LEDとボタンを備えたガジェットを作成します。様々な色を切り替え、ボタンが押されたLEDの色を報告します。(このプロジェクトにはAlexaのスキルが必要です)
  • Wake Word Gadget
    ウェイクワードの検出と同期してLEDをオン/オフします。
  • Notification Flag Gadget
    ペアリングされたEchoデバイスで通知を受信またはクリアしたときに、サーボを回転させてフラグを上げ下げするAlexaガジェットを作成します。
  • Timer Gadget
    Echoデバイスに設定された単一のタイマーに反応するAlexaガジェットを作成します。サーボがディスクを回転させて、タイマーの残り時間、タイマーの有効期限、タイマーのキャンセルを示します。
パイブラック
パイブラック

金魚にエサをやるサーボモーターを動かすにはタイマーのガジェットとか組み合わせれば簡単にできそうだ?

実行方法

実際にサンプルプログラムを実行するには、Echoのデバイスとスマホアプリを使い、Bluetoothでペアリング接続を設定します。

ネット接続は必要とはいえ、ほぼローカル環境で試せます。他に公開する必要がありません。

注意

インストールの過程で、BluetoothでのA2DP環境は無効になっています。

A2DPとは、Bluetoothで音楽をストリーミング配信するデータ転送のことで、alexaとの連携には邪魔なため無効にするよう推奨されています。

Raspberry Pi 側を元に戻したい場合は以下のコマンドです。

sudo apt-get -y install bluealsa
sudo reboot

使ったmicroSDカードを開発用から元のRaspberry Pi としてそのまま再利用する際には思い出してください。microSDカードごと交換するなら必要ない手順ですね。

最後に

Alexaのみならず、こういったWebコンソールの利用というのは少し理解しずらい面があります。

Amazonの場合は比較的に分かり易いと感じます。

AmazonのアカウントやEchoデバイスを所持しているのなら、手順通りに試すだけで実現できますので、英語はWeb翻訳に頼ってみて一度トライしてみてください。

オリジナルのガジェット(スキル)を作れるというのは魅力的です。このラズパイダでも試してみたことはご紹介していきたいと思います。

既に楽しんでいる人や玄人の人は、参考になりますので、ぜひフォーラムにてお教えください!

AppleもようやくHomePodをリリースしてきましたが、先行しているAmazonが格安でEchoを販売しているので、取っつきやすさではAmazon側が断然に有利です。

特にRaspberry Pi と連携させるなんてステキです。

Amazon Echoはモニター付きだと更に楽しめます!
AmazonEchoのスキル開発についてでした。

実際にプログラムする手前まで準備してみます。続きは「ラズパイとAmazonアレクサを連携してAlexa Gadgetを使う」です。

ラズパイとAmazonアレクサを連携してAlexa Gadgetを使う
ここではssh経由でMacのターミナルを使いRaspberry Pi 3B+にインストールされたRaspbianへ必要...
Twitter、フォーラム、メールで購読
それぞれ更新情報をお伝えしています。
皆様のフォローをお待ちしています!
\ FOLLOW ME /
/ 最新記事をお知らせしています! \
Amazon
スポンサーリンク
フォローをお願いします——ラズパイダ
特集ラズパイ4
スポンサーリンク
こちらの記事もよく読まれています♪
\\ 特集 //
購入するならAmazonセールで
ラズパイダ

コメント

最近のフォーラム投稿

Raspberry Piや記事に関することなどコメント欄の代わりにお使いください。