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
3.6k
6
Share
My Smart? Home Architecture with Golang
「我が家のアーキテクチャ with Gokang」
GoCon2015 summerにて
y_matsuwitter
June 22, 2015
More Decks by y_matsuwitter
See All by y_matsuwitter
Building Products in the LLM Era
ymatsuwitter
11
13k
Product Utilization of Large Language Models Starting Today
ymatsuwitter
3
3.4k
経営・意思・エンジニアリング
ymatsuwitter
23
22k
LLM in 2023 and 2024
ymatsuwitter
8
6.2k
Turbulent Technological Changes and Career Strategies
ymatsuwitter
2
3.2k
LLM in toB Service and Its UX
ymatsuwitter
7
12k
Agent and small LLM validation
ymatsuwitter
7
3.1k
Information management for a culture of speed: The story of Notion and LayerX
ymatsuwitter
4
11k
Monorepo on AWS
ymatsuwitter
0
370
Other Decks in Programming
See All in Programming
デフォルト運用のCodeRabbit、1年で何が変わったか / How CodeRabbit Changed Our Code Review in 1 Year
bake0937
1
100
なぜあなたのコードには「コシ」がないのか?〜AI時代に問う、最後まで美味しい設計と戦略〜 #phpconkagawa / phpconkagawa2026
shogogg
0
220
ECR拡張スキャンでSBOMを収集して サプライチェーン攻撃の影響調査を 爆速で終わらせてみた
akihisaikeda
2
190
AI駆動開発勉強会 広島支部 第一回勉強会 AI駆動開発概要とワークショップ
hayatoshimiu
0
360
Hive Metastoreを通して学ぶIceberg REST Catalog ― 仕様から実装まで
okumin
0
280
ふつうのFeature Flag実践入門
irof
0
110
These Five Tricks Can Make Your Apps Greener, Cheaper, & Nicer
hollycummins
0
180
Migrations : C'est une question d'hygiène !
vinceamstoutz
0
1.8k
次世代リンターで探る、tsgo 時代における型認識カスタムルールの現実解
ytakahashii
1
960
不変条件と整合性境界—ビジネスが決める設計判断と実現パターン / Invariants and Consistency Boundaries
nrslib
3
430
Agentic AI in the Frontend: Architectures with Open Standards @iJS London 2026
manfredsteyer
PRO
0
100
Skillは並べた。動かなかった。契約で繋いだ。— 65個のSkillから、自走する開発サイクルへ
junholee
0
720
Featured
See All Featured
Java REST API Framework Comparison - PWX 2021
mraible
34
9.3k
Paper Plane
katiecoart
PRO
1
50k
Skip the Path - Find Your Career Trail
mkilby
1
130
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.4k
Speed Design
sergeychernyshev
33
1.7k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
3.1k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.5k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.7k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
230
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.9k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
920
Rebuilding a faster, lazier Slack
samanthasiow
85
9.5k
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.