Google Homeに漫才させてみた
今日(2017-12-16),ゆるゆるIT勉強会 feat.ReedexにてLTさせてもらいました(はじめてのLTでした).
LTは5分で細かいところまで話せなかったので,もう少し細かいところも含めてメモしておきます.
スライド
Google Homeに漫才させてみた // Speaker Deck
動画
構成
人間が喋ると両方(Google HomeとGoogle Assistant App)が反応してしまうので,google-home-notifierでGoogle Homeに喋らせて,もう片方のアプリを起動する方法を考えました.
Actions on Googleでは2つのアプリを作り,それぞれに次のようなインテントを用意しました.
アプリ1(ツッコミ担当)
- アプリ名: 相方
- インテント1(Default Welcome Intent)
- User Says: ""
- Text Response: "どうもどうもどうもー。Google Homeブラザーズですー!いやー最近スマートスピーカーが流行ってますねー。"
- インテント2
- User Says: "流行ってますねー。うちもひとつ買いましたよ。"
- Text Response: "おー!何を買ったんですか?"
- インテント3
- User Says: "Amazon Echo"
- Text Response: "いやGoogle Homeじゃないんかーーーい!"
- インテント4
- User Says: "どうも、ありがとうございましたー"
- Text Response: "ありがとうございましたー"
アプリ2(ボケ担当)
- アプリ名: 漫才
- インテント1(Default Welcome Intent)
- User Says: ""
- Text Response: "OK Google、相方につないで"
- インテント2
- User Says: "わかりました。テストバージョンの相方です。"
- Text Response: "どうもー"
- インテント3
- User Says: "Google Homeブラザーズですー!いやー最近スマートスピーカーが流行ってますねー。"
- Text Response: "流行ってますねー。うちもひとつ買いましたよ。"
- インテント4
- User Says: "おー!何を買ったんですか?"
- Text Response: "Amazon エコー"
- インテント5
- User Says: "いやGoogle Homeじゃないんかーい!"
- Text Response: "どうも、ありがとうございましたー"
アプリ2のインテント2と3は,アプリ1から「はい,テストバージョンの相方です(ピロン♪)」が自動的に入ってしまい,そこで1つの発話と認識されてしまうので,一旦「どうもー」と返しておきながら,アプリ1インテント1の途中からの発話をフックするトリックです.
シーケンスで表すと次のようになります.
node.jsのコード
はじめのトリガをかけるnodes.jsのコードは次のような感じです.
var googlehome = require('google-home-notifier');
googlehome.device('Google Home', 'ja');
googlehome.ip('192.168.10.xxx');
googlehome.notify('オーケー、グーグル。漫才に繋いで', function(res) {
console.log(res);
});
Author And Source
この問題について(Google Homeに漫才させてみた), 我々は、より多くの情報をここで見つけました https://qiita.com/ottijp/items/3bcef9ac1dc3746ad3cb著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .