LINE BOTをNode.jsで作るための学習リソースをまとめました。
#こんな人が対象です
・これからLINE BOTを作りたい
・LINE BOTでどんなことができるか知りたい
・node.jsが読める
#システム構成図
大体こんな感じのシステムが多い。
#事前知識と事前準備
公式サイト
開発者向け公式サイト
LINE Business Center。
LINE BOTを作る際には、提供サービスの中の「Messaging API」というサービスを主に使います。
Messaging APIのリファレンス
リファレンス読み慣れてないと読みづらいけど、Messaging APIで何ができるかは、これでなんとなくわかる。
事前準備①: node
nodeをインストールしてnpmを使えるようにしよう。
インストーラでnodeをインストールしよう
nodeのインストールからHello worldまで載ってる
nodebrewでnodeをインストールをしよう
インストーラでインストールできない場合
事前準備②: heroku
herokuのアカウントを作ろう。
Herokuのアカウント作成
アカウントを作って、まずはLINE BOTの作業ディレクトリを作ろう。(要Gitの知識)
Herokuの使い方(日本語)
Gitの基礎知識や英語に自信がない人は参考にどうぞ。
Heroku入門 - ドットインストール
みんな大好きドットインストール。
herokuの16の常識
herokuのじゃじゃ馬っぷりがわかる
まずはLINE BOTでHello world!
#学習リソースまとめ
基礎: Reply Message (相手のコメントに返事する機能)
応用: 外部サービスと連携
毎朝!お天気通知BOT
JP Weather Forecastという天気予報 APIを利用
IBMサービスでお天気通知BOT
1時間間隔で、降水確率70%を越えると知らせてくれる
IBM BluemixのNode-REDとWeather Company Dataでお手軽に作ってる
(BluemixはIBMのクラウド基盤サービス、AWSやGCPの親戚)
レストラン検索BOT
ぐるなびAPI使ってる
写真で年齢判定BOT
Microsoft AzureのFace APIを使った表情認識
(AzureはMicrosoftのクラウド基盤サービス、AWSやGCPの親戚)
[画像タイトル&タグ生成BOT]
(http://tech.innovation.co.jp/2017/04/14/Azure-3.html)
Microsoft AzureのComputer Vision APIを使った画像機械学習
会話の雰囲気判定BOT
IBM BluemixのTone Analyzerを使った雰囲気分析
docomoのサービスを使った雑談対話BOT①
docomoの雑談対話APIを利用、会話レベルは凡骨
docomoのサービスを使った雑談対話BOT②
上に同じ、docomoさん頑張ってくだされ
LINE BOTでTODOリスト
Todoistというタスク管理サービスを利用
このBOT欲しい
LINE Pay決算BOT
LINE Payによる決算でユーザに商品を購入させることができる
Google Homeに読み上げさせるBOT
Firebaseとラズパイ経由でGoogle Homeにメッセージを読み上げさせるBOT
応用: 外部サービスと連携してない
Lambda+DynamoDBで友達管理
ユーザー毎のuserID管理にAWS Lambdaを使ってる
LambdaでRSS通知BOT
RSS(Webサイトの更新情報など)を受け取れる、複数サイトの更新管理に便利
声優ブログ更新通知BOT ※PHP
RSSじゃなくてURLの照合で更新判定してる
落語BOT
ソースコード載せてないけど、UX/UIがとてもいいアイデア
Template Message使ってるみたい
チラシ宅配BOT ※Ruby
Reply&Push機能から、ユーザ情報管理まで、丁寧で実践的な解説
誕生日お祝いBOT ※PHP
前編で入門(Reply)、後編で応用(Pushとユーザ情報管理)
補助・その他
データ構造まとめ
LINE BOTで扱う主要なJSON構造などをまとめてくれてる
新機能Template Messageを使ってみた ※Python
LINEの横スクロール機能!
商用LINE BOTサーバの実装例
LINE BOTを実運用する場合のサーバ構築例
1時間でLINE BOTを作るハンズオン (資料+レポート) in Node学園祭2017
LINE BOTハンズオンの内容と、参加者の応用作品がまとまっている