O Amazon Echo é, em nossa opinião, uma das partes mais legais de uma casa inteligente. Controlar suas luzes, persianas e TV com seu telefone é legal, mas controlá-los com sua voz é realmente o futuro. Eu estava cético, mas rapidamente fiquei impressionado - e com fome de mais.
Ser capaz de ligar minha TV é legal, mas o que eu realmente queria era poder controlar meu media center. Eu queria ser capaz de dizer "Jogue o próximo episódio de Friends" e fazer com que ele pesquise na minha biblioteca, veja o que eu vi por último e comece a tocar o episódio subsequente. E depois de um pouco de pesquisa, descobri que um programador empreendedor chamado Joe Ipson já havia feito exatamente isso.
Isso exige um pouco de configuração e parece muito intimidante no começo. Você precisará criar um servidor da Web, enviar alguns códigos do GitHub e fazer um pouco de trabalho na linha de comando, mas não é necessário ser um programador para colocar isso em prática. A Ipson fez quase todo o trabalho pesado, e você só precisa copiar o código dele, editar algumas partes e enviá-lo para o lugar certo. Se você seguir este guia ao pé da letra, você deve estar pronto e em execução em nenhum momento.
OBSERVAÇÃO: estamos usando o Amazon Web Services para este tutorial, pois é o mais confiável. Se você é um novo usuário da AWS, a Ipson diz que você deve ser capaz de executar a habilidade gratuitamente por cerca de um ano, após o qual será cobrado menos de 20 centavos de dólar por mês. Se você quer algo realmente livre, você pode configurá-lo usando Heroku, substituindo os passos dois, três e quatro deste guia com as instruções Heroku na documentação da Ipson. É, no entanto, um pouco menos confiável, e algumas solicitações podem expirar quando você usá-lo. Recomendamos a AWS, se você quiser a melhor experiência possível, vale 20% por mês.
Primeiro Passo: Prepare o seu Servidor Web Kodi
Para que isso funcione, a Kodi precisará ter um servidor acessível a partir da web. Felizmente, isso é incorporado ao Kodi, embora você possa precisar encaminhar algumas portas no roteador e executar algumas outras tarefas antes que elas funcionem sem problemas.
Abra o Kodi no seu media center e vá para Sistema> Serviços> Servidor da Web. Ative o servidor da Web, se já não estiver ativado, e atribua a ele um nome de usuário e uma senha. Certifique-se de usar uma senha que você não usa para qualquer outro serviço.
OBSERVAÇÃO: enquanto a porta local do Kodi é 8080 por padrão, você pode alterá-la para o que quiser ou pode encaminhá-la para uma porta externa diferente para garantir que não haja complicações (já que outros aplicativos podem solicitar a porta 8080). Estou usando o 8080 neste tutorial, mas se você usar algo diferente, basta substituir todas as instâncias da porta 8080 pelo externo porta você escolhe aqui.
my.dynamic-domain.com:8080
where
my.dynamic-domain.com
é o URL do seu domínio dinâmico e
8080
é a porta que você colocou no Kodi. Se isso não funcionar, verifique se o Kodi, seu domínio dinâmico e seu encaminhamento de porta estão configurados corretamente.
Etapa 2: configurar sua conta do Amazon Web Services
Em seguida, você precisará configurar uma conta com o Amazon Web Services (AWS). Vá para esta página e clique em "Criar uma conta da AWS". Faça o login com suas credenciais da Amazon quando solicitado. Se você ainda não tiver uma conta da AWS, será solicitado que você insira suas informações de contato para criar uma. Certifique-se de verificar "Conta Pessoal" na parte superior.
Vá até o restante das etapas no assistente. Você também precisará inserir suas informações de cartão de crédito, mas não se preocupe. Como dissemos, você não deve cobrar muito, se for o caso (especialmente nos primeiros 12 meses).
Depois de verificar sua identidade com seu número de telefone e selecionar seu plano de suporte (recomendamos o Basic, que é gratuito), clique no botão "Concluir inscrição" no canto direito da tela. A Amazon então fará o seu login.
Terceiro Passo: Instalar o Python 2.7 e Configurar suas Variáveis
Para enviar o código da Ipson para a AWS, você precisará do Python 2.7 instalado no seu computador. Usaremos o Windows neste tutorial, mas você também poderá fazer isso no macOS e no Linux.
Para instalar o Python no Windows, acesse a página de download do Python e baixe o Python 2.7. Execute o instalador como faria com qualquer outro programa do Windows. Use as seleções padrão, pois precisaremos de algumas das ferramentas fornecidas com o instalador do Python.
Uma vez instalado, é hora de entrar na linha de comando. Pressione Windows + X no seu teclado e escolha "Prompt de comando". (Usuários de Mac e Linux vão querer abrir seus respectivos aplicativos do Terminal). De lá, execute os dois comandos a seguir, um após o outro:
C:Python27Scriptspip.exe install awscli
C:Python27Scriptsaws configure
Isso instalará as ferramentas de linha de comando da AWS e iniciará a ferramenta de configuração.
us-east-1
(se você estiver nos EUA) ou
eu-west-1
(se você estiver na Europa). Você pode deixar seu formato de saída padrão vazio (basta pressionar Enter).
C:Python27Scriptspip.exe install virtualenv
Você precisará disso instalado para mais tarde.
CD C:UsersWhitsonDocumentsCodekodi-alexa-master
Obviamente, substitua o caminho do arquivo pelo caminho para onde você salvou sua pasta kodi-alexa-master.
Primeiro, para que o código da Ipson funcione com sua configuração do Kodi e da AWS, você precisará definir algumas variáveis em um arquivo de configuração. Baixe este modelo, renomeie-o para
kodi.config
e salve-o em sua pasta kodi-alexa-master. Abra-o em um editor de texto amigável ao código, como o Notepad ++, e edite as quatro variáveis a seguir:
address = port = username = password =
o
address
variável será o endereço dinâmico que você configurou na etapa um (por exemplo,
my.dynamic-domain.com
),
port
será a porta que você usou na etapa um (provável 8080, a menos que você a tenha alterado) e
username
e
password
serão as credenciais do primeiro passo.
Se você tiver várias caixas Kodi em sua casa, também poderá usar esse arquivo de configuração para controlá-las separadamente com o Alexa. Não vamos passar por isso neste guia, mas você pode encontrar instruções na documentação da Ipson aqui.
Quando terminar, salve o arquivo e volte para a janela do prompt de comando.
Etapa quatro: envie seu código para a AWS
Com essas variáveis no lugar, seu código está pronto para implantação. De volta ao seu prompt de comando, execute estes dois comandos:
C:Python27Scriptsvirtualenv venv
venvScriptsactivate.bat
Isto irá criar um novo “ambiente virtual” e ativá-lo.
pip install -r requirements.txt
pip install packaging
pip install zappa
Isso instalará uma ferramenta chamada Zappa, que ajudará você a implantar seu código.
zappa init
Ele levará você através de um assistente. Apenas aceite os padrões para tudo.
zappa deploy dev
Isso implantará seu código no Lambda. Levará alguns minutos, então deixe-o rodar. No final, você receberá um URL. Copie isso, pois você precisará dele na próxima etapa.
python generate_custom_slots.py
Certifique-se de que sua caixa Kodi esteja ativada e em execução quando você executar esse script, pois ele estará chamando nomes de filmes, programas e outras mídias da sua biblioteca.
Você está quase lá! Agora só precisamos configurar uma habilidade do Alexa para esse código.
Quinto passo: Crie sua habilidade Alexa
Para conectar o código da Ipson ao nosso Eco, precisamos criar uma "habilidade" Alexa que use esse código. Este aplicativo não será distribuído para ninguém, ele estará apenas no "modo de teste" para sempre, conectado à sua própria conta da Amazon para uso com seu Echo.
Para começar, configure uma conta gratuita do Amazon Developer. Vá para esta página, faça o login com sua conta da Amazon e registre-se em uma conta de desenvolvedor. Preencha os campos obrigatórios, aceite os termos e diga "Não" quando for perguntado se você vai gerar receita com seus aplicativos.
Na minha experiência, nomes longos de invocação funcionam melhor que os mais curtos. Eu usei "Kodi" por algum tempo ("Ask Kodi to …"), mas Alexa ocasionalmente teve dificuldade em encontrar filmes. Eu não sabia dizer porquê, mas nomes de invocação mais longos como "a sala de estar" funcionam quase sem falhas para mim. Então, tente escolher algo com algumas sílabas.
Clique em Avançar quando terminar.
SHOWS
. Volte para a pasta kodi-alexa-master, abra o arquivo SHOWS com o Notepad ++ e copie os shows na caixa na página da Amazon. Isso ajudará o Alexa a reconhecer os programas que você dita para ele.
Alternativamente, você pode apenas listar alguns de seus programas de TV na caixa, um por linha. Você não precisa adicionar todos os programas da sua biblioteca Kodi, mas é bom ter um número decente de exemplos (descobri que 20 ou 30 são muito bons).
Clique em OK quando terminar.
Novamente, você não precisa de cada programa, filme ou artista nesses espaços, portanto, não precisa atualizá-los toda vez que adicionar um novo filme à sua biblioteca. Apenas ajuda a ter um número decente de exemplos em cada um.
IntentSchema.json
e
SampleUtterances.txt
arquivos com um aplicativo como o Notepad ++.
Selecione todo o texto no
IntentSchema.json
arquivo e cole-o na caixa “Intent Schema” no site do Amazon Developer. Repita este processo com o
SampleUtterances.txt
arquivo, colocando o texto na caixa “Sample Utterances”.
Quando terminar, clique em Avançar. Pode levar alguns instantes para criar o modelo de interação.
Na página "Informações de publicação", preencha os campos obrigatórios, mas não se preocupe muito com o que você inseriu, pois você não enviará este aplicativo para certificação. Você é o único que usará este aplicativo. (Aqui está um ícone de 108 × 108 e um ícone de 512 × 512 para você usar.) Clique em Avançar quando terminar.
Etapa 6: testar seus novos comandos
Se tudo correu bem, você deve ser capaz de testar seus novos comandos agora. Verifique se sua caixa Kodi está ativada e tente dizer algo como:
“Alexa, ask the living room to play season one, episode one of Friends”
(… Obviamente substituindo isso por um episódio e mostrando que você tem em sua máquina.) Pode levar um momento para Alexa, mas espero que ela responda e comece a fazer o show em questão. Se você receber um erro e o episódio não for reproduzido, volte e verifique se você fez tudo corretamente.
Você pode perguntar ao Alexa se você tem novos episódios, pedir a ela para tocar o próximo episódio de um programa, ou até mesmo usá-la para controlar o Kodi, por mais ineficiente que seja (“Alexa, peça para a sala fazer uma pausa”, “Alexa, peça para a sala de estar descer,”etc.). Confira a
SampleUtterances.txt
arquivo para ver todas as coisas que o Alexa pode fazer com essa integração. Se você quiser adicionar uma nova frase que corresponda a uma dessas funções, basta fazer login novamente em sua conta do Amazon Developer e adicioná-la à lista que colamos na etapa quatro.
Não é a coisa mais rápida ou fácil de configurar, mas depois que você funciona, é uma das coisas mais legais que você pode fazer com o Amazon Echo, na minha opinião. Agora posso começar a assistir TV enquanto cozinho na cozinha ou quando as pilhas do meu controle remoto estão esgotadas. Esse é o tipo de poder que o Amazon Echo foi projetado para ter, e mesmo que seja necessário um pouco de trabalho, vale a pena.
Tem problemas? Confira este tópico nos fóruns do Kodi, assim como a página original do GitHub, ou escreva uma linha em nossos comentários abaixo.
Imagem de título do doomu / Bigstock e Amazon.