GSReminderは、GoogleのspreadsheetとSlackを連携し、リマインダーとして使用する為のGAS(Google App Script)。GASとかWebhookとか設定したことない人向けのREADME。
- Google Spread Sheet を使用できること
- Slack の Owner 権限を持っていること
SlackのWebHook URLを取得しておく
- Custom Integrationのページを開く
- [Incoming WebHooks]→[Add Configuration] をクリック
- Posts to Channel に通知を送りたいチャンネルを指定、[Add Incoming WebHooks integration] をクリック
- Customize Name と Customize Icon を必要に応じて変更
Customize Name Slackで通知する時の名前 Customize Icon Slackで通知する時のアイコン。emojiから選ぶのが楽で便利 - Webhook URLをコピーしておく(GASの設定で使う)
-
新たなSpreadSheetを作成、適当に名前をつける。内容はこちらのように。シート名は reminders で。
-
A列とC列は[表示方式]→[数字]から[日時]を指定
-
[ツール]→[スクリプトエディタ]をクリックしてスクリプトエディタを起動
-
コード.gsにpost.jsの中身を全てコピペ(ファイル名はコード.gsからpost.jsに変更しておくと良い)
-
プロジェクトの保存を求められた時は適当に名前をつける
-
スクリプトエディタ上で[ファイル]→[新規作成]→[スクリプト]をクリック、ファイル名に任意の名称をつける
-
6.で作成したスクリプトに、vars.org.js の内容をそのままコピペ
-
SLACK_WEBHOOK_URL_HELLO と SLACK_WEBHOOK_URL_REMINDER に事前準備で取得した Webhook URL を指定。(個別に設定しても良い。別のwebhook URLを取得するおくこと)
SLACK_WEBHOOK_URL_HELLO 定期的な動作確認用(GASが動いているかのチェック用)のwebhook SLACK_WEBHOOK_URL_REMINDER リマインダーの内容を通知するチャンネルのwebhook -
スクリプトに権限を与える必要があるのでダミーで一度関数実行する。ファイルを post.js に切り替えて [実行]→[関数を実行]→[hello]をクリック、権限認証を求められるので認可
-
スクリプトエディタで[編集]→[現在のプロジェクトのトリガー]をクリック。初めてトリガーを設定する場合は「トリガーが設定されていません。今すぐ追加するにはここをクリックしてください。」をクリック
-
以下の通りトリガを設定する
実行 イベント 設定 post 時間主導型 分タイマー / 1分ごと hello 時間主導型 週タイマー / 毎週月曜日 / 午前9-10時
(GASが動いているかどうかの確認用なので好みで設定)
- clone して clasp
- 後はソースを参照
-
以下のように行を追加する
1列目(date) 通知する日時
(2018/06/01 09:05:00
のような表記になっていることを確認)2列目(message) 通知するテキスト 3列目(sent) 入力しない。通知成功したら自動で日時が記録される
version | description |
---|---|
0.1 | 初期バージョン |