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
My Smart? Home Architecture with Golang
Search
y_matsuwitter
June 22, 2015
Programming
6
3.5k
My Smart? Home Architecture with Golang
「我が家のアーキテクチャ with Gokang」
GoCon2015 summerにて
y_matsuwitter
June 22, 2015
Tweet
Share
More Decks by y_matsuwitter
See All by y_matsuwitter
Building Products in the LLM Era
ymatsuwitter
10
4.4k
Product Utilization of Large Language Models Starting Today
ymatsuwitter
3
2.5k
経営・意思・エンジニアリング
ymatsuwitter
23
19k
LLM in 2023 and 2024
ymatsuwitter
8
5.5k
Turbulent Technological Changes and Career Strategies
ymatsuwitter
2
2.6k
LLM in toB Service and Its UX
ymatsuwitter
7
10k
Agent and small LLM validation
ymatsuwitter
7
2.9k
Information management for a culture of speed: The story of Notion and LayerX
ymatsuwitter
4
9.8k
Monorepo on AWS
ymatsuwitter
0
290
Other Decks in Programming
See All in Programming
2,500万ユーザーを支えるSREチームの6年間のスクラムのカイゼン
honmarkhunt
6
5.1k
自分ひとりから始められる生産性向上の取り組み #でぃーぷらすオオサカ
irof
8
2.6k
第3回関東Kaggler会_AtCoderはKaggleの役に立つ
chettub
3
890
さいきょうのレイヤードアーキテクチャについて考えてみた
yahiru
3
730
AIの力でお手軽Chrome拡張機能作り
taiseiue
0
170
ARA Ansible for the teams
kksat
0
150
社内フレームワークとその依存性解決 / in-house framework and its dependency management
vvakame
1
550
Conform を推す - Advocating for Conform
mizoguchicoji
3
680
chibiccをCILに移植した結果 (NGK2025S版)
kekyo
PRO
0
210
動作確認やテストで漏れがちな観点3選
starfish719
6
1k
SwiftUIで単方向アーキテクチャを導入して得られた成果
takuyaosawa
0
260
Domain-Driven Transformation
hschwentner
2
1.9k
Featured
See All Featured
Git: the NoSQL Database
bkeepers
PRO
427
64k
The Language of Interfaces
destraynor
156
24k
Done Done
chrislema
182
16k
What's in a price? How to price your products and services
michaelherold
244
12k
Fashionably flexible responsive web design (full day workshop)
malarkey
406
66k
Build The Right Thing And Hit Your Dates
maggiecrowley
34
2.5k
Become a Pro
speakerdeck
PRO
26
5.1k
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.4k
BBQ
matthewcrist
86
9.5k
A Tale of Four Properties
chriscoyier
158
23k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
366
25k
Navigating Team Friction
lara
183
15k
Transcript
զ͕ՈͷΞʔΩςΫνϟ w/ Golang Architecture of my smart? home with Golang
About me • Gunosy inc., Corporate Officer • iOS, Android,
Infrastructure, Web, etc... • Uses Golang in production since 2014/02 • ਖ਼࠲
Lunch Hack @Gunosy • ͓னʹࣾһͰू·ͬͯࣗ༝ʹ։ൃਐΊΔΠϕϯτ • ࠓճͷ͓͜͜Ͱ։ൃͨ͠ͷͰ͢
͍ͭͰGolangΤϯδχΞืूத We are always hiring Golang engineers.
About today's talk • झຯ։ൃͰࣗΛͦΕͬΆ͍εϚʔτԽͨ͠ • The story about my
(maybe not) intelligent home
Overview
Overview • MQTT broker centered architecture • RaspberryPi with temperature
and humidity sensor • Slack with bots • IRKit (as air conditioner controller) • Influxdb (for data store) • Mackerel (for server monitoring)
with Golang!!
MQTT with Go MQTT is a machine-to-machine (M2M)/"Internet of Things"
connectivity protocol. It was designed as an extremely lightweight publish/subscribe messaging transport.
MQTT with Go • MQTT Broker centered, event driven data
flow. • One to many Pub/Sub message queueing. • 2 kind of topics. (/command, /sensor)
RaspberryPi with Go • Collect sensor data (SHT21) • Send
sensor values to MQTT broker • Monitored by mackerel-agent with kidoman/embd
Slack Bot with Go • Using Slack's slash command and
incoming webhook integrations. • A Slash command process sends command event to MQTT Broker. • Bot Processes receive events and send some information to Slack.
IRKit with Go • Wifi connected remote controller • HTTP
API • MQTT broker => command event => Go => Power on/off More about IRKit => Link
Demo
Point • Send events and sensor values to MQTT anyway.
Golang empowers your home hack. Runs almost anywhere you want.