オフィスにお客様がいらっしゃったとき、Google Homeに受付をさせてきちんと応対してくれればハッピーですよね。さらにオフィス内に置いた別のGoogle Homeからもその旨を社内に伝えてくれればスーパーハッピーですよね。今回はそんなシステムを実装してみたので、みんなでウルトラハッピーになりましょう。

flow image

参考動画

大まかな流れ

  1. 来客が受付のGoogle Homeに話しかける
  2. IFTTTで設定したトリガーが発動し、以下の2つのことを同時に行う
    • 来客に対して、しばらくすると担当者が向かうことを伝える
    • GHKitを通してオフィス内のGoogle Homeに客が来た旨を喋らせる
  3. 担当者が受付へ向かう

やったこと

1. GHKitで、オフィス内のGoogle Homeに好きな文章を喋らせられるようにする
2. IFTTTで、受付のGoogle Homeが来客からのメッセージを受け取ったことをトリガーにしてGHKitにアクションを投げられるようにする

参考ページ

必要なもの

  • セットアップ済みGoogle Home 2台(miniでも可)
  • GHKit
  • 有線LAN環境とLANケーブル
  • Androidスマートフォン

手順

1. GHKitの準備

 まずはGHKitを入手してください。がんばればRaspberry Piだけで同じことができそうですが、とりあえずGHKitで進めていきます。このGHKitを使うと、Google Homeがユーザーからの呼び出しなしに喋らせることができるようになります。以下の手順はGHKitのページにも記載されていますが、一部変更しています。

1-1. Androidスマートフォンのセットアップ

 GHKit専用アプリをインストールし、GHKit購入時にメールで送られてきたGHKit IDを入力します。このIDは後ほどIFTTTの連携でも使用します。
GHKit ID setup

1-2. Raspberry Piを起動

 GHKit本体であるRaspberry PiにLANケーブルを接続し、電源を入れます。しばらくしてGoogle Homeが「GHKitです」と話せば下の1-3.は飛ばしても可です。

GHKit image

1-3. Raspberry PiのWifiセットアップ

 Google Homeが何も話さなければ、Raspberry PiとGoogle Homeが同じホームネットワーク内にないらしいので、先程インストールしたAndroidアプリでRaspberry PiのWifi設定をします。GHKitの説明ページには以下のように書かれているのですが、今回はなぜかWifiとつながってくれず有線で運用することにしました。

Wifiルーターがルーターモードの場合など、有線LANとWifiが別ネットワークの場合、Raspberry PIのWifi設定を行う必要があります。
Androidアプリの右上メニューより「Raspberry PIのWifi設定」を選択し、指示に従って設定してください。
Raspberry PIを再起動して1分ほど待ち、Google Homeが「GHKitです」と喋ると設定完了です。
設定完了後、LANケーブルを取り外すことができます(要再起動)

GHKit Wi-fi setup

1-4. Google Homeの指定

 今回はGoogle Homeを2台使用します。GHKitはホームネットワーク上を探して最初に見つかったGoogle Homeに発話させますが、それがいつも同じGoogle Homeとは限りません。そこでオフィス内に置くGoogle HomeのIPアドレスを指定して、いつもオフィス内の方に発話させるようにします。
 Google HomeのIPアドレスの確認方法は、スマホのGoogle Homeアプリでデバイス一覧を表示↓

Google Home 1

 確認したいGoogle Homeの設定ページを表示↓

Google Home 2

 ページ最下部の192.168.?.?のような値がIPアドレス↓

Google Home 3

このIPアドレスをアプリで入力すると、指定したGoogle Homeから常に発話できるようになります。

GHKit IP setup

Google Homeを再起動したりするとIPアドレスが変わることがあるので、意図しないGoogle Homeが喋ったらこの手順で設定し直してください。

1-5. アプリからメッセージ送信

 Androidアプリから任意のメッセージを送信してGoogle Homeに喋らせることができたらOK。

GHKit message

2. IFTTTの連携

 IFTTTでは、あるトリガーが起きたらあるアクションを実行するという流れが設定できます。このトリガーとアクションを組み替えることで、提携している様々なサービスを利用して、新しいサービスを作ることができます。今回はIFTTTに「Google Homeが『OKグーグル、受付 ○○』と話しかけられる」というトリガーをセットし、「GHKitを通してGoogle Homeに『お客様がいらっしゃいました』と喋らせる」というアクションをセットしました。

2-1. IFTTTアカウントの作成

 IFTTTのページに行って、アカウントを持っていない人は新規アカウントを作成するかGoogleアカウントでサインインしてください。

IFTTT 1

2-2. 新しいアプレットの作成

 上部のメニューからMy Applets→New Appletを選択する。

IFTTT 2

2-3. トリガーの設定

 +this のところをクリックすると、トリガーが選択できます。検索窓にgoogleと入力して、Google Assistantを選択してください。

IFTTT 3

 connectをクリック、その後受付に置くGoogle Homeに設定しているアカウントで認証をしてください。

IFTTT 4

 トリガーの選択画面では、上の画像で左から3つ目のSay a phrase with a text ingredientを選択します。これはお客様の名前をGoogle Homeに繰り返させるためです。トリガーの各ボックスには以下のように入力してください。

What do you want to say? :
  受付 $
What do you want the Assistant to say in response? :
  $ 様。お待ちしておりました。担当の者が参りますので、少々お待ちください。
Language :
  Japanese

IFTTT 5

これでCreate triggerをクリックすれば、トリガーは設定完了です。

2-4. アクションの設定

続いて +that のところをクリックし、アクションを選択します。検索窓にwebhooksと入力し、Webhooksのサービスを選択してください。

IFTTT 6

ConnectしてMake a web requestを選択します。

IFTTT 7

設定のボックスには以下のように入力してください。ここで先程のGHKit IDが必要になります。ここではIDを仮にabcd1234とします。

URL :
  http://ifttt.ghkit.jp/
Method :
  POST
Content Type :
  application/json
Body :
  {"message": "abcd1234 お客様がいらっしゃいました。"}

Body中の記号{,},",:,(半角スペース)を間違えないようにしてください

IFTTT 8

Create actionボタンをクリックし、Finishをクリックすれば完成です!

IFTTT 9

まとめ

 オフィスの受付システムを2台のGoogle Homeにさせてみました。GHKitを使用した部分はRaspberry piがあれば自作できそうですが、単純に実装すると誰でも任意のメッセージを喋らせられてしまうので認証などを考えるのがめんどくさそうです。IFTTTはthisとthatを組み替えればアイデア次第で誰でも新しいものが作れそうですね!

補足

 今回は株式会社SmartHacksでの就業形インターンとして、このサービスならびに本記事を作成しました。

Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account log in.