Raspberry Pi + PHP + IFTTT + Googleアシスタントで簡単に声でPCを起動できるようにしてみた(前編)

自分は最近、自宅を少しづつスマートホーム化しています。

その過程で、自宅にあるデスクトップPCをGoogleアシスタントから声だけで起動できるようにできないかな、と思い立ち、方法を調べてみました。

必要なのは、Googleアシスタント対応のスピーカーとLinuxとPHPが動作するマシン、そしてIFTTT(イフト)と呼ばれるサービスです。

IFTTTは(If This Then That)の略で、複数のインターネット上のサービス同士を連携させる仕組みを提供するWebサービスです。

IFTTT上であらかじめ設定しておいた任意のサービス上の自分のアカウントで、何らかのイベントが発生した際にIFTTT経由で別の指定したサービス上で何らかのアクションを起こすことができる、という仕組みになっています。

今回の目的は「Googleアシスタントで音声コマンドを入力したら」「PCを起動する」という動きをやりたいので、

[Googleアシスタントに特定の音声コマンドが渡される] -> [IFTTTが呼び出され、紐づけられた処理を実行する] -> [PCを起動させる役割を持つ機器に指令を送る] -> [機器が目的のPCを起動させる]

上記のような流れが作れれば行けそうな気がします。

ここから、実際に上記のような仕組みづくりにチャレンジしていきたいと思います。

内容については2回に分けてご紹介していきます。

今回はIFTTT周りの設定についてご説明したいと思います。

まず、IFTTTを使用できるようにするために、IFTTTのアカウントを取得しておく必要があります。

https://ifttt.com/

IFTTTのページにアクセスすると、次のような登録フォームが表示されると思います。

メールアドレスでの登録に加え、Apple/Google/Facebook のいずれかのアカウントを使用して登録することもできます。

今回はGoogleアシスタントを使用するので、特にこだわりがなければGoogleアシスタントと連携しているGoogleアカウントでログインしておくと管理が楽です。

ログインすると、下のような画面になります。

Get moreをクリックすると、IFTTTが連携できるサービスの検索画面が出てくるので、中から”Google Assistant”を探し出します。

Google Assistant をクリックすると、次のような画面になるので、”Connect”ボタンをクリックします。

この後、Googleアカウントのログイン画面が出てくるので、Googleアシスタントと連携しているGoogleアカウントでログインします。

これで、IFTTTとGoogleアシスタントが連携されます。

次に右上のCreateボタンをクリックします。

するとこのような画面になります。

IFTTTでは、無料アカウントと有料アカウントの2つが存在していますが、無料の場合、自分専用のアプリを3つまで作成することができるようになっています。

“If This”の横にある”Add”ボタンをクリックし、PC起動のトリガーとするサービスを設定します。

こちらでもやはり”Google Assistant”と検索し、Google Assistantを指定します。

Googleアシスタントで利用できるトリガーの種類が一覧で表示されるので、”Say a simple phrase”を指定します。

すると次のような入力欄が表示されます。

ここは実際にどのように動作させたいかに応じて設定していきます。

自分の場合は下記のように設定してみました。

What do you want to say?(メインの音声コマンド)

ほげを起動

What’s another way to say it? (optional)(音声コマンドのエイリアス。任意。)

PCほげを起動

And another way? (optional)(さらに別の音声コマンドのエイリアスを指定したい場合は入力。任意。)

指定なし

What do you want the Assistant to say in response? (音声コマンドを実行したときのGoogle Assistantからの返答)

PC ほげ を起動します

Language (Google Assistantが扱う言語)

Japanese

設定が完了したら、”Create trigger”をクリックします。

これで、IFTTTにPC起動のトリガーとなる処理が登録されます。

つぎはいよいよ”Then That”、つまり、トリガーを受けた際にどのような処理を行うかを指定します。

この部分については少し説明すべきことがあるので、次回の記事にまとめていきたいと思います。

お楽しみに!

>株式会社シーポイントラボ

株式会社シーポイントラボ

TEL:053-543-9889
営業時間:9:00~18:00(月〜金)
住所:〒432-8003
   静岡県浜松市中央区和地山3-1-7
   浜松イノベーションキューブ 315
※ご来社の際はインターホンで「316」をお呼びください

CTR IMG