LINE messaging APIを使用してメッセージを送信する
私は、Twitter APIで取得した内容をLINEで通知したかった!!
目標
友達登録している方全員に通知を送信したい
結論
・LINE messaging API を使用して通知を送る
・broadcast通知を使用する
LINE messaging API
Messaging APIを使って、ユーザー個人に合わせた体験をLINE上で提供するボットを作成できます。
作成したボットは、LINEプラットフォームのチャネルに紐づけます。チャネルを作成すると生成されるLINE公式アカウントをボットモードで運用すると、LINE公式アカウントがボットとして動作します。
#使用してみる
メッセージの種類は様々ある
プッシュメッセージ(1対1)
マルチキャストメッセージ(1対多:ユーザーID指定)
ナローキャストメッセージ(1対多:絞り込み配信)
ブロードキャストメッセージ(1対多:すべての友だち)
ブロードキャストメッセージ
今回はこちらを使用していく。
1.LINE for Business を登録する
登録手順とトークン取得はこちらを参考にさせていただきました。
2.LINE 通知を送信する
1.で取得したchannel secret
とchannel access token
をセットし、broadcastで送信する
client = Line::Bot::Client.new { |config|
config.channel_secret = "<channel secret>"
config.channel_token = "<channel access token>"
}
message = {
type: 'text',
text: 'hello'
}
response = client.broadcast(message)
p response
3.LINEbotから通知が届く
プッシュメッセージ
こちらを最初使用していたが、1対1になってしまうので使用しない。
コードの書き方としては、ブロードキャストメッセージと少しだけ違うところがある。
client = Line::Bot::Client.new { |config|
config.channel_secret = "<channel secret>"
config.channel_token = "<channel access token>"
}
message = {
type: 'text',
text: 'hello'
}
# ここに違いがある。 "<to>"に送信先のIDを指定しなければならない。
response = client.push_message("<to>", message)
p response