Este projeto consistem é um criar 2 servidores e um aplicativo mobile para fazer a comunicação com um ESP 8266 via MQTT
O Aplicativo enviará uma requisição para API e ela mandará o servidor MQTT fazer um publisher para uma rota onde você irá determinar com a mensagem presente na requisição.
O ESP 8266 ficará ouvindo as mensagens da rota que você determinou e fazer o que você determinar dependendo da mensagem que ele está escutando.
As seguintes ferramentas foram usadas na construção do projeto:
Antes de começar, você vai precisar ter instalado em sua máquina as seguintes ferramentas: Git, Node.js, Yarn e a CLI do Expo. Além disto é bom ter um editor para trabalhar com o código como VSCode
# Clone este repositório
$ git clone https://github.com/natalnet/esp-ura-mqtt.git
# Acesse a pasta do projeto no terminal/cmd
$ cd esp-ura-mqtt
# Acesse a pasta do servidor MQTT e da API
$ cd servers
# Instale as dependências
$ yarn
# Coloque o Ip da sua máquina na linha 3 dos arquivos src/publisher.ts e subscriber.ts
# Abra o primeiro terminal aonde a API executará
$ yarn dev:server
# Um log como esse irá aparecer: Servidor iniciado na porta 4444
# Abra o segundo terminal aonde o servidor MQTT executará
$ yarn dev:broker
# O servidor executará no ip da sua máquina na porta 1883
# Um log como esse irá aparecer: Servidor rodando na porta 1883
# Abra o terceiro terminal aonde o subscriber executará
$ yarn dev:subscriber
# Ele ficará ouvindo a rota 'URA/robo1/acao' e enviar um log da mensagem dessa rota, para alterar a rota é só mudar as informações em src/mqtt/subscriber
# Uma rota do tipo post para 'http://localhost:4444/sentido' com a propriedade 'sentido' em json já está criada, você pode conferir nos arquivos src/controllers/ForwardController e routes.ts, altere os arquivos se sentir necessidade.
# Clone este repositório
$ git clone https://github.com/natalnet/esp-ura-mqtt.git
# Acesse a pasta do projeto no seu terminal/cmd
$ cd esp-ura-mqtt
# Vá para a pasta mobile
$ cd mobile
# Instale as dependências
$ yarn
# Execute a aplicação em modo de desenvolvimento
$ yarn start
# Escanei o QR CODE com o aplicativo Expo instalado no seu Smarthphone
# Vá para a pasta mobile
$ cd mobile
# Instale as dependências
$ yarn
# Execute o comando para gerar a build
$ expo build:android -t apk
# Selecione para o expo criar a keystore
# Entre com sua credenciais do expo ou crie uma
# Um link será gerado aonde você irá aguardar o expo gerar o APK do aplicativo
# Após o término você pode encontrar o link para baixar o APK na sua conta do expo
- Faça um fork do projeto.
- Crie uma nova branch com as suas alterações:
git checkout -b my-feature
- Salve as alterações e crie uma mensagem de commit contando o que você fez:
git commit -m "feature: My new feature"
- Envie as suas alterações:
git push origin my-feature
Caso tenha alguma dúvida confirá este guia de como contribuir no GitHub
Este projeto esta sobe a licença MIT.
Feito com ❤️ por Pedro henrique 👋🏽 Entre em contato!