スケジュールに入れるまでもない、しかし忘れると困る日常タスクって結構あると思うんですが。(シャンプー買って帰るとか)
個人的には自分が長く使っているので馴れてるのもあるんですけど、日常的なタスクの管理するツールは「Googleタスク」が使いやすいかなと思っています。
が、Googleタスクってそれ自体を見なかったりで結局忘れるんですよね…(どうしようもない絶望感)
どうやったら忘れないか…と考えたとき、普段良く見るツールに通知しておけばいいのでは?と。
個人的によく見るツールは、
- Slack(仕事で大活躍)
- Gmail(個人アドレスは結構頻繁に確認する)
なので、両方に通知するようにしたいと思います。
Azure LogicAppsにGoogleタスクを利用できるコネクトがあるので、それを使ってGoogleタスクを新規登録したり完了するとSlackに通知、1日1回GoogleタスクのリストをGmailに送信するという仕組みを作ってみました。
おかげさまで、タスクをほぼ忘れなくなりまして!
今回は「Googleタスクを新規登録したり完了するとSlackに通知」についての手順メモです。
LogicAppsがついにGA!
LogicAppsですが最近頻繁に更新があっていて、ついにGA(一般提供)されました!
GAに伴い、見た目や料金体系に変更が出ています。(あと日本語に翻訳されてるところが増えてる)
「LogicAppsデザイナー」でテンプレートが選べる
新規作成時に「LogicAppsデザイナー」でテンプレートが選べるようになりました!
自分でコネクタを探してつなぐ手間が省けるので便利度アップした感じ。
従来の方法でネクタを探して使う場合は「Blank LogicApps」を選ぶと従来の「LogicAppsデザイナー」画面になります。
料金体系に変更
GA前はApp Service Planがデフォルトだったのですが「実行回数ベース」に変更になったとのこと。
新規作成時に「App Service Plan」を選ぶ項目がなくなっていました。
料金体系については「実行回数ベース」ではなく「App Service Planベース」も選べるようなのですが、どこで設定するやら…?(まだ見つけられず)
GA前に「App Service Planを選ぶ項目があるのにLocation(場所)を選ぶ項目も追加」な状態になっていて、App Service PlanとLocationを変える理由ってなんだろう?って思ってたんですけど、料金体系の変更があるから事前に変わってたみたいですね。
エラーが見やすく
「ロジック アプリの実行」もそれぞれのコネクタごとに見れるようになって、わかりやすくなりました。
以前は一括のjson形式で表示されていたんですが、このようにエラー時も「どのコネクタがどういう理由でエラーか」がわかりやすくなったのでプログラムわからない人間的には非常にありがたいです!
LogicAppsについては、@twit_ahf さんのブログで非常にわかりやすく紹介されていますので、詳細はこちらをご参考に!
http://blogahf.blogspot.jp/2016/07/logicapps-ga.html
今回の仕組みについて
さて本題。今回やった仕組みを図解すると、ざっくりとこんな感じ。
それぞれの処理(タスクの追加と修正時・完了時)でLogicAppsを分けているのは、現在のLogicAppsは途中のコネクタを削除はできても変更や追加はできないので、個人的には分けた方が管理しやすいかな?と思ったからです。(このあたり、プログラムできる人なら一気につなげた方がいいとかあるのかもですが)
ちなみに、Google系のコネクタは現時点ではまだプレビュー版になっています。
Googleタスクが「新規追加」されたらSlackに投稿する方法
新規ロジックアプリを作成します。(名前は「GoogleCalendarlogic」にしました)
LogicAppsデザイナーが開いたら「Blank LogicApps」をクリック。
「Microsoft が管理している APIを表示」で「Google」と検索すると、Google関連のコネクタが出てきます。
「When a task is added to a task list」をクリック。
Googleタスクの通知をしたいGoogleアカウントと連携させます。
「Task List ID」で通知したいタスクを登録しているリストを選びます。
「頻度」「間隔」はデフォルト値のままで。
「新しいステップ」をクリックして「アクションの追加」を選択。
「Slack」を検索して「Post Massage」を選択。
通知をしたいチャンネルのあるSlackアカウントと連携させます。
記載する内容は赤枠こんな感じで。
「MASSAGE TEXT」はSlackに投稿したときにわかりやすくするために「Task / (Googleタスクのタイトル)」となるようにしました。
「BOT NAME」もわかりやすい名前にをつけるといいかも。
以上のLogicAppsの設定が完了したら保存します。
Googleタスクが「完了」になったらSlackに投稿する方法
新規ロジックアプリを作成します。(名前は「GoogleTaskEnd」にしました)
今度は「When a task is completed in a task list」をクリック。
上のリストと同じ名前を選びます。「頻度」「間隔」はデフォルト値のままで。
「Slack」を検索して「Post Massage」を選択。
上で設定したものとほぼ同じですが、私はチャンネルをまとめたかったので上で設定したチャンネルを選択しています。
同じタスク名が並ぶとわかりにくいので「MASSAGE TEXT」を「TaskComplete! / (Googleタスクのタイトル)」としました。
実際に確認してみる
では実際にGoogleタスクに新規タスクを追加した場合と完了した場合を確認します。
Googleタスクで新規登録
Googleタスクに新規タスクを登録してみます。
Slackを確認すると、該当のチャンネルにちゃんとGoogleタスクで登録したタスクのタイトルが投稿されています。
Googleタスクでタスクを完了させる
無事忘れずにタスクを達成できたので、Googleタスクを完了させます。(完了の方法はタスクにチェックを入れるだけ)
Slackを見てみます。
完了したGoogleタスクのタイトルが投稿されています。
最後に
LogicAppsはリリースが発表された当初からずっと注目していたけど、なぜか私のサブスクリプションでは保存できない(デザイナでもコードビューでも)という状況が続いて悔しい思いしてたなぁというのを思い出したところですw
Azureの機能の中でも待ちに待った機能なので、ホントに感慨深いなぁと…。
コネクタも随時増えていっているので、もっと便利な機能になるのではないかと期待しています。
さて、私はこれでもタスクを忘れるので(完全にニワトリ頭…)1日1回個人で使っているGmailにGoogleタスクの一覧を送信するようにもしました。
これは次の記事で!