Linebotで遊んでみた
[BOT API Trial Accountのご紹介 | LINE Business Center](https://business.line.me/services/products/4/introduction) |
ちょっと前に Linebot が 10,000 名まで無料で試せるようになっていたのですが、今サイトを見ると特にそういった記載がないので、誰でもできるようになったんですかね。
はじめに
基本的には、
LINE BOT API Trialでできる全ての事を試してみた - Qiita
こちらを見ながら node.js で書いてみました。
サーバーは heroku にした
Line からの callback を受け付けるには https でないとダメなようなので、 heroku を使いました。
この場合、サーバーの IP アドレスをホワイトリストに入れる必要があるので、 Fixie というプラグインを導入。
Fixie のプラグインを入れたら、 heroku のリンクをクリックし、 Fixie にアクセスすると Outboud IPs が見れるようになる。
あとは、この2つの IP アドレスを Line 側の Server IP Whitelist に入れるだけ。
Linebot のアカウント
- Channel ID
- Channel Secret
- MID
この3つが必要なので、 Line の developer サイトからコピーしておく。
node.js でテキストを送ってみる(Express版)
bot 側で友達からのメッセージを受信した場合に、送り返すターゲットを取得しておいて、単発でテキストを送っています。
以下が固定の値、ここをミスるとうまく動かない。
'toChannel': 1383378250, // fixed
'eventType':'138311608800106203', // fixed
node.js で複数の情報をいっぺんに送ってみる(Express版)
こっちは、一気に
- テキスト
- スタンプ
- 画像
を送っています。
単発のほうを3回実行しても同じなんですが、非同期ゆえに、メッセージの順番が確保されないので、順番に意味があるのならこっちのパターンですかね。
以下が固定の値、ここをミスるとうまく動かない。
'toChannel': 1383378250, // fixed
'eventType':'140177271400161403', // fixed, for multiple messages
API reference
固定の値が結構あるので、ミスってハマるケースがありますが、とりわけ簡単ですね。
LINE Developers - BOT API - API reference
SDK
すでに、いろんな言語での SDK があるようです。
golang の場合。
まだ、 node.js 版がないですねー
何か作りたいが何か面白いものは
bot なので、ワードをもとに検索するみたいなのを一瞬作ろうと思ったんですが、すでにいろんな方が作ってそうだし悩ましい〜
今後何か作りたいので、
リポジトリだけは作った!