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
さわやか待ち時間LINE botを作った話 / Sawayaka LINE bot
Search
muttan
January 25, 2020
Programming
0
110
さわやか待ち時間LINE botを作った話 / Sawayaka LINE bot
#ふくもく会
#SawayakaMeetup
muttan
January 25, 2020
Tweet
Share
More Decks by muttan
See All by muttan
コンテナ開発入門 1回目/Introduction to Container Development 1
bath_poo_
0
160
ISUCONってなんだ / What is ISUCON
bath_poo_
0
350
Web技術の基本 8回目 / Introduction to Web technologies 8th class
bath_poo_
0
190
Web技術の基本 7回目 / Introduction to Web technologies 7th class
bath_poo_
0
160
Web技術の基本 6回目 / Introduction to Web technologies 6th class
bath_poo_
1
260
Web技術の基本 5回目 / Introduction to Web technologies 5th class
bath_poo_
0
140
Web技術の基本 4回目 / Introduction to Web technologies 4th class
bath_poo_
0
220
Web技術の基本 3回目 / Introduction to Web technologies 3rd class
bath_poo_
0
250
Web技術の基本 2回目 / Introduction to Web technologies 2nd class
bath_poo_
0
260
Other Decks in Programming
See All in Programming
Node-RED を(HTTP で)つなげる MCP サーバーを作ってみた
highu
0
120
Deep Dive into ~/.claude/projects
hiragram
12
2.3k
NPOでのDevinの活用
codeforeveryone
0
720
LT 2025-06-30: プロダクトエンジニアの役割
yamamotok
0
680
ふつうの技術スタックでアート作品を作ってみる
akira888
0
360
git worktree × Claude Code × MCP ~生成AI時代の並列開発フロー~
hisuzuya
1
520
データの民主化を支える、透明性のあるデータ利活用への挑戦 2025-06-25 Database Engineering Meetup#7
y_ken
0
340
0626 Findy Product Manager LT Night_高田スライド_speaker deck用
mana_takada
0
140
Flutterで備える!Accessibility Nutrition Labels完全ガイド
yuukiw00w
0
140
5つのアンチパターンから学ぶLT設計
narihara
1
150
Modern Angular with Signals and Signal Store:New Rules for Your Architecture @enterJS Advanced Angular Day 2025
manfredsteyer
PRO
0
180
AI時代のソフトウェア開発を考える(2025/07版) / Agentic Software Engineering Findy 2025-07 Edition
twada
PRO
42
9.9k
Featured
See All Featured
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
138
34k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.3k
Into the Great Unknown - MozCon
thekraken
39
1.9k
How STYLIGHT went responsive
nonsquared
100
5.6k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
5.9k
A designer walks into a library…
pauljervisheath
207
24k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
130
19k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.5k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
The World Runs on Bad Software
bkeepers
PRO
69
11k
Designing for humans not robots
tammielis
253
25k
Transcript
LINE botΛ࡞ͬͨΜ͢Α ;͘͘ձ ͦͷ60 ʙ৽ձʹंΛग़͢ͳʙ Kamiya Keisuke(@bath_poo_)
͓લ୭Αʁ • ҪେֶֶݚڀՊ M2 • ΦλΫ • aikoͱҏ౻ඒདྷͷ͔Γͯ͠Δ • TwitterͷΞΧϯτ໊͕සൟʹ
มΘΔ͜ͱͰ༗໊ • Ͱେମʮ͘·͞Μʯͬͯݺ Εͯ·͢ Kamiya Keisuke a.k.a kuma @bath_poo_
͍͖ͳΓͰ͕͢
͜ΕͳΜͷਤͰ͠ΐ͏
ͳΜͷਤʁ
ͳΜͷਤʁ
None
ͳΜͷਤʁ
• ٠ʹຊళ͕͋Δ • ੩Ԭݝ෦ʹଟ͍ • ࠷౦͕ޚ఼ • ࠷͕ބ
͋ʂʂʂʂʂʂʂʂʂʂʂʂ
None
͞Θ͔͡ΌΜ • ম͖Ϩετϥϯ͞Θ͔ • ͛Μͭ͜ϋϯόʔά͕༗໊ • ϗʔϜϖʔδͷURL͕sawayakaͰͳͯ͘genkotsu-hb ‣ https://www.genkotsu-hb.com •
#SawayakaMeetup ڇ100% 250g 1,100ԁ(੫ࠐΈ)→
͞Θ͔ͷͪ࣌ؒ • ͛Μͭ͜ϋϯόʔά༗໊ʹͳΓ͗ͨ͢ • ͋ΔళฮGW6hͪʹͳͬͨͱ͔ͳΜͱ͔ • ʢҰ෦ళฮΛআ͍ͯʣฏͰ͋Ε͋·Γؾʹͤͣʹߦͬ ͯͬ͢ͱ৯ΒΕΔ • ൺֱతࠞΜͰ͍Δ͜ͱ͕ଟ͍
• ൟظʢGWɼ࢝ɼۙลͰͷϥΠϒΠϕϯτʣ ࣌ؒͪ( )ʹͳΔ͜ͱβϥ → ͳΔ͘ళฮͰͷͪ࣌ؒΛݮΒ͍ͨ͠ → ͔͠͠ళฮʹߦͬͯͪ࣌ؒΛ֬ೝ͢Δͷ໘ N N ≥ 1
࠷ۙศརػೳ͕Ͱ͖ͨ
AirWAIT
AirWAITͷಋೖ • ʢళฮʣiPad͚ͩͰडγεςϜΛߏஙՄೳ • ʢϢʔβʔʣ͓ళͰडΛͨ͠ޙWebϖʔδ͔Β ͪ࣌ؒΛ֬ೝ͢Δ͜ͱ͕Մೳ
AirWAITͷಋೖ • ʢళฮʣiPad͚ͩͰडγεςϜΛߏஙՄೳ • ʢϢʔβʔʣ͓ళͰडΛͨ͠ޙWebϖʔδ͔Β ͪ࣌ؒΛ֬ೝ͢Δ͜ͱ͕Մೳ
AirWAITͷಋೖ • ʢళฮʣiPad͚ͩͰडγεςϜΛߏஙՄೳ • ʢϢʔβʔʣ͓ళͰडΛͨ͠ޙWebϖʔδ͔Β ͪ࣌ؒΛ֬ೝ͢Δ͜ͱ͕Մೳ → Θ͟Θ͟ళฮʹߦ͔ͳͯ͘ྑ͘ͳͬͨ
͋Δͷग़དྷࣄ ͞Θ͔ͷͪ࣌ؒ ΦϯϥΠϯͰݟΕΔΑ͏ʹͳͬͨΑ ϚδʁͲ͏ͬͯΈΔͷʁ ͜ͷWebϖʔδΛ։͍ͯ… ΊΜͲ͆͘͞
ͦ͏͔… • ͦͷͨΊ͚ͩʹSafari։͘ͷ໘ • ͡Ό͋ͳΔ͘༻ස͕ଟ͍ͷͰͳΜͱ͔Ͱ͖ͳ ͍͔… → LINEͳΒൺֱత͏Μ͡Όͳ͍ʁ
͞Θ͔ͷͪ࣌ؒ LINE botΛ࡞ͬͨΜ͢Α ;͘͘ձ ͦͷ60 ʙ৽ձʹंΛग़͢ͳʙ Keisuke Kamiya(@bath_poo_)
༻ٕज़
ΞʔΩςΫνϟ ᶃbotʹ͔ͬͯ ݕࡧΫΤϦΛ͛Δ ᶄAlgoliaͰݕࡧ ᶅݕࡧ݁ՌΛฦ͢ ᶅݕࡧ݁ՌΛฦ͢ εΫϨΠϐϯά݁ՌΛ ֨ೲ
ΞʔΩςΫνϟ • Messaging APIͷWebhook༻ͷαʔόHerokuͰϗεςΟ ϯά → Go + Go modules
• ΫϩʔϥʔHerokuͰϗεςΟϯά(3ʹ1ճऔಘ) → Python + pipenv • ݕࡧΛͲ͏͢Δ͔໎͕ͬͨɼͯ͢ͷࢥߟΛ์غͯ͠ Algoliaʹͯ͛ͨ͢ → ϥΠϒϥϦυΩϡϝϯτॆ࣮͍ͯͯ͠։ൃ͕εϜʔζ ʹਐΜͩ https://speakerdeck.com/shinodogg/introducing-algolia-with-demo
ͱ͜ΖͰAlgoliaͷ༻ྉۚ… PQFSBUJPONPOUI SFDPSENPOUI
ͱ͜ΖͰAlgoliaͷ༻ྉۚ… • Operationͷఆٛ • ΦϒδΣΫτͷՃߋ৽̍ΦϖϨʔγϣϯ • ݄50000ΦϖϨʔγϣϯ͙ͬͯ͢αʔϏε͕ऴΘΓͦ͏ → ͦΕͦ͏ https://www.algolia.com/doc/faq/basics/what-is-an-operation/
ͱ͜ΖͰAlgoliaͷ༻ྉۚ…
ͱ͜ΖͰAlgoliaͷ༻ྉۚ… Μʁ
ͱ͜ΖͰAlgoliaͷ༻ྉۚ… Μʁ
None
GitHub EducationΛ͏ • ֶੜͷಛݖGitHub Education • ͨ͘͞ΜͷιϑτΣΞSaaSɼPaaSͷ༗ྉϓϥϯ૬ ΛແྉͰ͏͜ͱ͕Ͱ͖Δ • Algoliaରʹͳͬͯ·ͨ͠
ͱ͍͏Θ͚Ͱ
σϞ
σϞ • ݕࡧ͍ͨ͠ళฮΛೖྗ → ళฮ໊ͷ෦จࣈྻͷ߹ώοτ • ෳళฮͷ߹ → CarouselTemplateΛ༻ •
ళฮΛλοϓ → ৄࡉϖʔδ
·ͱΊ
·ͱΊ • ͞Θ͔ͷͪ࣌ؒΛڭ͑ͯ͘ΕΔLINE botΛॻ͍ͨ • GoͱPythonͱHerokuͱAlgoliaͰ࡞ • LINE bot SDKͱAlgolia
SDK͕ΊͪΌͪ͘Ό͍͢ ͔ͬͨͷͰγϡοͱ࡞Δ͜ͱ͕Ͱ͖Δ • ݱࡏ͔Βྑ͛͞ళฮΛαδΣετ͢Δػೳͱ͔͋Δ ͱ͍͍Ͷͬͯࢥ͍·ͨ͠ ‣ Ͱ͖ͦ͏ɼAlgoliaͳΒͶ
ʢ͞Θ͔ͷʣ·ͱΊ Ξϗ΄ͲࠞΉ ࠞΉ দӺલͱ੩ԬӺલʹ ళฮ͕Ͱ͖ͨ ҏ౾ʹͳ͍ ϥΠϒձ࠷دΓ