Integromatでお手軽Googleカレンダースケジュール登録してみた

Webサービス連携のIntegromatを利用して、Googleカレンダーへ楽にスケジュールを追加する方法についてまとめました。
2019.01.31

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

Googleカレンダーへスケジュール登録は、それなりに数が増えると結構手間が掛かってきます。ToDoアプリで指定した日程を元にスケジュール化も試みましたが、ToDoそのものの管理に迫られるため本末転倒でした。

手軽に単純に予定を記録することを目的に試行錯誤した結果、Integromatを使って自分自身の予定をカレンダーへ入力できる手続きが整ったので、まとめてみました。ある程度操作に手慣れた前提となります。

スケジュール登録までの経路

今回はSlackのメッセージを発端として、カレンダーへの登録を行います。フローとしては以下のようになります。

  • 指定のテンプレートでメッセージを送信する
  • 一定数のメッセージ履歴を参照する
  • メッセージを正規表現マッチングによりパラメータ化
  • パラメータを利用してGoogleカレンダーへ登録

integromatでのモジュール設定

今回使うモジュールは以下の通りです。

  • Slack
  • Text parser
  • Google Calendar

モジュール別設定

Slack

履歴が流れるのを防ぐため、自身のDMか1人のプライベートチャンネルを推奨します。

DMの場合

項目 設定値
I want to watch Direct messages with a specific person
User (自分自身)
Maximum number of returned messages 5

プライベートチャンネルの場合

項目 設定値
I want to watch Messages for chosen private channel
Channel いずれかの1人用チャンネル
Maximum number of returned messages 5

Text parser

パラメータを拾いやすくするためにラベルを利用します。

項目 設定値
Pattern
^cal (?<title>[^ ]+) (?<start_at>\d+-\d+-\d+ \d+:\d+)〜(?<end_at>\d+-\d+-\d+ \d+:\d+)$
Case Sensitive checked
Text 1.Text

Google Calendar

項目 設定値
Event name 2.title
Start date 2.start_at
End date 2.end_at

Googleカレンダーの終日予定を入れる場合は、All day eventにチェックを入れておきます。

実施

2019-02-01 23:00〜2019-02-01 23:30にTestという予定をいれてみます。

  1. 以下のとおり、対象チャンネルへ送信。
  2. 動作するのを待つか強制実行します。
  3. 狙い通りにカレンダーへ登録されました。

自動で追加されることを確認できました。

まとめ

場所や説明の追記等もテンプレート構成次第で可能です。ゲストの紹介に関してはGoogleカレンダーのモジュールが対応していなかったため不可能でした。

無料プランの月辺りモジュール実行上限は1000ですが、使用するモジュールは3つ。スケジュールに入れられる時間の幅からみても無料プランで十分運用は可能だと思われます。