Site de blogs
Detalhes de contato | [email protected]
Este não é um código pronto para produção, mas sim um POC avançado.
Eu o uso para converter o texto do meu blog em áudio por motivos de acessibilidade.
Ele carrega qualquer arquivo de texto na pasta /text para o S3, transforma-os em arquivos .mp3 e os envia de volta para um endereço de e-mail.
O endereço de e-mail está codificado no arquivo service/logic/email.py e pode ser alterado.
Aqui está um mergulho profundo no design: https://www.ranthebuilder.cloud/post/serverless-empowers-accessibility-convert-text-to-speech-with-amazon-polly
Importante: certifique-se de ativar o SES para enviar e-mails para o endereço de e-mail escolhido https://docs.aws.amazon.com/ses/latest/dg/creating-identities.html
Fiquei inspirado a projetar uma solução para mim mesmo depois de ver este excelente vídeo no YouTube de Johannes Koch e Jimmy Dahlqvist.
Para o design do serviço e mais informações, confira minha postagem no blog aqui.
Fluxo de eventos:
Isso é definitivamente uma melhoria, mas foi apenas um POC rápido para automatizar minhas necessidades pessoais e fornecer um exemplo de código para uma postagem no blog.
Em um código de produção, você deve usar uma máquina de estado de função de etapa que aguarda até que a tarefa seja concluída.
Para minhas necessidades, desejo fazer upload do arquivo mp3 para meu site e removê-lo de minha conta pessoal da AWS. Você pode alterar o comportamento como desejar.
poetry config --local virtualenvs.in-project true
para que todas as dependências sejam instaladas na pasta '.venv' do projeto.make dev
poetry install
Crie uma pilha de cloudformation executando make deploy
.
CDK destroy pode ser executado com make destroy
.
Execute make pr
. Este comando executará todas as verificações necessárias, ganchos de pré-commit, linters, formatos de código, flake8 e testes, para que você possa ter certeza de que o pipeline do GitHub será aprovado.
O comando corrige automaticamente erros no código para você.
Se houver um erro no estágio de pré-confirmação, ele será corrigido automaticamente. No entanto, é necessário executar make pr
novamente para que ele continue nas próximas etapas.
Certifique-se de confirmar todas as alterações que make pr
faz para você.
O CDK requer um arquivo requirements.txt para criar um arquivo zip com as dependências da camada Lambda. É baseado no arquivo poetes.lock do projeto.
O comando ``make deploy` irá gerá-lo automaticamente para você.
Este arquivo é usado durante o GitHub CI para instalar todas as bibliotecas Python necessárias sem usar poesia.
O conteúdo do arquivo é criado a partir do Pipfile.lock.
Os comandos make deploy
make deps
geram-no automaticamente.
Coloque um arquivo de texto (.txt) na pasta /text. Implante a pilha CDK com o comando 'make deploy'.
Ele será carregado em um bucket S3 e transformado em um arquivo mp3 enviado a você por e-mail.
O endereço de e-mail é codificado e pode ser encontrado no arquivo service/logic/email.py.
Ao adicionar um novo arquivo: você pode fazer upload diretamente para o bucket ou adicioná-lo à pasta /text e executar 'make deploy'.
Contribuições de código são bem-vindas. Leia este guia.
Leia nosso código de conduta aqui.
Esta biblioteca está licenciada sob a licença MIT. Veja o arquivo LICENÇA.