Googleフォームの回答をLINEで受け取る方法!【LINE Messaging API対応】
sanane SANANEBLOG
今回の記事では、GoogleフォームとLINE WORKSを連携して、Googleフォームの回答が送信されたら自動的にLINE WORKSに通知する方法をご紹介します。
Googleフォームは手軽にアンケートを作成できるツールですが、その回答を素早く確認することは意外と手間がかかります。
そこで今回はLINE WORKSが提供しているIncoming Webhookを利用して、この処理を手早く自動化する方法を紹介します。
Incoming Webhook アプリとは、他の Web サービスや自社システムからの通知を、LINE WORKS のトークルームで簡単に受信するチャットボットアプリです。
複数のサービスと連携でき、複数人トークルームにも対応しています。
事前にGoogle アカウント、Line WORKSアカウントが開設されていることを前提とします。
既存のグループに[Incoming Webhook]アプリを追加する場合は、既存グループの[⋮]より、[Bot招待]をクリックします。
コピーしたURLはこの後のGoogle側に入力します。
LINEWORKS_WEBHOOK_URL = 'https://webhook~~';
の 部分を、前ステップで取得したWebhook URLに置き換えます。(シングルクォーテーション ' '
はそのままです)var LINEWORKS_WEBHOOK_URL = 'https://webhook.worksmobile.com/message/xxxxxx-xxxxxx-xxxx-xxxx-xxxxxxxxxxxx';
function onFormSubmit(e) {
var values = e.values;
var timestamp = values[0];
var messageLines = [];
messageLines.push('【新しいフォーム回答を受信しました】');
messageLines.push('送信日時: ' + timestamp);
for (var i = 1; i < values.length; i++) {
messageLines.push('回答' + i + ': ' + values[i]);
}
var finalMessage = messageLines.join('\n');
sendToLineWorks(finalMessage);
}
function sendToLineWorks(message) {
var payload = {
body: {
text: message
}
};
var options = {
method: 'post',
contentType: 'application/json',
payload: JSON.stringify(payload)
};
try {
UrlFetchApp.fetch(LINEWORKS_WEBHOOK_URL, options);
} catch (err) {
Logger.log('LINE WORKS への送信に失敗: ' + err);
}
}
onFormSubmit
スプレッドシート
からフォーム送信時
以上で初期設定は完了です。後はGoogleフォームから回答があるたびにLINE WORKSに通知がされます。
「本記事の紹介内容をもっと自分用にカスタマイズしたい」
「設定がうまくいかず依頼したい」
「別のツールの作成依頼をしたい」
上記ご要望について、ココナラというサービスにて承っております。
相談は無料ですのでぜひお気軽にご相談ください。
[見積り相談をする]からご相談ください!