Vou mostrar aqui uma integração que eu fiz com o Alexa Media + Node Red.
A ideia aqui é mostrar a parte de segurança dessa integração, onde permite que tenhamos mais segurança ao acionar a nossa “skill personalizada” ou qualquer outra que criemos… Não achei isso em lugar nenhum… e se tratando de segurança achei um pouco falho o Alexa Media Player…
Trata-se da skill prosseguir com reconhecimento de voz. Estou usando já algumas semanas e não tive nenhum problema.
Para fazer essa integração é necessário ter instalado
ALEXA MEDIA PLAYER
https://forum.homeassistantbrasil.com.br/t/alexa-actions-batendo-papo-com-a-alexa/3138/5
Dado que todas as integrações foram realizadas, vamos primeiro habilitar na “SKILL PERSONALIZADA” o reconhecimento de voz.
HABILITAR ID DA VOZ NA SUA SKILL
Para fazer isso entre em sua “SKILL PERSONALIZADA” → “PERMISSIONS” habilite a opção “SKILLS PERSONALIZATION” via https://developer.amazon.com/
Para capturar o ID da sua voz precisamos criar um nó no NODE RED do tipo “EVENT ALL” para escutar os eventos do tipo “alexa_actionable_notification” amarrado com um nó do tipo “DEBUG”
Precisamos que seja trigado o evento, e vamos ter uma saída parecida com essa:
O dado q nos importa agora é a saída o valor do campo “payload.event.event_person_id”.
Capture o ID de todas as pessoas da sua casa (OBS: Uma dica, fale varias vezes em diferentes cômodos da sua casa, pois para uma mesma pessoa pode ter 2 IDS… eu por exemplo tenho 3 ids um que falo da sala e outro do quarto hehehehehe)
UFA até aqui tudo bem?
SECRETS.YAML
Agora vamos pegar esses Ids e ir no secrets.yaml e colocar lá…
Reinicie seu H.A…
Agora vamos voltar no NODE RED…
Vamos primeiro criar um SUBFLOW para capturar as variáveis do secrets… para isso vou deixar um tutorial aqui…
Eu criei um SUBFLOW… fica mais fácil… ai fica a preferencia de cada um…
Estamos quase chegando galera…
CONFIGURANDO CONFORME SUA NECESSIDADE
No meu caso galera… a skill que eu tenho eu falo “Alexa me ajude” e ela me pergunta o que eu quero… e nessa eu vou passando vários comandos para Alexa e ela executa para mim até eu falo “não quero mais”… algo parecido com essa automação que achei na internet…
Então para a minha necessidade, eu criei um Subflow que:
1 – Carrega os Secrets
2 – Fica ouvindo todos eventos da alexa
3 – Toda resposta diferente de NONE (ou seja SIM, NÃO ou SELECT)
4 – Função se eu eu tenho permissão
5 – Switch para CONTINUAR O FLUXO ou DAR A MENSAGEM DIZENDO Q NÃO TENHO ACESSO A SKILL
SUBFLOW
FLOW PRINCIPAL
Como disse, isso depende de cada aplicação e necessidade… o core do negocio da segurança é a ideia… vou deixar o código da função (item 4 descrito um pouco acima) VERIFICA SE TEM PERMISSÃO
var personId = msg.payload.event.event_person_id;
for (let item of global.get(“event_person_id”)) {
if(item == personId)
{
msg.permissao = “true”;
}
}
return msg;
Espero que tenha contribuído e ajudado alguem do fórum galera…