【PHP】LINE Messaging APIで田村ゆかりさんの公式サイト更新通知BOTを作りなおした #yukarin

従来のLINE BOT APIが廃止予定ということで
新たに発表されたLINE Messaging APIに移行しました。

 

line

作ったものはこんな感じ普通です。
LINE Messaging API は管理画面から背景色とかアカウント設定できる項目はめっちゃ増えてて
LINE BOT APIよりは個性的なものが作れそう(^o^)

qr
田村ゆかりさんに興味がある人、待ってます\(^o^)/

 

 

LINE Messaging API

誰でも手軽に叩けるAPIです。
BOTも作成できるし、管理画面も用意されてて分かりやすい。

無料で作成するBOTはユーザーの発言に対しての返信はできる(REPLY_MESSAGE)
BOTから直接メッセージを送信(PUSH_MESSAGE)するのは月2万ぐらいかかる。

しかし友達登録上限50人という制限付きBOTでは REPLY_MESSAGE & PUSH_MESSAGE
どちらも使える。

従来のLINE BOT APIと変わったことはそんなことなくて
移行難易度はそんなに高くないと思います。

 

Webhookの設定

今回実装にあたって少しだけハマったところは
Webhookの設定で、CloudflareのSSL機能を使ったサーバーを指定すると
Webhookが飛んでこないという仕様だった。

LINE BOT APIでは使えたんですけどね、いずれか使えるようにはなりそう。
ちなみにLet’s Encryptでは可能です。

 

 

実装

今回もPHPです。
特に理由はありません。楽だからです。

 

callback

 

LINEからのアクセスかどうかは従来のLINE BOT APIと同じで

こんな感じで署名の確認ができる。

 

 

Push(BOTからユーザーへメッセージ送信)

LINEにリクエストを投げるときはCHANNEL_ACCESS_TOKENをヘッダーに載せるだけ。
LINE DeveloperからサーバーのIPをホワイトリストに登録する必要はあります。
今回の話に関係はないですけどGoutte便利だし何より速い。

 

メッセージを送信する関数は

特筆することなし!

 

 

戯言

Webhookに関してはイベント内容がJSON見れば一発で分かるようになったので楽でした。
LINE BOT APIでは type 1 が友達追加時で~ type3 がユーザーからのメッセージとかで
分かりにくかった。

あとはドキュメントも日本語が用意されて、各言語のSDKも用意されているので
比較的容易に移行(作成)できました。

ソースコードはこちら
rluisr/yukari-line-botA – github

コメントを残す

メールアドレスが公開されることはありません。