Este é o meu bot LINE pessoal que me ajuda a automatizar diversas tarefas do dia a dia, como controle da casa (ar condicionado, luzes e tomadas) e controle de despesas (registrar quanto gasto por dia). Veja abaixo um tour pelos recursos.
Recomendo a todos os desenvolvedores que tentem criar seu próprio bot de bate-papo com assistente pessoal. É uma ótima maneira de praticar codificação e melhorar as habilidades de resolução de problemas. E ajuda a tornar a vida mais conveniente!
Ele é escrito em TypeScript e roda no Google Cloud Run sobre a plataforma de execução JavaScript evalaas.
Eu tenho um Raspberry Pi configurado que pode controlar luzes, ar condicionado e plugues inteligentes. Ele recebe comandos por meio do Google Cloud IoT Core, executa a ação e depois reporta ao automatron por meio de sua API.
Acompanhamento simples de despesas digitando o valor + categoria. Exemplo: 50f significa ฿50 para comida. Os dados são salvos em Airtable.
No celular, tocar no corpo da bolha (contendo a quantidade) me levará ao registro Airtable criado. Isso me permite editar ou adicionar comentários facilmente ao registro. Tocar no rodapé da bolha (contendo as estatísticas) me levará à visualização Airtable, que me permite ver todos os dados registrados.
Configurei o IFTTT para ler mensagens SMS e enviá-las para o automatron. Em seguida, ele usa o transaction-parser-th para analisar a mensagem SMS e extrair informações da transação. Em seguida, é enviado para mim como uma mensagem flexível.
No celular, os botões de resposta rápida permitem transformar rapidamente uma transação em um registro de despesas simplesmente tocando na categoria.
Certos tipos de transações podem ser automaticamente transformados em despesas, por exemplo, quando eu pego o BTS Skytrain usando o cartão Rabbit LINE Pay. Ter muitos recursos em um bot permitiu esse tipo de integração estreita.
O automatron também pode converter imagem em texto usando a API Google Cloud Vision.
O intérprete LiveScript está incluído, o que me permite fazer alguns cálculos rápidos.
POST /text
envia um comando de texto para o automatron. Isto equivale a enviar uma mensagem de texto através do LINE. Isso me permite criar uma ferramenta CLI que me permite conversar com o automatron a partir do meu terminal.
POST /post
envia uma mensagem diretamente para minha conta LINE. Isso permite que os scripts de automação residencial me informem sempre que o script for invocado.
Este projeto é um monorepo gerenciado por Rush. Ele contém vários subprojetos: