NODE-RED-CONTRIB-ALEXA-HOME-SKILL. Controle por voz pelos Amazon Echo qualquer coisa que possa ser integrada ao Node-Red

O “node-red-contrib-alexa-home-skill” ( Node-RED Alexa Home Skill Bridge), é um nó que, através da criação de dispositivos virtuais e uma Skill Alexa, permite que os dispositivos Amazon Echo controlem por voz qualquer coisa que possa ser integrada ao Node-Red, sem a necessidade de criação de uma skill própria.

A Skill Alexa utilizada ainda não está disponível no Brasil, mas, através de um processo simples de migração para conta americana poderá ser instalada, e após, a conta poderá ser migrada novamente para o Brasil, e a skill continuará funcionando.

Informações do site:
“Este nó e serviço permitem que você crie seus próprios “dispositivos” para trabalhar com o sistema Home Skill do Amazon Echo, dando a você controle de voz sobre basicamente qualquer coisa com a qual possa interagir com o Node-RED. Há suporte não apenas para coisas como Belkin WeMo e Philps Hue, mas também para uma grande variedade de dispositivos homebrew. Você também pode usar o Alexa para iniciar sequências de eventos, não apenas ações discretas de tipo liga / desliga.”

Primeiramente é necessário criar uma conta no link:

https://alexa-node-red.bm.hardill.me.uk/

Clique em “Register”;
adicione um nome de usuário, e-mail e senha, conforme as instruções;
Clique no botão “Register”.

Faça login na página com estas informações utilizadas no registro e as guarde para utilização no Node-Red.

Clique em “Devices” na parte superior da página:

Para criar um novo dispositivo, clique no botão “Add Device”.

Dê um nome para o dispositivo (no exemplo, “Testando”);
Coloque uma descrição;
Marque as caixas de seleção “On” e “Off”;
Selecione o tipo de dispositivo. No exemplo, uma luz (light);
Clique em “OK”.

Como pode ser verificado há outros dispositivos e opções a serem explorados, porém não serão utilizados neste tutorial.

O dispositivo será criado:

Crie outros dispositivos que desejar controlar pelo Node-Red/Amazon Echo e pode fazer “Logout”.

Migre a conta da Amazon Brasil para a Amazon americana (há vários videos no Youtube explicando como fazer).

Na conta americana entre no App Alexa e pesquise pela Skill “Node-Red” (com o ícone da imagem):

image

Selecione a Skill e a habilite.

Pode migrar novamente para a contra brasileira da Amazon.

No App Alexa pesquise por novos dispositivos e serão encontrados os dispositivos virtuais criados anteriormente (Neste exemplo, somente “Testando”).

Em seguida configuramos o Node-Red.

Abra o Node-Red e instale o “node-red-contrib-alexa-home-skill”, no “Menu”, “Manage Palette”.

image

Em “Install” pesquise pelo node “node-red-contrib-alexa-home-skill” e clique no botão “Install”.

image

Após instalado serão criados os seguintes nós:

image

Para configuração e exemplo vamos configurar um fluxo que ligue uma lâmpada através de comando de voz para o Amazon Echo, utilizando o dispositivo virtual “Testando”, que foi criado anteriormente.

01 alexa-home
01 switch
02 call services
02 debugs (opcionais; apenas para verificar as saídas)

Configure o “alexa-home” clicando no ícone de lápis, à frente de “Account”:

image

Em “Username” e “Password” insira o nome de usuário e senha criados no registro da página em que foram criados os dispositivos virtuais.

image

Clique em “Add” e em “Done”.

Configure o “switch” conforme a imagem abaixo:

image

Configure os “call service” conforme as imagens abaixo (um como “turn_on” e outro como “turn_off”):

image

image

Neste exemplo foi utilizada uma lâmpada do escritório, porque anteriormente foi criado o dispositivo virtual “light”.
Poderia ser utilizado “smartplug”, “switch”, etc.

Nos “debug” não precisa alterar nenhum parâmetro.

Clique em “Deploy” e verificará que no “alexa-home” aparecerá informando que está conectado (“connected”)

Para teste diga ao dispostivo Amazon Echo “Alexa ligar Conectando” e “Alexa desligar Conectando”, para ligar e desligar a lâmpada, respectivamente.

No “Debug Messages”, pode ser verificado as saídas geradas pelos “debug” (true e false).

No exemplo foi utilizado um nome qualquer, porém na prática seria utilizado nome mais significativo.

Também poderia ser criadas rotinas no App Alexa e chamadas estas rotinas para acionar os dispositivos virtuais criados, utilizando o Node-Red.

Enfim, há várias possibilidades que poderão ser exploradas!

Observação: Pode ter somente 01 (um) “alexa-home” no Node-Red. (EDITADO *)
EDIÇÃO: Pode ter tantos “alexa-home” quantos dispositivos foram criados

Aproveito par incluir também a informação de configuração do Switch:
Funcionaria utilzando saídas “true” ou “false”, porém há diversos comandos próprios para o nó, então configurar o “Property” como “command” (msg.command) e os comandos específicos para a utilização. No caso de ligar e desligar as saídas do Switch serão: TurnOnRequest e TurnOffRequest.
Comandos:

  • TurnOnRequest
  • TurnOffRequest
  • SetPercentageRequest
  • IncrementPercentageRequest
  • DecrementPercentageRequest
  • SetTargetTemperatureRequest
  • IncrementTargetTemperatureRequest
  • DecrementTargetTemperatureRequest
  • GetTemperatureReadingRequest
  • GetTargetTemperatureRequest
  • SetLockState
  • GetLockState
  • SetColorRequest
  • SetColorTemperatureReques
1 Like

Como assim só pode ter um alexa-home no node-red? Não consigo cadastrar vários dispositivos para fazer várias cenas?

Da uma lida aqui:

Desculpa a demora e o erro nesta informação. Pode ter tantos quantos dispositivos foram criados!
Vou atualizar.