Skip to content

Google Formの回答をSlackとメールに通知できます。

Notifications You must be signed in to change notification settings

x7ddf74479jn5/google-form-notification

Repository files navigation

Google From Notification

Google Formの回答をSlackとメールに通知できます。 GASのフォーム送信トリガーと時間主導型日付ベーストリガーに対応しています。 フォーム送信トリガーによる通知ではフォームに入力された各回答データが含まれます。 日付ベーストリガーでは昨日に送信された回答数を指定時間に一括で通知します。

🎨 Features

🚀 Try it now

git clone https://github.com/x7ddf74479jn5/google-form-notification

⚒ Usage

Install clasp CLI if not installed

npm i -g @google/clasp
clasp login

Config

mv .clasp.example.json .clasp.json

.clasp.jsonscriptIdを自身のAppScriptのIDで書き換えてください。

※ AppScriptのIDはAppScript管理画面のプロジェクト設定から確認できます。

フォームのAppScript IDではなくスプレッドシートのAppScript IDです。

{
  "scriptId": "<YOUR_SCRIPT_ID>",
  "rootDir": "./build"
}

環境変数の設定

config.tsに直接書く場合

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"
};

.envに書く場合

config.propertyenvに設定

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"

gsファイルにグローバル変数として書く場合

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";

GASのスクリプトプロパティに設定する場合

config.propertypropertiesServiceに設定

プロジェクトのダッシュボードから設定しください。

「プロジェクトの設定」>「スクリプトプロパティの追加」

Build

npm run build

Deploy

npm run push

Trigger Setting

GASのダッシュボードからトリガーを設定してください。

config.tstriggerを設定している場合、main関数が実行されると自動的に各関数のトリガーが設定されます。

「エディター」>「main.gs」>「プルダウンメニューからmain関数を選択」>「実行」

初回実行時はアプリを承認する必要があります。

「ポップアップ中の詳細をクリック」>「元のページへ戻るをクリック」

consoleから実行する場合(claspの設定によっては失敗する可能性があります)

npm run set-triggers

config.tstriggerを設定していない場合は手動で各関数のトリガーを設定する必要があります。

「トリガー」>「トリガーを追加」

毎日定時にトリガーを設定
実行する関数を選択 onScheduleから始まる関数
実行するデプロイを選択 HEAD
イベントのソースを選択 時間主導型
時間ベースのトリガーのタイプを選択 日付ベースのタイマー
時刻を選択 任意の時間帯
フォーム送信時にトリガーを設定
実行する関数を選択 onFormSubmitから始まる関数
実行するデプロイを選択 HEAD
イベントのソースを選択 フォームから
イベントの種類を選択 フォーム送信時

Appendix

> Config詳細

> API詳細

> GAS Reference

About

Google Formの回答をSlackとメールに通知できます。

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published