1
0

【AWS】EventBridgeを使って,組織用・個人用のGoogleカレンダーを統合した予定通知を行いたい

Last updated at Posted at 2024-08-29

はじめに

私の所属する研究室のカレンダーには,当然自分以外の予定が大量に混在しています.
そのため,自分の参加する予定のみを抽出して,毎日通知してくれるシステムを作りたいと思ったことがきっかけです.
また,研究室のカレンダー以外にも,自分だけの予定を管理しているカレンダーもありました.
別々のカレンダーを統合して,自身に関係のある予定のみを抽出して,毎日決まった時刻に通知してくれるシステムを作成してみました.

全体概要図

全体概要図.png

使用技術

  • AWS(Amazon Web Services)
  • Python
  • Google Calendar
  • LINE Notify
  • Koyeb

※AWSでは,Event Bridge,Lambdaの二つのサービスを利用

アルゴリズム

  1. 6:00にAWS Event BridgeからLambdaにトリガーを発生させる
  2. Lambdaは,KoyebにデプロイしてあるAPIを実行する
  3. APIは,icalリンクから各カレンダーの直近2日分の予定を取得して返す
  4. Lambdaは,API実行後,LINE Notifyを用いて取得した予定を整形し,通知する
  5. 1~4を毎日繰り返す

動作例

動作例.png

ちゃんと,6:00に直近2日分の予定が送られていることが確認できました!
この日は,2つだけですが,研究室のカレンダーと個人のカレンダーで別々に管理している予定が統合され,研究室カレンダーから自分が参加する予定だけを抽出できています.

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0