Google Formの回答をSlackとメールに通知できます。 GASのフォーム送信トリガーと時間主導型日付ベーストリガーに対応しています。 フォーム送信トリガーによる通知ではフォームに入力された各回答データが含まれます。 日付ベーストリガーでは昨日に送信された回答数を指定時間に一括で通知します。
git clone https://github.com/x7ddf74479jn5/google-form-notification
npm i -g @google/clasp
clasp login
mv .clasp.example.json .clasp.json
.clasp.json
のscriptId
を自身のAppScriptのIDで書き換えてください。
※ AppScriptのIDはAppScript管理画面のプロジェクト設定から確認できます。
※ フォームのAppScript IDではなくスプレッドシートのAppScript IDです。
{
"scriptId": "<YOUR_SCRIPT_ID>",
"rootDir": "./build"
}
export const organizationConfig: OrganizationConfig = {
MAILING_LIST: ["your_email_address@exmaple.com", "another_email_address@exmaple.com"],
SLACK_WEBHOOK_URL: "https://hooks.slack.com/services/*************************",
MAIL_TITLE: "Google Form申請",
SEND_BY: "Google Form Notifier"
};
config.property
をenv
に設定
cp .env.example .env
MAILING_LIST="your_email_address@exmaple.com,another_email_address@exmaple.com"
SLACK_WEBHOOK_URL="https://hooks.slack.com/services/*************************"
MAIL_TITLE="Google Form申請"
SEND_BY="Google Form Notifier"
variables.gs
const MAILING_LIST = ["your_email_address@exmaple.com", "another_email_address@exmaple.com"];
const SLACK_WEBHOOK_URL = "https://hooks.slack.com/services/*************************";
const MAIL_TITLE = "Google Form申請";
const SEND_BY = "Google Form Notifier";
config.property
をpropertiesService
に設定
プロジェクトのダッシュボードから設定しください。
「プロジェクトの設定」>「スクリプトプロパティの追加」
npm run build
npm run push
GASのダッシュボードからトリガーを設定してください。
config.ts
でtrigger
を設定している場合、main
関数が実行されると自動的に各関数のトリガーが設定されます。
「エディター」>「main.gs
」>「プルダウンメニューからmain
関数を選択」>「実行」
初回実行時はアプリを承認する必要があります。
「ポップアップ中の詳細をクリック」>「元のページへ戻るをクリック」
consoleから実行する場合(claspの設定によっては失敗する可能性があります)
npm run set-triggers
config.ts
でtrigger
を設定していない場合は手動で各関数のトリガーを設定する必要があります。
「トリガー」>「トリガーを追加」
毎日定時にトリガーを設定 | |
---|---|
実行する関数を選択 | onScheduleから始まる関数 |
実行するデプロイを選択 | HEAD |
イベントのソースを選択 | 時間主導型 |
時間ベースのトリガーのタイプを選択 | 日付ベースのタイマー |
時刻を選択 | 任意の時間帯 |
フォーム送信時にトリガーを設定 | |
---|---|
実行する関数を選択 | onFormSubmitから始まる関数 |
実行するデプロイを選択 | HEAD |
イベントのソースを選択 | フォームから |
イベントの種類を選択 | フォーム送信時 |