Índice:
2025 Autor: John Day | [email protected]. Última modificação: 2025-01-13 06:58
Introdução
Então a história começa depois que eu deixei a porta da garagem aberta, e alguns caras entraram e bagunçaram.
Felizmente, nenhuma equipe valiosa foi perdida. Após esse acidente, decidi fazer um recurso de "cronômetro para fechar" para a porta da minha garagem.
Pré requisito:
Antes de começarmos, quero que vocês saibam qual é o meu sistema atual de controle de portas de garagem.
Tenho um abridor de porta de garagem LiftMaster, que tem 2 controles remotos, um painel de controle de parede. ligação
Além disso, comprei um link 828LM LiftMaster Internet Gateway, para que eu possa usar o app myQ para controlar remotamente meu portão para abrir ou fechar via wi-fi.
Se o seu sistema for diferente do que descrevi acima, este tutorial pode não atender às suas necessidades.
Itens necessários:
1. Um laptop / PC, com conexão à internet
- No meu caso, usei um Raspberry Pi, que é um computador de baixo custo e baixo consumo de energia, cerca de 35 $
- Ou se você tiver seu próprio servidor que funciona 24 horas por dia, 7 dias por semana, então é ainda melhor
2. Sua conta e senha LiftMaster / myQ
Como funciona
1. Vamos configurar o recurso de notificação por e-mail no aplicativo myQ, então, quando a porta da garagem abrir, receberemos uma notificação por e-mail em nossa caixa de e-mail.
2. Executamos um código para detectar novos e-mails recebidos. Se for aquele enviado do app myQ dizendo que a porta acabou de ser aberta, estamos prontos para configurar um temporizador para fechar a porta.
3. Usando outro pedaço de código para enviar o comando de fechamento da porta para o servidor myQ solicitando o fechamento da porta
A API é
4. O abridor de porta da garagem fecha a porta. Estamos prontos para ir.
Etapa 1: Instale o NodeJS em seu computador / servidor
NodeJS é uma linguagem de programação amplamente utilizada para a execução de serviços atualmente.
Neste tutorial, como me sinto mais confortável usando essa linguagem, irei usá-la.
Para instalar o NodeJS, você precisará acessar https://nodejs.org/ para fazer o download e instalá-lo.
Depois que ele for instalado com sucesso, se você for para o seu terminal, você pode apenas digitar "node -v" para verificar a versão.
Etapa 2: Configure sua conta em seu aplicativo MyQ
No seu celular, acesse sua conta myQ com sua conta e senha.
Vá para a configuração "Alerta" e crie um novo alerta, igual ao da imagem
Habilite "Alertar-me quando a porta da garagem estiver": Aberta (embora eu tenha selecionado Fechado também, mas o Aberto é o que precisamos)
Habilite a notificação por "E-mail": aqui é onde recebemos a notificação de que a porta foi aberta e configuramos um temporizador para fechar a porta.
Etapa 3: Baixe o código-fonte do GitHub
Fiz upload do código-fonte para meu GitHub:
Você pode executar "git clone https://github.com/k5dash/myQ-timer.git" ou baixar manualmente o código-fonte.
Depois que o código for baixado, vá para o seu terminal e navegue até a pasta onde você baixou
1. Execute "npm install", ele instalará todas as dependências
2. Abra email.js e substitua "YOUR_MYQ_EMAIL" pelo seu endereço de e-mail myQ, substitua "YOUR_EMAIL_PASSWORD" pela sua senha myQ
3. Configure seu endereço de e-mail e senha, provedor de hospedagem de e-mail na variável "config". Salve .
4. Execute "node email.js" e se não houver nenhum erro, o servidor está instalado e funcionando!
Etapa 4: verifique se está funcionando
Agora que o servidor está instalado e funcionando, vamos testá-lo.
1. Abra a porta da garagem.
2. Verifique se você pode receber uma notificação por e-mail dizendo que sua porta está aberta, em no máximo 30 segundos.
3. Depois de receber a notificação por e-mail, em seu terminal deverá estar dizendo "timer iniciado" e após 30 segundos dirá "tryna close now", indicação de que está enviando um comando para o servidor myQ para fechar a porta da garagem
4. Verifique agora que a luz da porta da garagem está piscando e alguns segundos depois a porta está fechada.
Se você conseguir fazer funcionar, viva! Você conseguiu. Pegue uma cerveja e descanse.