💨
Amazon Connectでオペレーション時間の判定にGoogle Calendar (日本の祝日と新規作成)を利用する
概要
- Amazon Connectで 祝日・休日にGoogle Calendar を利用する方法をまとめます。
Amazon Connect
フローを作成する
ブロック「AWS Lambda 関数を呼び出す」
- Lambda関数を呼び出す
フロック「コンタクト属性を確認する」
- 祝日・休日の判定結果を受け取る
- 名前空間:フロー キー:statusとする
次のブロックと接続する
- 「コンタクト属性を確認する」ブロックを次のブロックと接続する
Google Calendar
日本の祝日カレンダー
- Amazon Connectで利用するGoogle アカウントを用意する。
- GoogleCalendarでGoogle が一般に公開している「日本の祝日」カレンダーをインポートする。
- 設定は「祝日」をチェックして「行事」はチェックしない。
- このカレンダーの公開URLをメモしておく。
会社の休日カレンダー
- Google アカウントで新たにカレンダーを作成する。名称を「会社の休日」とする。
- 年末年始休暇など会社の休業日にイベントを設定する。(終日イベントとする)
- このカレンダーの公開URLをメモしておく。
- のちほど、このカレンダーの設定にて「特定のユーザーまたはグループと共有する」にGoogel Cloud で取得したGoogle CalendarAPIを利用するサービスアカウントのメールアドレスを登録する。
Google Calendar API
- Google アカウントにログインした状態で Google Cloud にアクセスする。
プロジェクトを新規作成
- 新しくプロジェクトを作成する。
CalendarAPI を有効化
- 「APIとサービス」から、Google CalenrarAPIを検索、選択して、APIを有効化する。
サービスアカウントの作成
- 「IAMと管理」から「サービスアカウント」でサービスアカウントを作成する。
サービスアカウントのキーJSONファイル
- 「キー」タブから、キー(鍵)を作成する。
- 生成されたJSONファイルをダウンロードする。のちにaws lambda python の実行時に使用するため保管しておく。
サービスアカウントのメールアドレス
- 生成されたサービスアカウントのメールアドレスをメモする。のちにGoogleカレンダーの恵sっていにて「特定のユーザまたはグループと共有」するにて、このメールアドレスを登録する。
AWS Lambda Python
カスタムレイヤー google-auth
- python Google-authモジュールをダウンロードして、ZIP圧縮し、aws Lambda のカスタムレイヤーに登録する。
https://zenn.dev/marchan/scraps/f20d8be018d5a4
カスタムレイヤー google-api-python-client
- python google-api-python-client-モジュールをダウンロードして、ZIP圧縮し、aws Lambda のカスタムレイヤーに登録する。
https://zenn.dev/marchan/scraps/626e64f8e255b5
Lambda python 3.12
- aws Lambda pyrhon のコードを作成する。
- 関数の戻り値について status を祝日・休日の場合'holiday'、それ以外の場合には'normal'とする。
- Google Cloud サービスアカウント キーのjsonファイルをlambda_funcition.pyと同じディレクトリにアップロードする。(同じ内容で作成する)
Discussion