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
分報のTLをSlackBoltFrameworkでさくっと作ってみた
Search
75asa
February 13, 2020
Programming
1
1.7k
分報のTLをSlackBoltFrameworkでさくっと作ってみた
75asa
February 13, 2020
Tweet
Share
More Decks by 75asa
See All by 75asa
Slack tips 大全
75asa
0
170
QOLぶち上げ?VSCodeのtips大全
75asa
0
170
Other Decks in Programming
See All in Programming
AI Ramen Fight
yusukebe
0
120
大規模FlutterプロジェクトのCI実行時間を約8割削減した話
teamlab
PRO
0
370
DataformでPythonする / dataform-de-python
snhryt
0
120
変化を楽しむエンジニアリング ~ いままでとこれから ~
murajun1978
0
620
kiroでゲームを作ってみた
iriikeita
0
100
CLI ツールを Go ライブラリ として再実装する理由 / Why reimplement a CLI tool as a Go library
ktr_0731
3
860
オホーツクでコミュニティを立ち上げた理由―地方出身プログラマの挑戦 / TechRAMEN 2025 Conference
lemonade_37
1
390
React 使いじゃなくても知っておきたい教養としての React
oukayuka
18
4.9k
Git Sync を超える!OSS で実現する CDK Pull 型デプロイ / Deploying CDK with PipeCD in Pull-style
tkikuc
4
490
Comparing decimals in Swift Testing
417_72ki
0
140
知って得する@cloudflare_vite-pluginのあれこれ
chimame
1
130
リッチエディターを安全に開発・運用するために
unachang113
1
320
Featured
See All Featured
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.6k
We Have a Design System, Now What?
morganepeng
53
7.7k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Side Projects
sachag
455
43k
RailsConf 2023
tenderlove
30
1.2k
Designing for humans not robots
tammielis
253
25k
Bash Introduction
62gerente
613
210k
The Language of Interfaces
destraynor
158
25k
GitHub's CSS Performance
jonrohan
1031
460k
Optimizing for Happiness
mojombo
379
70k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Transcript
Nago Asato ใͷ5- CPMUͰͭͬͯ͘ΈͨΜ͝
me גࣜձࣾλϯόϦϯ Ϋϥυɾσϕϩούʔ SalesforceͷόοΫΤϯυ։ൃʢAPEXʣ LaravelNodeɺTypeScriptͰ৭ʑͬͨΓ ΩʔϘʔυྻUSʢHHKBʣ ͦͯ͠ΏΔ;ΘVimmer
ใ ͬͯ·͔͢ʁ
ใͱ suin͞Μ, Μ͘͠͞Μ ᐌ͘ ใ a.k.a.ʮtimes_*, r_*,ʯ ͱɺࣾνϟοτͰࣗͷνϟ ϯωϧΛ࣋ͪɺ͍εύϯͰൃݴ ͢ΔࣾTwitterͷΑ͏ͳจԽܗଶ
ϝϦοτ ɾ৺ཧతͳؾܰ͞ ɾٕज़తͳϨϕϧ͕ࠩߟྀ͞Ε͍͢ ɾҰճͷใʹൺֱ͢Ε୯ҐͰࠁΊΔϦΞϧλΠϜੑ ɾ҉ΛಘΔ͖͔͚ͬʹͳΓ͍͢ ɾίϛϡχέʔγϣϯɾΤϯήʔδϝϯτ
σϝϦοτ ɾҪށձٞ ɾਓʹରͯ͠εέʔϧ͠ͳ͍ ɾঝೝཉٻΛܹ͢Δ
ͱ͍͏͜ͱ
TL࡞Εղܾ͢ΔͷͰ
ͱ͍͏Θ͚Ͱ࡞ͬͯΈͨ
։ൃڥ • Node JS 11x • Slack Bolt Framework •
PaaSHeroku
Bolt ⚡ͱ • Bolt Slack API Λ͍͘͢͢ΔͨΊͷ Node.js ϑ
ϨʔϜϫʔΫͰ͢ɻ Ұ͔Β API ΛͬͯΞϓϦΛ։ൃͯ͠ ͍͘͜ͱͱൺΔͱɺ͜ͷϑϨʔϜϫʔΫΛ͏ͱͬͱ αΫͬͱ࡞͍ͬͯ͘͜ͱ͕Ͱ͖Δͱࢥ͍·͢ɻ @girlie_mac ͞ΜͷQiitaهࣄΑΓҾ༻
slackAppͭ͘Δ
TMBDLBQJαΠτ ΞϓϦ࡞Δ࣌ IUUQTBQJTMBDLDPNBQQT #PMUͷνϡʔτϦΞϧ IUUQTTMBDLEFWCPMUKBKQUVUPSJBMHFUUJOH TUBSUFE
ϩʔΧϧ։ൃ
• yarn͔npmͰ @slack/bolt ೖΕΔ • ϩʔΧϧ։ൃ ngrokΛ͏ • slackAppͷϦΫΤετURLʹngrokͷͭΛ࿈ܞ
࣮ࡍͷίʔυ
channelsͷܕ
infoͷܕ
͕͍͍͜͜Α bolt͞Μ • Slack api ͕RequestURLPayload͝ʹΐ͝ʹΐ͠ͳͯ͘ ؆୯ʹ͑Δʂ • api ͷܕใ͕ḷΕΘ͔ΔʢৄࡉυΩϡϝϯτͰʣ
• ϩʔΧϧ։ൃ͕݁ߏ͔ͲΔ
attachment ? block ? • Slack apiͷattachmentʹΘΔͭ • attachmentͷෳࡶͳ༷Λγϯϓϧʹͨ͠ͷ •
attachmentΑΓRichͳΠϯλʔϑΣʔεΛ࣮Ͱ͖Δ • Block kit builder (GUI) ͰI/FΛ֬ೝ͠ͳ͕ΒJSON֬ೝ
Block kit Builder
ؾʹͳΔͱ͜ • Slack ެࣜAPIͱผʹbolt clientͰAPI͏ࡍʹdocཉ͍͠ • Block kit ͰͰ͖Δ͜ͱͱattachmentͰͰ͖Δ͜ͱ͕͔Γ ͮΒ͍
Ͱ͖ͨͷ
·ͱΊ ɾ#PMUָ͍͠ ɾ#MPDL,JU͍͍Ͷ ɾϩʔΧϧ։ൃָ͕ ɾίʔϙϨʔτΤϯδχΞϦϯάָ͍͠ ɾ5-ͷݟա͗ېɺϑϧεϥοΫΤϯδχΞͳͬͯ·͏
Links UJNFMJOFSฐࣾͰೖΕͯΔ4MBDL"QQ IUUQTHJUIVCDPNOBTBUUJNFMJOFS TMBDLCPMUGSBNFXPSL IUUQTHJUIVCDPNTMBDLBQJCPMU TMBDLCMPDLLJUνϡʔτϦΞϧ IUUQTBQJTMBDLDPNMBOHKBKQTMBTICMPDLLJU TVJO͞Μͷใͱ IUUQDFDPN Μ͘͠͞Μͷใͷޮೳ·ͱΊ
IUUQTOPUFDPNWBBBBBORVJTIOODDDGF
͋Γ͕ͱ͏͍͟͝·ͨ͠