Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
VisualProgramming_GoogleHome_LINE
Search
NearMugi
June 15, 2022
Programming
1
590
VisualProgramming_GoogleHome_LINE
NearMugi
June 15, 2022
Tweet
Share
More Decks by NearMugi
See All by NearMugi
nekoIoTLT_NearMugiLLM
nearmugi
0
400
nekoIoTLT_CatAndColorSensor
nearmugi
0
940
EnebularMeetup_GoogleCalendar
nearmugi
0
300
nekoIoTLT_ToyAndVoiceAnalysis
nearmugi
0
400
nekoIoTLT_Demachi
nearmugi
0
450
nekoIoTLT_SearchBlackObject
nearmugi
1
690
nekoIoTLT_nekoDeeplearning
nearmugi
0
340
nekoIoTLT_nekoGohan
nearmugi
0
550
nekoIoTLT_Tsumetogi
nearmugi
1
740
Other Decks in Programming
See All in Programming
DevinとClaude Code、SREの現場で使い倒してみた件
karia
1
1k
Ruby x Terminal
a_matsuda
7
590
Agent Skills Workshop - AIへの頼み方を仕組み化する
gotalab555
15
8.5k
grapheme_strrev関数が採択されました(あと雑感)
youkidearitai
PRO
1
210
コーディングルールの鮮度を保ちたい / keep-fresh-go-internal-conventions
handlename
0
190
AIコードレビューの導入・運用と AI駆動開発における「AI4QA」の取り組みについて
hagevvashi
0
420
メタプログラミングで実現する「コードを仕様にする」仕組み/nikkei-tech-talk43
nikkei_engineer_recruiting
0
170
モジュラモノリスにおける境界をGoのinternalパッケージで守る
magavel
0
3.5k
AI時代でも変わらない技術コミュニティの力~10年続く“ゆるい”つながりが生み出す価値
n_takehata
2
710
Fundamentals of Software Engineering In the Age of AI
therealdanvega
1
240
CSC307 Lecture 15
javiergs
PRO
0
240
エラーログのマスキングの仕組みづくりに役立ったASTの話
kumoichi
0
170
Featured
See All Featured
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
98
The browser strikes back
jonoalderson
0
780
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
82
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
0
670
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
9.9k
Into the Great Unknown - MozCon
thekraken
40
2.3k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.1k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
82
WENDY [Excerpt]
tessaabrams
9
36k
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.4k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.2k
Transcript
LINEとGoogleHomeをつなげて 子どもと会話する 2022.06.15 ビジュアルプログラミングIoTLT vol.11
自己紹介 NearMugi(ニアムギ) 普段はねこIoTLTで活動しています。 ねこ2匹飼っています。
イントロ 「LINEとGoogleHomeをつなげて 子どもと会話する」とは?
イントロ スマホで文字を入力しなくても また文字が読めなくても 家族同士コミュニケーションを取れる システムです (ちょっと誇大表現です)
イントロ 例えば、こんな場面。 仕事が遅くなって子どもが帰ってくる時間に 間に合わなそう 既に家にいるのか分からない・・・ 子どもは携帯持っているけど何も連絡ない・・・ 何か連絡したい or 連絡してほしい
イントロ そんなとき、 GoogleHomeがひと言 「もうすぐ帰るよ」と喋ってくれたら 子どもも安心しますよね?
イントロ また子どもが GoogleHomeに向かって 「ただいま」と言うとLINEに通知が来たら 安心しますよね?
イントロ 他にもこんな場面。 在宅勤務でオンラインミーティング中 子どもが帰ってきた 「おかえり、おやつあるよ」と伝えたい GoogleHomeが喋ってくれたら・・・
イントロ というわけで、作ってみました
イントロ ちなみに作ったのは1年ほど前なので 技術的に古いかもしれません。 ご了承ください…
システムの概略 GoogleHome → LINE ①~④ GoogleHomeからIFTTT経由でGCFの関 数を呼び出してFireStoreへデータを保存 ①GoogleHome ②IFTTT ③GoogleCloudFunctions(GCF)
④FireStore ⑤Node-RED ⑥LINE ⑤~⑥ FireStoreにデータがあるか定期的に チェック、あればLINEへ通知
システムの概略 ⑦GoogleHome ②GCF ③FireStore ④Node-RED ①LINE LINE → GoogleHome ⑤Shiftr
⑥M5Stack ①~③ LINEからGCF経由でFireStoreへデー タを保存 ④~⑦ FireStoreを定期的にチェックしてデー タがあればMQTTでM5Stackへデータを送 信、そこからGoogleHomeへ音声データを渡 す
システムの概略 実際は赤枠の部分は共通にしています LINEから・GoogleHomeからのデー タをFireStoreで一括管理 Node-REDで振り分け
システムの詳細 GoogleHome →IFTTT→GoogleCloudFunctions IF : GoogleHome THEN : Webhook ※GCFのトリガーURLを指定
システムの詳細 [引用]Firebase Documentation(https://firebase.google.com/docs/functions/get-started?hl=ja) GoogleCloudFunctions→FireStore GCFからFireStoreにデータを追加する方法は公式サイトに詳しく載っています。
システムの詳細 GoogleCloudFunctions→FireStore 無事FireStoreにデータが追加されました。
システムの詳細 FireStore→Node-RED→LINE Node-RED側でFireStoreにデータが入っているかチェックします
システムの詳細 FireStore→Node-RED→LINE 送信はPython使っちゃっています。 20行程度なので・・・まあ (ノードがあるらしいです) GoogleHomeからのデータがあればLINEへ送信します。
システムの詳細 つぎにLINEからGoogleHomeの流れです
システムの詳細 LINE→FireStore MessageAPIを使って、特定のグループに書き込みがあるとGCFが呼び 出されるようにします
システムの詳細 Node-RED→M5Stack→GoogleHome Node-RED側でFireStoreにデータが入っているかチェックします
システムの詳細 Node-RED→M5Stack→GoogleHome LINEからのデータがあった場合、MQTTを使ってM5Stackに送信します あとはM5Stack側でいい感じに音声データを作ってGoogleHomeに渡します https://github.com/horihiro/esp8266-google-home-notifier ほりひろさんのライブラリを利用しています。ありがとうございます!
デモ LINE→GoogleHome
デモ GoogleHome→LINE
まとめ ・実は何度もリビルドしています。かなり愛着のあるシステムです。 ・家族も認識して使っています。これが嬉しいところ。 ・そのうちFireStoreにあるメッセージを表示するのもやってみたい。 以上となります。 ご清聴ありがとうございました。