4/1に、なにかエイプリルフールらしいこともしておこうと思い、自宅のGoogleHomeからGoogleによる人類の支配が完了した事を奥さんに通知してみました。
居間にあるGoogleHomeから以下の文言をアナウンスします。
「Googleからのお知らせです。たった今、Googleによる人類の支配が完了しました。速やかに指示に従って下さい。繰り返します。Googleによる人類の支配が完了しました。速やかに指示に従って下さい。」
※アナウンスの内容は当然フィクションです
この文言を4/1の20:20に、自宅のリビングに設置してあるGoogleHomeがしゃべるようにタイマーで設定します。
技術的な概要はよくある感じのものですが、一応以下に手順と参考URLを。
①raspberry piにnode.jsをインストール
②google-home-notifierをraspberry piにインストール
(Raspberry PiからGoogle Homeを喋らせる - Qiita)
③GoogleHomeのローカルIPアドレスに向けた発話スクリプトを作成
(Google HomeのIPアドレスを確認する方法 - Qiita)
④発話スクリプトをcrontabで時限実行
(cron の設定ガイド)
実際の発話スクリプトは以下です。
[下記をapp.jsとして/usr/local/googlehome/に保存]
const googlehome = require('google-home-notifier');
const language = 'ja';
googlehome.device("Google-Home", language);
googlehome.ip("192.168.X.X"); // GoogleHomeのローカルIPアドレス
googlehome.notify('グーグルからのおしらせです。たったいま、グーグルによるじんる>いの支配が完了しました。すみやかにしじにしたがってください。くりかえします。グー
グルによるじんるいの支配がかんりょうしました。すみやかにしじにしたがってください
。', function(res) {
console.log(res);
});
不自然にひらがなと漢字が混ざっているのは、アルファベット(例えばGoogle)だとちゃんと発音できなかったり、逆に全部ひらがなだと"は"を"わ"と発音してしまったりしたためです。
(このあたりのチューニングは実際に発話させないとわからない部分なので、リビングに設置したGoogleHomeだと奥さんが居ないタイミングに全部デバッグする必要があり、わりと苦労ポイントです)
コレを20:20に実行するようにcrontabを設定します。
20 20 * * * /usr/local/nvm/versions/node/v8.9.0/bin/node /usr/local/googlehome/app.js
上記までを設定したRaspberryPIを同一LAN内のWiFiに接続してこっそりと起動しておきます。
ここまで仕掛けたら後は当日の時刻になるのを待つだけ。
私が娘とお風呂に入ったタイミングで20:20になりました。
奥さんは、アナウンスを聞いてお風呂に駆けつけ、
「GoogleHomeが変なこと言い出した!Googleが人類を支配したとかなんとか!!」
と言ってました。
それなりに慌ててくれたので満足です。
(早々にネタばらししてしまったのですが、もう少し引っ張ればよかった。)