【Power Automate】Box上のファイルを自動的にPDF化するフロー
sanane SANANEBLOG
今回はLINE Messaging APIを使って、Google Formの回答内容を自動的にLINEに通知する方法を紹介します。
アンケートやお問い合わせなど、あらゆる用途で便利に使われるGoogleフォーム。
しかし、回答が届いたことに気づくのが遅れてしまったり、メール確認をこまめに行うのが大変だったり……。
そんなときに、LINE Messaging APIとの連携をすることで、LINEの公式アカウントで回答内容の通知をを受け取ることができます。
これまでは同様の機能をLINE Notifyを使うことで代用が可能でした。
しかし2025年4月1日以降、LINE Notifyのすべての機能が利用できなくなることが発表されています。
そのため、本記事ではLINE Notifyではなく代用となるLINE Messaging APIで通知を行う方法をご紹介します。
const ACCESS_TOKEN = 'YOUR_ACCESS_TOKEN';
の YOUR_ACCESS_TOKEN
部分を、' '
はそのままです)const ACCESS_TOKEN = 'YOUR_ACCESS_TOKEN';
function sendToLine() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var row = sheet.getLastRow();
var data = sheet.getRange(row, 1, 1, sheet.getLastColumn()).getValues();
var message = '新しいフォームの回答がありました:\n';
// タイムスタンプを整形(年月日と時間のみ)
var timestamp = new Date(data[0][0]);
var formattedTimestamp = Utilities.formatDate(timestamp, Session.getScriptTimeZone(), 'yyyy/MM/dd HH:mm');
message += '■タイムスタンプ\n ' + formattedTimestamp + '\n';
// 回答をメッセージに追加
data[0].forEach(function(value, index) {
// 1列目はタイムスタンプなのでスキップ
if (index > 0) {
var question = sheet.getRange(1, index + 1).getValue();
message += '■' + question + '\n ' + value + '\n';
}
});
// LINE Messaging API (ブロードキャスト) へPOSTする
var url = 'https://api.line.me/v2/bot/message/broadcast';
var payload = JSON.stringify({
"messages": [
{
"type": "text",
"text": message
}
]
});
var options = {
"method": "post",
"contentType": "application/json",
"headers": {
"Authorization": "Bearer " + ACCESS_TOKEN
},
"payload": payload
};
UrlFetchApp.fetch(url, options);
}
sendToLine
スプレッドシート
フォーム送信時
これで設定完了です!
以降、Googleフォームに新しい回答があるたびに、自動でLINE公式アカウントから通知が飛ぶようになります。
「本記事の紹介内容をもっと自分用にカスタマイズしたい」
「設定がうまくいかず依頼したい」
「別のツールの作成依頼をしたい」
上記ご要望について、ココナラというサービスにて承っております。
相談は無料ですのでぜひお気軽にご相談ください。
初めてココナラを登録する方は下記をクリックしてココナラにアクセスし、右上の[会員登録]から会員登録を実施してください。
会員登録が完了後、下記リンクにアクセスし、画面右側の[見積り・仕事の相談をする]からご相談ください。