ブログのウェブサイト
連絡先の詳細 | [email protected]
これは本番環境に対応したコードではなく、より高度な POC です。
アクセシビリティ上の理由から、ブログのテキストを音声に変換するためにこれを使用しています。
/text フォルダー内のテキスト ファイルを S3 にアップロードし、.mp3 ファイルに変換して電子メール アドレスに送り返します。
電子メール アドレスは、service/logic/email.py ファイルにハードコードされており、変更できます。
設計の詳細は次のとおりです: https://www.ranthebuilder.cloud/post/serverless-empowers-accessibility-convert-text-to-speech-with-amazon-polly
重要: 選択した電子メール アドレスに電子メールを送信できるように SES が有効になっていることを確認してください https://docs.aws.amazon.com/ses/latest/dg/creating-identities.html
Johannes Koch と Jimmy Dahlqvist によるこの優れた YouTube ビデオを見て、自分でソリューションを設計するインスピレーションを得ました。
サービス設計と詳細情報については、こちらの私のブログ投稿をご覧ください。
イベントの流れ:
これは間違いなく改善ですが、これは私の個人的なニーズを自動化し、ブログ投稿のコード例を提供するための簡単な POC にすぎません。
実稼働コードでは、タスクが完了するまで待機するステップ関数ステート マシンを使用する必要があります。
私のニーズとして、mp3 ファイルを自分のウェブサイトにアップロードし、個人の AWS アカウントから削除したいと考えています。必要に応じて動作を変更できます。
poetry config --local virtualenvs.in-project true
を実行してください。make dev
を実行しますpoetry install
を実行するmake deploy
実行して、cloudformation スタックを作成します。
CDK destroy は、 make destroy
で実行できます。
make pr
実行します。このコマンドは、必要なすべてのチェック、コミット前フック、リンター、コード形式、flake8、およびテストを実行するため、GitHub のパイプラインが確実に通過することができます。
このコマンドは、コード内のエラーを自動的に修正します。
コミット前の段階でエラーがあった場合は、自動的に修正されます。ただし、次のステージに進むためにmake pr
再度実行する必要があります。
make pr
行うすべての変更を必ずコミットしてください。
CDK では、Lambda レイヤーの依存関係を含む zip ファイルを作成するために、requirements.txt が必要です。これはプロジェクトの詩.lock ファイルに基づいています。
「makedeploy」コマンドを実行すると自動的に生成されます。
このファイルは、GitHub CI 中に、詩を使用せずに必要なすべての Python ライブラリをインストールするために使用されます。
ファイルの内容は Pipfile.lock から作成されます。
make deploy
make deps
により自動的に生成されます。
テキスト ファイル (.txt) を /text フォルダーに置きます。 「makedeploy」コマンドを使用して CDK スタックをデプロイします。
これは S3 バケットにアップロードされ、mp3 ファイルに変換されて電子メールで送信されます。
電子メール アドレスはハードコードされており、service/logic/email.py ファイルにあります。
新しいファイルを追加する場合: バケットに直接アップロードすることも、/text フォルダーに追加して「makedeploy」を実行することもできます。
コードの貢献は歓迎されます。このガイドをお読みください。
ここで私たちの行動規範をお読みください。
このライブラリは、MIT ライセンスに基づいてライセンスされています。 LICENSE ファイルを参照してください。