Zoomの録画ファイル自動アップロード&自動文字起こしをterraformでできるようにしてみた

はじめに

以前書いた以下の記事の内容をそのままterraformでできるようにしてみました。

gamelinks007.hatenablog.com

gamelinks007.hatenablog.com

またついでにSlackなどに投げれるように文字起こししたファイルを受け取るLambda関数も追加してみました。

実際使う場合の構成図

f:id:gamelinks007:20210529000444p:plain

こんな感じでZoomで録画されたデータをWebhookで受け取り、Lambdaなどでよしなにする感じです。 今回のterraformに落とし込んだところでは実装していませんが、最後のSlackの部分は録画データ内に何かしらのNGワードがある場合にアラートが飛ばす感じですね。

作ったもの

github.com

使い方

まず必要な環境変数をターミナルにexportしてください。

export AWS_ACCESS_KEY_ID=xxxxxxxxxxx
export AWS_SECRET_ACCESS_KEY=xxxxxxxxx
export AWS_REGION=xxxxxxxxx
export TF_VAR_access_key=xxxxxxxxx
export TF_VAR_secret_key=xxxxxxxxx
export TF_VAR_role_arn=xxxxxxxxxx

その後、terraform initで初期化します。

terraform init

初期化が完了したらterraform planで差分を確認します。

terraform plan 

確認時に文法エラーなど無ければ、terraform applyでデプロイできます。

terraform apply

最後に作成したAPI GatewayのURLをZoomのWebhookに渡せばOKです。