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 messaging APIを使ってGoogleカレンダーと連携した予約ツールを作ってみた
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Takuma Koike
February 26, 2025
Programming
310
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
LINE messaging APIを使ってGoogleカレンダーと連携した予約ツールを作ってみた
connpassで開催された【初心者・初登壇Welcome!LINEを使ったLT大会 #11】における発表資料です。
Takuma Koike
February 26, 2025
Other Decks in Programming
See All in Programming
AI時代のUIはどこへ行く?その2!
yusukebe
22
7.7k
過去最大のMCPアップデート! 2026-07-28 RC版の謎に迫る
licux
6
440
エンジニアと一緒にテストコードの設計と実装を改善した話
mototakatsu
0
250
SREの積み重ねがAI駆動開発のガードレールになった ― 7つの実践/SRE Guardrails The 7
tomoyakitaura
7
1.1k
Developing with AI Agents — Codex, Claude Code & Cowork Practical Guide
x5gtrn
PRO
0
1.3k
Vue × Nuxt × Oxc どこまで使える?実運用の現在地
andpad
0
350
Haskell/Servantを通してWebミドルウェアを捉え直す
pizzacat83
0
370
そのテスト、説明できますか?~LWテスト戦略FW~のご紹介
nakahara
0
190
「正の参照」と 「負の導出」で組む ハーネスエンジニアリング
cottpan
1
120
はてなアカウント基盤 State of the Union
cockscomb
1
1.3k
The Bowling Game- From Imperative to Functional Programming - Part 1
philipschwarz
PRO
0
260
気圧・高度・GPSを記録&可視化するアプリ「Koudo」を作った話
hjmkth
1
340
Featured
See All Featured
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.5k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
410
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.8k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
6k
Embracing the Ebb and Flow
colly
88
5.1k
The Invisible Side of Design
smashingmag
301
52k
Deep Space Network (abreviated)
tonyrice
0
220
Mobile First: as difficult as doing things right
swwweet
225
10k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
580
Un-Boring Meetings
codingconduct
0
330
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
670
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
610
Transcript
LINE messaging APIを使って Googleカレンダーと連携した 予約ツールを作ってみた 2025年2⽉25⽇ 初心者・初登壇 Welcome!LINEを使ったLT大会 #11
各リンク情報 今回のQiita記事 ソースコード (GitHub) Xアカウント 気軽にDMください
本⽇のメニュー ⾃⼰紹介 作成したものの紹介 ⼯夫した点 ハマった点‧苦戦した点 まとめ
⾃⼰紹介 札幌タクマ(X:@kuma_radcof) ‧作業療法⼠ ‧GASエンジニア ‧PCスクール講師 など 3児の⽗
作ったもの ‧LINE messaging APIを 利⽤した簡易予約bot LINEとのやりとりから ‧スプレッドシート ‧Googleカレンダー へ作成情報を保管
作ったもの:全体の流れ 1. ユーザーから送られるメッセージ(今回は『予約』というテキスト)に 応じて公式LINEから応答メッセージを送る形でスタート 2. 数回のやりとりで『⽇にち』『時間』『⼈数』『代表者名』『電話番号』を 取得していく 3. 予約内容を確定させたらスプレッドシートにデータを保管 4.
さらにGoogleカレンダーにも予定を登録
⼯夫した点:LINE messaging APIの利⽤に関連して 公式LINEからのメッセージ送信は 有償のもの‧無償のものがある 公式LINEの有償メッセージは 無料プランだと200通/⽉ 無償:応答メッセージ 引⽤:https://campus.line.biz/line-official-account/courses/functions/lessons/oa-2-1-3
⼯夫した点:LINE messaging APIの利⽤に関連して 200通/⽉の上限ということは 登録者数 1⼈ → 200通送信可能 100⼈ → 2通送信可能(全員に送信すると仮定) 10⼈ → 20通送信可能 ※いずれも⽉間に配信可能な数
⼯夫した点:LINE messaging APIの利⽤に関連して 上限を気にせずユーザーとコミュニケーションするためには 応答メッセージを活⽤してみると良い 応答メッセージの送信 Reply tokenを利⽤ → Webhookイベントで取得 テキスト以外でも送ることは可能
Reply Tokenのイメージ ⼯夫した点:LINE messaging APIの利⽤ ユーザーがメッセージ送信すると 右のような情報が Webhook情報として作成される
ハマった点‧苦戦した点 そもそもWebhookって?スプレッドシートのwebアプリ化って?doPostって?み たいなところからスタートして何回かチャレンジしてはうまくいかずといった経 験をしてました。(先⼈たちはすごい…) ‧メッセージ送信時のオブジェクト作成⽅法 ‧ユーザーからの情報をどのようにして保管して活⽤するのか (都度スプレッドシートに書き込むのはよろしくない)
ハマった点‧苦戦した点 ユーザーからの情報を どのようにして保管して 活⽤するのか →GASのCacheserviceを活⽤ することで解決
ハマった点‧苦戦した点 ユーザーIDに応じたキャッシュデータを取得 →キャッシュデータがなければ(初回対応)空のオブジェクトデータを作成 →キャッシュデータが存在していれば都度情報を上書きしていく
ハマった点‧苦戦した点 予約のステップごとにキャッシュを更新し、ステップに合わせた対応を進める
まとめ • LINE messaging APIの中でもReply tokenを利⽤したメッセージのやり取り でできる簡易予約botを作成した • 応答メッセージを活⽤することで無料枠内でのメッセージ送信が可能 •
ユーザー情報を保管するにはGASのCacheserviceを活⽤すると便利
各リンク情報 今回のQiita記事 ソースコード (GitHub) Xアカウント 気軽にDMください