送信されたメッセージに対して応答するのではなく
LINE BOTの方からトークルームにメッセージを送ることができます
それを「push message」と言います
公式リファレンスでここに書かれていることを実際にやってみます
LINE BOTをつくる方法はこちらの記事にまとめました
上の作り方通りにやれば
Available featuresに「PUSH_MESSAGE」が含まれていると思います
push messageは使えません
新しくLINE BOTを作成してみてください
以下のコードは
Google Apps Scriptのpush_message()を実行したら
トークルームにhelloと送る例です
コードの中のUSER_IDは
LINE BOTの作り方のChannel settingsの一番下に記載されている
Your user IDです
コード.gs
var CHANNEL_ACCESS_TOKEN = "TOKEN"; var USER_ID = "ID"; function push_message() { var postData = { "to": USER_ID, "messages": [{ "type": "text", "text": "hello", }] }; var url = "https://api.line.me/v2/bot/message/push"; var headers = { "Content-Type": "application/json", 'Authorization': 'Bearer ' + CHANNEL_ACCESS_TOKEN, }; var options = { "method": "post", "headers": headers, "payload": JSON.stringify(postData) }; var response = UrlFetchApp.fetch(url, options); } |
意訳.gsアクセストークンを設定する ユーザIDを設定する この処理は以下を実行する postDataの toにUSER_IDを設定し messagesの typeを設定して textを設定する LINEのpushAPIのurlを設定する headersの Content-Typeを設定して Authorizationを設定する optionsの methodをpostに設定して headersを設定して payloadにはpostDataをJSONに変換したものを設定する optionをつけてLINEのpush message APIをたたく |
push messageを送ってみる
コードを保存後
実行>関数を実行>push_message
を選択します
すると以下のようにトーク画面にメッセージが飛んできます