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
0
170
SlackにZoomの使用状況を表示したい
SlackのstatusにZoomの接続状況を逐次、自動反映させる仕組みを作った話
Yukimitsu Izawa
August 15, 2020
Tweet
Share
More Decks by Yukimitsu Izawa
See All by Yukimitsu Izawa
軽くて強い素材を求めて(DCFのススメ)
izawa
1
74
指紋認証でsshログイン
izawa
0
250
展示会に出展してみた
izawa
0
140
エアコンの操作についての話
izawa
0
600
Kindleページめくり君 Ver.2
izawa
0
190
災害グッズとして見たときのキャンプ用品
izawa
0
270
アレクサがカメラ女子になった日
izawa
0
270
2019年上半期のキャンプお買い物ベスト8
izawa
0
290
LT配信システムを作ったはなし
izawa
0
280
Other Decks in Programming
See All in Programming
Make Impossible States Impossibleを 意識してReactのPropsを設計しよう
ikumatadokoro
0
150
Jakarta EE meets AI
ivargrimstad
0
350
AWS Lambdaから始まった Serverlessの「熱」とキャリアパス / It started with AWS Lambda Serverless “fever” and career path
seike460
PRO
1
210
Ethereum_.pdf
nekomatu
0
430
見せてあげますよ、「本物のLaravel批判」ってやつを。
77web
7
7.4k
Why Jakarta EE Matters to Spring - and Vice Versa
ivargrimstad
0
810
どうして僕の作ったクラスが手続き型と言われなきゃいけないんですか
akikogoto
1
100
リアーキテクチャxDDD 1年間の取り組みと進化
hsawaji
1
200
Enabling DevOps and Team Topologies Through Architecture: Architecting for Fast Flow
cer
PRO
0
210
アジャイルを支えるテストアーキテクチャ設計/Test Architecting for Agile
goyoki
9
3.2k
型付き API リクエストを実現するいくつかの手法とその選択 / Typed API Request
euxn23
5
1.6k
Duckdb-Wasmでローカルダッシュボードを作ってみた
nkforwork
0
110
Featured
See All Featured
How to Think Like a Performance Engineer
csswizardry
20
1.1k
Docker and Python
trallard
40
3.1k
The Pragmatic Product Professional
lauravandoore
31
6.3k
A Philosophy of Restraint
colly
203
16k
Code Reviewing Like a Champion
maltzj
520
39k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Faster Mobile Websites
deanohume
305
30k
The Language of Interfaces
destraynor
154
24k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
31
2.7k
Imperfection Machines: The Place of Print at Facebook
scottboms
264
13k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
364
24k
Ruby is Unlike a Banana
tanoku
96
11k
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