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に住まうpixela botのご紹介/about-pixela-bot
Search
hideki kinjyo
PRO
October 26, 2018
Technology
0
580
社内Slackに住まうpixela botのご紹介/about-pixela-bot
pixe.la のSlackインテグレーションについて、社内LTでお話をしました
hideki kinjyo
PRO
October 26, 2018
Tweet
Share
More Decks by hideki kinjyo
See All by hideki kinjyo
もう少しテストを書きたいんじゃ〜 #phpstudy
o0h
PRO
18
4.1k
『テスト書いた方が開発が早いじゃん』を解き明かす #phpcon_nagoya
o0h
PRO
9
2.5k
色んなオートローダーを覗き見る #phpcon_okinawa
o0h
PRO
5
570
ヒューマンエラーの本を読んだ ~報告会~
o0h
PRO
3
290
みんなでワイワイ「テスト駆動開発」の話をやる会 #techramen24conf
o0h
PRO
4
570
SPLから始める「データ構造」入門
o0h
PRO
7
1.9k
PHPUnit11の新しい仲間たち
o0h
PRO
3
430
単体テストを書かない技術 #phpcon_odawara
o0h
PRO
62
21k
パンフ記事 「初めてのリファクタリング!」 の裏側 #phperkaigi
o0h
PRO
2
180
Other Decks in Technology
See All in Technology
脳波を用いた嗜好マッチングシステム
hokkey621
0
290
Two Blades, One Journey: Engineering While Managing
ohbarye
4
2.2k
Autonomous Database Serverless 技術詳細 / adb-s_technical_detail_jp
oracle4engineer
PRO
17
45k
アジャイルな開発チームでテスト戦略の話は誰がする? / Who Talks About Test Strategy?
ak1210
1
650
どちらかだけじゃもったいないかも? ECSとEKSを適材適所で併用するメリット、運用課題とそれらの対応について
tk3fftk
2
190
OCI Success Journey OCIの何が評価されてる?疑問に答える事例セミナー(2025年2月実施)
oracle4engineer
PRO
2
170
実は強い 非ViTな画像認識モデル
tattaka
3
1.3k
エンジニアリング価値を黒字化する バリューベース戦略を用いた 技術戦略策定の道のり
kzkmaeda
7
3k
入門 PEAK Threat Hunting @SECCON
odorusatoshi
0
170
役員・マネージャー・著者・エンジニアそれぞれの立場から見たAWS認定資格
nrinetcom
PRO
4
6.4k
Change Managerを活用して本番環境へのセキュアなGUIアクセスを統制する / Control Secure GUI Access to the Production Environment with Change Manager
yuj1osm
0
100
Cracking the Coding Interview 6th Edition
gdplabs
14
28k
Featured
See All Featured
Fontdeck: Realign not Redesign
paulrobertlloyd
83
5.4k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Optimising Largest Contentful Paint
csswizardry
34
3.1k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Navigating Team Friction
lara
183
15k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
Producing Creativity
orderedlist
PRO
344
40k
Bootstrapping a Software Product
garrettdimon
PRO
306
110k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
How to train your dragon (web standard)
notwaldorf
91
5.9k
Facilitating Awesome Meetings
lara
52
6.2k
Transcript
ຖָͯ͘͠ ੜ͑ΔΘwwwwww ͖Μ͡ΐ͏ͻͰ͖
ࣗݾհ • ίωώτגࣜձࣾ • αʔόʔαΠυΤϯδχΞ • ओʹCakePHPͳͲ
ݪͷΛ͠·͢
ϛʔϜ:ʮ͕ੜ͑Δʯ
None
None
None
͓͠ͳ͕͖ ʮ͕ੜ͑ΔwwʯʮΛੜ͢ʯͷ • Pixela? • SlackΠϯςάϨʔγϣϯΛ࡞Γ·ͨ͠ • ͍͍ɺ͍͍ਓੜɺॆ࣮ͨࣗ͠ݾ
None
None
ʁ • githubͷΞϨ • ʮ׆ಈͨ͠˞ʯ͕ʹͳΔ • ͕ੜ͑Δͱؾ͕ྑ͍ʙʙʂ
ઌʑिͷެ։ ޙ͔Β େมόζͬͯ ·ͨ͠☺
͍Ζ͍Ζͳ͍ํʂ
ʹͪΑ͏ͼʂ
Pixelaެ։ͷ24hޙ (ͨ·ͨ·༗څͱͬͯͨ)
PixelaͷAPI
αʔϏεͲ͏ͳͬͯΔͷ • User,Graph,Pixelͱ͍͏֓೦ • User: ར༻ऀࣗ • Graph: 1ຕͷάϥϑશମ •
Pixel: άϥϑதͷϚε1ͭ • (ΊͬͪΌsimpleɾɾ)
αʔϏεͲ͏ͳͬͯΔͷ • User has many Graphs • Pixel belongs to
Graph
αʔϏεͲ͏ͳͬͯΔͷ • جຊతʹɺ ֤Ϧιʔεʹର͢ΔGET/POST/PUT/DELETEϝιο υͰૢ࡞͢ΕOK • POST:user࣌(=Ϣʔβʔొ)ʹɺ ࣗͷtoken(ҙจࣈྻ)Λࢦఆ • ֤छͷૢ࡞࣌ʹɺ
`X-USER-TOKEN`ϔομʔΛࢦఆ
αʔϏεͲ͏ͳͬͯΔͷ • ศརػೳ • ʮࠓͷੜ͢/আڈʯΤϯυϙΠϯτ /v1/users/<username>/graphs/<graphID>/increment • Webhook -> user-tokenΛলུͯ͠inc/decrement͢Δ
Pixela bot
Pixela bot? • ʔ͠ΌSlack্͔Βɺ botʹ͔͚͠Δ͚ͩͰPixelaΛ͑·͢ • Ϣʔβʔొɺάϥϑ࡞ɺ++ • ͭ·ΓΛੜ͢تͼΛ͋ͳͨʹɾɾʂ
ͳΜͰSlackͰʁᶃ खܰʹ͍͍ͨɾɾɾɾ • ීஈͷಈ࡞ͷதʹΈࠐΊΔ͔ʁ • PixelaͷػೳɾAPIతʹγϯϓϧͳͷͰɺ Slack(bot)ʹे͍͍͢Ϩϕϧͷ ΠϯλʔϑΣΠεͰૢ࡞࣮ݱՄೳͩͬͨ
ͳΜͰSlackͰʁᶄ • खܰʹ͍͍ͨɾɾɾɾ • ͋͑ͯʮਓ͔Βݟ͑ΔॴʯͰ Λੜ͢ߦҝʂʂ • ʮࢲίϨΛؤுΔʂʯͱ͍͏ॴ৴ද໌ͱͯ͠ͷcrete graph, ʮͲ͏ͩʂԶͬͨͧʂʂʯͱ͍͏ݦࣔͱͯ͠ͷ
pixel/increment
ࢲͷྫ ͜ΕΒͷݪ͕ੜ͍ໜͬͨΒɺࠓΑΓྑ͍ਓੜʹͳΔͧɾɾɾ
demo
https://twitter.com/o0h_/ status/ 1051844920762228741 ※ಈըͳͷͰύʔϚϦϯΫ Λɾɾ
·ͱΊ • श׳ԽϜζ͍ɻͨͩɺޮՌઈେ • John ResigʮWrite Code Every Dayʯ •
“ਐḿ͕͋Δͱ͍͏ײ֮ɺ࣮ࡍͷਐḿͱಉ͘͡Β͍ॏཁ ͩ” • (·ͨ໌)ਐḿ͕͋ΔͩΖ͏ɺͱࢥ͑ΕࣗࣗΛ৴ ͡ΒΕΔɻෆ҆ʹଧͪউͯΔɻ • ࢲͷʮश׳ԽʯͷޮՌͷ࣮ײ: ຖӡಈΛͨ͠Βମॏ͕ݮͬ ͨ • PixelaΛͬͯɺ ΈΜͳͰήʔϜײ֮Ͱʮྑ͍श׳ʯΛ࡞Γ·͠ΐʂʂ
ࢀߟURL • Pixela | Pixelation API Service https://pixe.la/ • commitҎ֎ͷͰΛੜͤΔɺPixelaͱ͍͏API
αʔϏεΛ࡞ͬͨʂ - ͍͑ͷ͏ʹ͖ͬ https://blog.a- know.me/entry/2018/10/14/212338 • Pixela ΛSlackʹͭͳ͍Ͱ༡ΜͰΈͨ - େ͖ʂʹͪΑ͏ ͼ http://daisuki.nichiyoubi.land/entry/2018/10/16/ 134123
͓͖߹͍͍͖ͨͩ ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ