É possível criar uma habilidade personalizada equivalente a pressionar o botão liga / desliga do microfone na parte superior do Amazon Echo?
Sei deste artigo no How-To Geek que esse comando de voz não está disponível por padrão:
Um recurso que achamos ausente e, surpreendentemente, dado que todo o apelo do Echo é o controle de voz, é a incapacidade de desligar o microfone por meio de um comando de voz. Se você emitir um comando para o Alexa como "Alexa, desligue o microfone", ela anunciará alegremente que não há dispositivos domésticos conectados que se encaixem nessa descrição e fornecerá instruções sobre como configurar os recursos domésticos conectados do Alexa / Echo. sistema.
Isso significa que esse recurso também não está disponível por meio de chamadas de API?
E se não for possível, por que a Amazon não suporta esse recurso?
fonte
Respostas:
Parece que não há como silenciar o microfone por voz no momento, como você sugere; esse tópico do Reddit confirma isso, mas infelizmente não consegui encontrar uma fonte oficial da Amazon para ele. O botão mudo na parte superior do dispositivo parece ser a única maneira no momento.
De maneira decepcionante, desenvolver uma habilidade para silenciar os microfones também parece ser impossível. Sua habilidade deve retornar uma resposta JSON neste formato , com as seguintes chaves:
version
- A versão da API AlexasessionAttributes
- Pares de valores-chave persistentes (para salvar dados personalizados na sessão)response
outputSpeech
- As palavras que você quer que o Alexa digacard
- Dados para um 'cartão' no aplicativo Alexa para exibirreprompt
- O texto a ser usado se o usuário não responder adequadamente e precisar ser solicitado novamentedirectives
- Ações no nível do dispositivo que são executadas usando uma interface na API AlexashouldEndSession
- Finaliza a sessão de bate-papo atual com sua habilidadeParece que qualquer resposta que controla o dispositivo é a
directive
. Em janeiro de 2017, as interfaces atuais suportadas pelo Alexa estão listadas aqui :AudioPlayer
PlaybackController
Nenhum deles fornece nenhuma interface com o microfone, então parece que você está sem sorte.
Por quê?
Eu suspeito que a Amazon deliberadamente ainda não suporta isso porque o Alexa pode ser executado em muitos dispositivos diferentes; alguns são de toque para falar, outros de toque para falar (por exemplo, o Amazon Tap) e alguns são iniciados por palavra de ativação ('sempre ouvindo'). Adicionar suporte para silenciar o microfone amarraria o Alexa muito mais perto dos dispositivos iniciados pela palavra de ativação, o que poderia ser problemático.
Além disso, o suporte ao mudo por voz pode levar a acidentes frustrantes, onde o Alexa acha que você disse "silenciar o microfone", forçando-o a se levantar e silenciar, porque agora não pode responder a você depois de silenciar .
fonte
Conecte a fonte de alimentação Alexa a uma tomada inteligente compatível com Alexa. Nomeie a tomada inteligente "Alexa". Agora você deve poder dizer para desligar.
Ligá-lo novamente terá que ser feito de outra maneira, é claro.
fonte
Uma maneira de fazer isso é a seguinte:
Se você possui um Amazon Echo, deseja ativar / desativar usando um plug inteligente.
Portanto, o Dot 2 separado é usado para ligar e desligar o plugue inteligente. O Echo está conectado ao plugue inteligente.
fonte
Eu não sou um programador, mas acho que a maneira mais inteligente de fazer isso seria desenvolver uma habilidade que faria com que o eco desconsiderasse os comandos (em vez de desligar o microfone). ele realmente não para de ouvir, mas desconsidera todos os comandos, exceto um "começa a ouvir". Tenho certeza de que alguém muito mais habilidoso do que eu descobrirá isso. É certamente uma opção de comando muito necessária. Espero que o big brother amazon esteja ouvindo.
fonte