G-gen の三木です。Slack 投稿をもとに、気楽に Google Tasks の ToDo リストへタスクを追加したいと思ったので、Zapier を使って自動化してみました。
作ったもの
Slack で特定リアクションをすると、以下のように Google ToDo リストにタスクが追加されます。
課題感
Google カレンダーの ToDo リスト機能
当社ではプロジェクトのタスク割当の際、Google Docs のタスク割り当て機能を利用しています。
利用されていない方にはイメージしにくいかと思うので、画面を用意しました。こんな感じで管理しています。
登録が面倒
G-gen ではコミュニケーションツールとして Slack を利用しています。なので、作業のほとんどは Slack 経由で発生します。
日常のタスクも含めて Google ToDo リストで管理したいと思っていましたが、Slack から転記するのが手間でした。そんなわけで、ソリューションを考えてみました。
ソリューション
アーキテクチャ
Slack だけで完結させたかったのですが、上手くイベント発生を検知できなかったので、サードパーティのサービスである Zapier を使っています。
手順
1. Slack emojiを作成
Slack で使用する emoji を作成します。
2. emoji を追加
作成した emoji を Slack に追加します。
3. Zapier と Slack を連携
Zapier を連携します。
4. Zap の作成
Zapier にログインして、Zap を作成します。
- 参考 : Login | Zapier
5. Zap の設定 (Trigger)
以下のパラメータで設定しました。
ParamName | Value |
---|---|
App | Slack |
Event | New Reaction Added |
Account | 組織のSlackアカウント |
Trigger - Reaction |
mikitask ※emoji名を指定します |
Trigger - Channel |
空白 |
Trigger - User |
自分のユーザーID |
(2024-05-07追記)
TriggerのUserを指定することで、「自分がEmojiリアクションをした場合のみタスクが追加される」という制約をかけられます。
これにより、「想定外の場所で登録したEmojiを利用されてタスクが無限に増える...」という不具合を解消することが出来ます。
6. Zapの設定(Action)
以下のパラメータで設定しました。
ParamName | Value |
---|---|
App | Google Tasks |
Event | Create Task |
Account | 組織のGoogleアカウント |
Acition - Task List |
マイリスト |
Action - Title |
1. Message Text: ※フィールドを選択 |
Action - Note |
1. Message Parmalink: ※フィールドを選択 |
7. テスト
Zapをテストします。エラーが発生したら、左ペインの "Zap Runs" からエラーを見てトラブルシュートします。
今後の課題
誰が emoji をつけてもタスクが増える [解決済]
同僚からも emoji を付けてもらえるように、あえて制御していません。そのため、悪意を持って emoji を連打されると、無限にタスクが増えます。
(2024-05-07追記
社内でアドバイスを貰ったので追記します。
New Reaction Added in Slack のパラメータの「Trigger - User」を設定することで、「特定のユーザーがEmojiを押した場合にのみタスクを追加する」ということが可能です。
タスクに自動で期限をつけたい
最初に Inbox に入る時点でその日時点の日付が入るといいな、と思ってます(私はすべてのタスクをとりあえずInboxに入れて仕分けをする派ですが、ある方が仕分け忘れが減りそうです)。
完了タスクを自動削除
「完了タスクは2週間後に削除」のようにライフサイクルルールを設定したいと考えています。
三木宏昭 (記事一覧)
クラウドソリューション部
HROne→ServerWorks→WealthNavi→G-gen。AWS 11資格、Google Cloud認定全冠。Google Cloud Partner Top Engineer 2024。Google Authorized Trainer
Follow @cloudeep_miki