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開発
Search
ufoo68
May 17, 2021
Technology
330
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
解説!LINE bot開発
ufoo68
May 17, 2021
More Decks by ufoo68
See All by ufoo68
BlenderをCodexで動かす
ufoo68
1
380
改めて考えるOSSのあり方について
ufoo68
0
60
文法で学ばないJavaScript
ufoo68
0
76
Cookieとは?
ufoo68
1
87
今更ながら、開発現場での生成AI活用について
ufoo68
0
83
28歳独身エンジニア 婚活してみた
ufoo68
0
36
OpenAIでクッキー型を作る
ufoo68
1
71
初めて開発リーダーをやってみた話
ufoo68
0
150
M5Stack用の指紋認証デバイスを試す
ufoo68
0
910
Other Decks in Technology
See All in Technology
クラウドファンディング版StackChan 3体(4体)をインタラクティブな体験型作品にして展示もした話 / スタックチャンお誕生日会2026
you
PRO
0
260
AIをフル活用してオンコール機能のプロトタイプを2日で作った話 / Building an AI-Powered On-Call Prototype in Just Two Days
nari_ex
0
160
Microsoft のサポートとフィードバック総まとめ
murachiakira
PRO
0
130
「勝手に広まる」人気 AI エージェントを爆速で作ろう!(AWS Summit Japan 2026講演資料)
minorun365
PRO
10
2.8k
MySQL & MySQL HeatWave Report - June 2026
freshdaz
0
250
Text-to-SQLをAgentCoreで実現し、生成されるSQLの精度を定量的に評価する
yakumo
2
290
デジタル・デザイン:次の50年を描く「進化する青写真」
y150saya
0
690
AI時代における最適なQA組織の作り方
ymty
3
310
ご挨拶「10周年を迎える共創ラボのこれまでとこれから」
iotcomjpadmin
0
170
起点・思考・出力で分解する 〜PM業務の自動化設計〜
kazu_kichi_67
2
1.2k
アラート調査向けAIエージェントの本番導入とその後/AI Agents for Alert Investigation: Production Deployment and After
taddy_919
1
300
どうして今サーバーサイドKotlinを選択したのか
nealle
0
170
Featured
See All Featured
How to Talk to Developers About Accessibility
jct
2
270
Darren the Foodie - Storyboard
khoart
PRO
3
3.4k
How to Ace a Technical Interview
jacobian
281
24k
From π to Pie charts
rasagy
0
220
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
750
WCS-LA-2024
lcolladotor
0
660
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
170
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
201
75k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
The Curious Case for Waylosing
cassininazir
1
420
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.5k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
3.6k
Transcript
解説!LINE bot開発 @linedc
自己紹介 • Twitter ◦ @ufoo_yuta • Qiita ◦ ufoo68 •
所属 ◦ 株式会社ACCESS • やってること ◦ スポーツIoTLT主催 ◦ LINE API Expert
私とQiita 私のLINE APIで遊んだ記録はだいたいQiitaで書いてました 初めて書いた記事 「LINE Thingsでパトランプを回してみた」
今日の内容 昔書いた記事について、もう少しLINE botについて解説します! 知識が浅かった頃に書いたものなので、色々と雑な ことを書いているところが多々ありました。 でもなぜか一番LGTMもらっているのはこの記事な んですよねぇ
LINE botってどうやってつくるの? Messaging APIで作れる! https://developers.line.biz/ja/docs/messaging-api/overview/
Messaging APIをどうやって使うの? 今年のアニメを教えてくれるLINE botを例に見ていきましょう! 「今年のアニメは?」というメッセージを LINE トーク 画面に送ると、今年放送予定のアニメを教えてくれ る。そんなbotです。
まずはDevelopersサイトに登録しよう ログインをしたらこんな感じのコンソール画面がでてきます!
プロバイダを作成してチャネルを作る プロバイダはアプリをつくるためのフォルダ、チャネルはアプリそのもの とイメージするとわかりやすいと思います
必要情報を記入します ここはLINE botのアイコンとか説明文とかを書きます
実はLINE botはこれで完成です しかし今の状態ではメッセージを受け取ることはできても、返すことはできない ・・・・・・・・。 「今年のアニメは?」っと ...
まずはLINE Official Account Managerを開く 応答について設定する Messaging APIを使いたい場合は Botモードを選択 応答メッセージをONにすると設定画面から定型 文を返すBotが設定できる(しかし
Messaging APIを使う場合はOFFにする)
改めてMessaging APIについて アプリケーションとLINE botとコミュニケーションを繋ぐための仕組み https://developers.line.biz/ja/docs/messaging-api/overview/ 今年のアニメは? 「今年のアニメは?」 と質問されたよ 今年のアニメ一覧を 返します
今年のアニメ一覧が 返ってきたよ
Messaging APIを使うための必要情報 • 以下の情報を設定画面 (LINE Developers & LINE Official Account)から確認・設定する
◦ Webhook URL ◦ Chanel access token ◦ Chanel secret Messaging API Application https://xxxxx.xxxx Webhook URLはMessaging APIがLINE からのメッセージを送る先を示す Chanel access token = xxxxx Chanel secret = xxxxxx Chanel access tokenとChanel secretは、 アプリケーションがMessaging APIに送る メッセージが信用できることを示す
アプリケーションの実装について 実装にはどんなサービスを使っても良いと思いますが、 サーバーレスなものを使う方が無難だと思います。 Endpoint Function Messaging API サーバーレスであればこの Function の実装に専念するだけで
LINE botが 実装できる(基本的にこの構成が変 わることはない) https://xxxxx.xxxx
コードの実装・・・の前に メッセージの送信方法は2通りある Messaging API Application Messaging API Application Messaging APIから送られたメッセージを受
け取ってから返すパターン Messaging APIに直接メッセージを送るパ ターン(送信数に制限あり) reply message push message
各メッセージ送信のパターン JavaScriptの例(公式提供のライブラリを使用) • リプライメッセージ replyMessage(token, message) ←tokenはMessaging APIから送られてきた情報から取得 • プッシュメッセージ
pushMessage(to, message) ←toでMessaging APIが送信して欲しいLINE botを指定 ちなみに、APIのリファレンスは公開されているので、アプリケーションの実装では好きな 言語を選択することもできる
メッセージにも色々な種類がある • テキスト • 画像 • 動画 • 音声 •
ファイル • 位置情報 • スタンプ
テキスト→テキストを返すbotの実装例 const line = require('@line/bot-sdk') const config = { channelSecret:
’xxxxxxx’, channelAccessToken: ’xxxxxxx’ } const client = new line.Client(config) …. async function handleEvent(event) { …. if (event.type.message.text === ‘今年のアニメは?’) { const animeList = await getCurrentAnimeList() return client.replyMessage(event.replyToken, animeList) } …. } 基本的に前処理で書くことはどの LINE botを実 装する場合も同じ(そこらへんのサンプルコード をコピペしても良い) 受け取ったメッセージとその内容を元に返信する メッセージを記述(自分で実装を考えるのはここ だけ)
実装ができたら Webhook URLを登録しよう
友達登録をして動作確認をしよう QRコードを読み込むと勝手にLINEアプリが立ち上がるはず
おわりに • LINE botを作るための仕組みとしてMessaging APIというものがある • Messaging APIとはLINEアプリと自作サーバーアプリケーションの間のメッセージ 交換を繋ぐ役割を持っている •
LINEのメッセージには複数の種類がある(今回はテキストの例を紹介) • アプリケーションの動作確認は作成したLINE botを友達登録するだけで実行可能 • 具体的な実装は超絶簡単!LINE bot開発を参照してね