Skip to content
No description, website, or topics provided.
JavaScript
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
README.md
main.gs

README.md

gas_slack_remindTodo

Slackで「ToDo」のリアクションが付けられたメッセージをリスト化して、リマインドとして投稿するBotを作った。

使用例

  1. 任意のメッセージに「ToDo」リアクションを付ける

slact_remaindTodo_main

  1. Scriptを実行するとリマインドが投稿される
    • ※リマインド本文中の[link]をクリックすると元メッセージに移動

slact_remaindTodo_post

注意事項

  • APIトークンの取り扱いには十分注意してください。
    • プライベートチャンネルにBotを参加させると、GASプロジェクトの管理者(APIトークンを知っている人)が、チャンネル内の会話を閲覧できるようになります。
  • APIの利用制限(Rate Limit)に従うため、各所にsleepを設定しています。
    • 現在の設定値は適当です。
  • リマインドの投稿を箇条書きにするため、1メッセージあたりの最大文字数(textLength)を定義し、メッセージ本文がこの文字数を超えている場合はカットしています。
    • ただし、カット処理は簡易実装のため、URLの途中で途切れたり、絵文字や書式が無効になる場合があります。
  • 2019/12/21現在、投稿内容の箇条書きのフォーマットが反映されません。(ただのハイフンになる)

設定手順

  1. SlackのBotを作成し、APIトークンキーを取得
  2. ToDoリマインドを実行したいチャンネル(Public、Privateどちらも可)に、Botアプリを追加
  3. GASプロジェクトを作成(このコードをコピー)
  4. GASプロジェクトのプロパティを設定
    • ファイル>プロジェクトのプロパティ>スクリプトのプロパティ
      • プロパティ: SLACK_TOKEN
      • 値: BotアプリのAPIトークンキー
  5. GASプロジェクトのトリガーを設定
    • 編集>現在のプロジェクトのトリガー>トリガーを追加
      • 実行する関数: remindTodoInSlack()

Reference

You can’t perform that action at this time.