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
SlackにZoomの使用状況を表示したい
Search
Yukimitsu Izawa
August 15, 2020
Programming
280
0
Share
SlackにZoomの使用状況を表示したい
SlackのstatusにZoomの接続状況を逐次、自動反映させる仕組みを作った話
Yukimitsu Izawa
August 15, 2020
More Decks by Yukimitsu Izawa
See All by Yukimitsu Izawa
マイコン内蔵フルカラーLEDを ピカピカ光らせるぞ!
izawa
0
16
3Dプリンター未経験者が初めてプリントできた道のり
izawa
0
42
Rubyで守る我が家の安心: IoTセンサ ーネットワーク『ゆきそっく』の実践
izawa
0
250
KVM-Mをつくったはなし
izawa
1
140
RubyでXDPプログラミング
izawa
0
78
軽くて強い素材を求めて(DCFのススメ)
izawa
2
190
指紋認証でsshログイン
izawa
0
470
展示会に出展してみた
izawa
0
250
エアコンの操作についての話
izawa
0
920
Other Decks in Programming
See All in Programming
リセットCSSを1行消したらアクセシビリティが向上した話
pvcresin
4
510
t *testing.T は どこからやってくるの?
otakakot
1
930
Symfony AI in Action - SymfonyLive Berlin 2026
chr_hertel
1
140
PicoRuby for IoT: Connecting to the Cloud with MQTT
yuuu
2
770
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
400
Firefoxにコントリビューションして得られた学び
ken7253
2
160
過去のレビュー知見をSkillsで資産化した話
pkshadeck
PRO
1
1.9k
Are We Really Coding 10× Faster with AI?
kohzas
0
170
HTML-Aware ERB: The Path to Reactive Rendering @ RubyKaigi 2026, Hakodate, Japan
marcoroth
0
700
AIと共に生きる技術選定 2026
sgash708
0
140
Skillは並べた。動かなかった。契約で繋いだ。— 65個のSkillから、自走する開発サイクルへ
junholee
0
320
ソフトウェア設計の結合バランス #phperkaigi
kajitack
0
510
Featured
See All Featured
Exploring anti-patterns in Rails
aemeredith
3
350
Between Models and Reality
mayunak
4
290
The Invisible Side of Design
smashingmag
302
52k
Navigating Weather and Climate Data
rabernat
0
190
Java REST API Framework Comparison - PWX 2021
mraible
34
9.3k
Context Engineering - Making Every Token Count
addyosmani
9
880
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
Prompt Engineering for Job Search
mfonobong
0
300
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
130
How to Ace a Technical Interview
jacobian
281
24k
Designing Experiences People Love
moore
143
24k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
180
Transcript
SLACKʹZOOMͷ༻ঢ়گ Λද͍ࣔͨ͠ ҪᖒΏ͖Έͭ 20208݄15 Kanazawa.rb meetup #96
ࣗݾհ ➤ YouTuber ➤ My Outdoor Life (https://kanazawa.camp/) ➤ ത࢜(ใՊֶ)
➤ ΠϯλʔωοτΛͬͨૄ݁߹ࢄγεςϜͷݚڀΛ͍ͯ͠·͢ ➤ גࣜձࣾΫϧΟοτ औక ݉ ࢧࣾ COO ➤ Code for Kanazawa ཧࣄ ➤ ిࢠ࡞ͱφΠϑΛࣗ࡞͢Δͷ͕झຯͰ͢
WHFͷࡢࠓ…… ➤ ZoomͰςϨΧϯதʹɺSlackͰ͔͚͠ΒΕΔͱԠͰ͖ͳ͍͜ͱ͕͋Δ ➤ Slackʹɺstatus ͱ͍͏ػೳΛͬͯʮ͍·ԿΛ͍ͯ͠ΔʯΛදݱͰ͖Δ ➤ ͱ͍͏͜ͱɺZoomதʹ statusΛʮZoomར༻தʯͬͯදࣔͰ͖Εɺ͓͍ͨ͠ ͚ͩͳ͍Ͱ͠ΐ͏͔ʁ!
➤ खಈͩͱ໘ͩ͠ɺ͠ΕͨΓͦ͠͏ͳͷͰɺࣗಈతʹͬͯཉ͍͠
ػೳཁૉ ➤ Zoom ͰςϨΧϯத͔Ͳ͏͔ͷఆํ๏ ➤ Zoom ͷAPIͰऔΕͦ͏(?) ➤ ߴසʹఆظతʹAPIΛୟ͘ͷͪΐͬͱ͏Δ͍͞ ➤
Zoom Client͕roomʹଓதͷͱ͖͚ͩىಈ͢Δprocess͕͋ΔͷͰɺͦͷଘࡏΛ νΣοΫ͢Δ͜ͱʹ͢Δ ➤ Slack ͷstatus ͷมߋํ๏ ➤ Web API Λͬͯɺget ͱ set Λ͢Δ
ΞʔΩςΫνϟ macOSϚγϯ Python Script process table APIαʔό
ΞʔΩςΫνϟ macOSϚγϯ Python Script process table "CptHost"্͕͕͍ͬͯΔ͔Λperiodicʹlookup͢Δ APIαʔό
ΞʔΩςΫνϟ macOSϚγϯ Python Script process table APIαʔό user.status.get ͰݱࡏͷstatusΛऔಘͯ͠هԱ
ΞʔΩςΫνϟ macOSϚγϯ Python Script process table APIαʔό user.status.set Ͱ status_emoji
Λ :zoom: ΞΠίϯʹͯ͠ status_text ΛʮIn a meeting via Zoomʯʹઃఆ͢Δ
ΞʔΩςΫνϟ macOSϚγϯ Python Script process table APIαʔό ֤ΫϥΠΞϯτʹมߋ͕௨͞ΕΔ
PYTHON SCRIPTΛίϚϯυԽ ➤ ىಈ༻ shell script Λॻ͘
SCRIPTࣗಈىಈ͍ͨ͠ ➤ Automator ͰAppԽ ➤ ϩάΠϯ߲ʹొ ➤ શࣗಈͰZoomͷঢ়ଶΛSlackͷstatusʹөͤ͞Δ͜ͱ͕Ͱ͖ΔΑ͏ʹͳΔ
DEMO ➤ ιʔείʔυҎԼʹஔ͍ͯ͋Γ·͢ɻ ➤ https://github.com/izawa/slack_zoom_status