Índice:

Como criar uma habilidade Alexa: 10 etapas
Como criar uma habilidade Alexa: 10 etapas

Vídeo: Como criar uma habilidade Alexa: 10 etapas

Vídeo: Como criar uma habilidade Alexa: 10 etapas
Vídeo: 8 dicas para usar melhor a Alexa sem gastar dinheiro! 2024, Julho
Anonim
Como criar uma habilidade Alexa
Como criar uma habilidade Alexa

O que é uma habilidade alexa?

As habilidades de Alexa são como aplicativos. Você pode ativar e desativar habilidades, usando o aplicativo Alexa ou um navegador da web, da mesma forma que instala e desinstala aplicativos em seu smartphone ou tablet. Habilidades são recursos do Alexa orientados por voz. Você pode adicionar habilidades Alexa ao seu Echo para dar vida a produtos e serviços. Você pode ver as habilidades disponíveis e habilitá-las ou desabilitá-las usando o aplicativo Alexa.

Este tutorial mostra como criar uma habilidade alexa.

Meta:

O objetivo é, criar uma habilidade, que diga ao usuário uma palavra alemã engraçada toda vez que o usuário perguntar.

Demo:

Para ver como a habilidade deve funcionar depois, você pode testá-la aqui:

www.amazon.com/gp/product/B07ZH9GL9N?ref&r…

Suprimentos

  • Conhecimento em programação
  • Noções básicas de Node.js e Javascript

Etapa 1: Crie uma conta de desenvolvedor Amazon

Crie uma conta de desenvolvedor Amazon
Crie uma conta de desenvolvedor Amazon

Desde que você não tenha uma conta de desenvolvedor Amazon, você pode se inscrever aqui. Caso contrário, você pode entrar aqui.

Etapa 2: Crie uma nova habilidade

Crie uma nova habilidade
Crie uma nova habilidade
Crie uma nova habilidade
Crie uma nova habilidade
  1. Siga este link:
  2. Clique em Criar habilidade no lado direito. Uma nova página é aberta depois.
  3. Digite o nome da sua habilidade (no nosso caso: Palavras engraçadas em alemão) no campo Nome da habilidade.
  4. Defina o idioma na caixa de seleção de idioma padrão para inglês (EUA)
  5. Vamos criar uma habilidade customizada, então escolhemos o modelo Custom
  6. Em Escolha um método para hospedar os recursos de back-end de sua habilidade, escolhemos Alexa-Hosted (Node.js)
  7. Depois de terminar, clique em Criar habilidade
  8. Uma nova janela se abre

Etapa 3: cumprimente o usuário

Cumprimente o usuário
Cumprimente o usuário

A primeira coisa que um usuário faz com sua habilidade é abri-lo. O intent, que abre a habilidade, já está implementado no código de amostra e não precisa mais ser adicionado.

  1. Abra a guia Código → A janela de código com o arquivo index.js é aberta

    Cada manipulador de intent tem duas funções

    • pode aguentar()
    • lidar()

    A função canHandle () inclui a solicitação à qual o manipulador responde.

    A função handle () envia uma resposta ao usuário.

    Se uma habilidade receber uma solicitação, a função canHandle () de cada manipulador de intent é chamada e verifica se pode enviar uma resposta a essa solicitação.

  2. Na função handle () do LaunchRequestHandler, exclua todo o código e cole o seguinte:

    const speakOutput = 'Bem-vindo às palavras engraçadas em alemão. Descubra quais palavras engraçadas a língua alemã tem a oferecer e o que significam. Quer ouvir uma palavra engraçada? ';

    const repromptText = 'Quer ouvir uma palavra engraçada em alemão?'; return handlerInput.responseBuilder.speak (speakOutput).reprompt (repromptText).getResponse ();

  3. Clique em Salvar e implantar.

O manipulador de intenções de ajuda precisa ser alterado para corresponder à habilidade. Exclua o código da função handle () e insira:

const speakOutput = 'Descubra quais palavras engraçadas a língua alemã tem a oferecer e o que significam. Quer ouvir uma palavra engraçada? ';

const repromptText = 'Quer ouvir uma palavra alemã engraçada?'; return handlerInput.responseBuilder.speak (speakOutput).reprompt (repromptText).getResponse ();

Depois de terminar, clique em Salvar e implantar.

Etapa 4: teste a saudação

Teste a saudação
Teste a saudação
Teste a saudação
Teste a saudação

Cada vez que tiver mais funcionalidade para sua habilidade, teste se realmente funciona, para descobrir em caso de erro, onde pode estar o erro.

  1. Clique na guia Teste → Uma nova janela é aberta.
  2. Ative o ambiente de teste, selecionando Desenvolvimento na caixa de seleção.
  3. Escreva ou fale: "abra palavras engraçadas em alemão" → A habilidade agora deve responder com a saudação.

Etapa 5: adicionar intents

Adicionar intents
Adicionar intents
Adicionar intents
Adicionar intents
Adicionar intents
Adicionar intents

Agora vamos adicionar oportunidades de como um usuário pode interagir com sua habilidade. Os intents tornam possível reagir corretamente após frases especiais e acionar o manipulador corret posteriormente.

  1. Clique na guia Build → A janela Build é aberta.
  2. A barra de navegação à direita mostra todos os intents ativados. Em primeiro lugar, exclua o HelloWorldIntent.
  3. Em seguida, clique no botão Adicionar ao lado da guia de intents na barra de navegação.

Em primeiro lugar, adicionamos algumas intents integradas da biblioteca integrada de Alexa

  1. Clique em Usar uma intenção existente da biblioteca integrada de Alexa
  2. Pesquise YesIntent e NoIntent e clique em adicionar por ambos.

Agora adicionamos nossa própria intenção personalizada.

  1. Clique em Criar intent personalizado
  2. Dê o nome TellAFunnyWordIntent ao intent
  3. Clique em Criar intent personalizado

Agora adicionaremos algumas frases de amostra à nossa intenção. Frases de exemplo são frases que o usuário talvez possa dizer. Basta inserir essas frases de exemplo:

  • me diga uma palavra
  • me diga uma palavra alemã engraçada
  • uma palavra
  • uma palavra engraçada
  • me dizer uma palavra

É claro que há muito mais frases que o usuário poderia dizer. Você pode estender a intenção se quiser, mas estamos nos concentrando na funcionalidade atualmente.

Após adicionar as frases, clique em Salvar Modelo e depois em Construir Modelo. Após a conclusão da construção, navegue de volta para a guia Código.

Etapa 6: adicione palavras engraçadas

Para fazer nossa habilidade dizer palavras engraçadas, ela precisa primeiro de algumas palavras engraçadas.

Para isso, crie um novo arquivo chamado words.json na pasta lambda.

Insira essas palavras no arquivo words.json:

[{"palavra": "Lebensabschnittpartner", "explicação": "Esta palavra é mais descrita como outra opção para parceiro ou amante, mas com um toque mais temporário." }, {"palavra": "Unabhängigkeitserklärungen", "explicação": "Esta palavra descreve a declaração de independência." }, {"palavra": "Freundschaftsbezeugung", "explicação": "É a demonstração de amizade." }, {"palavra": "Rechtsschutzversicherungsgesellschaften", "explicação": "O Guinness Book of World Records reconhece esta palavra pesada como a palavra alemã mais longa de uso diário. Significa companhias de seguros que fornecem proteção legal." }, {"palavra": "Kaftfahrzeug-Haftpflichtversicherung", "explicação": "Refere-se a um seguro de responsabilidade civil para veículos motorizados." }, {"palavra": "Donaudampfschiffahrtsgesellschaftskapitän", "explicação": "Esta palavra continua o tema do transporte e são quatro palavras agrupadas ordenadamente para dizer o capitão da companhia de navios a vapor do Danúbio." }]

É claro que você pode adicionar mais palavras se souber algumas. Mas, para testar, já deve funcionar.

Clique em Salvar e implantar novamente.

Etapa 7: adicionar manipuladores de intenções

Os intents criados anteriormente agora precisam de um gerenciador, que é acionado por um intent. O NoIntentHandler fecha a habilidade. O YesIntentHandler e o TellAFunnyWordIntentHandler respondem com uma palavra engraçada e sua explicação.

Exclua o HelloWorldIntentHandler inteiro do arquivo index.js e adicione três novos em seu lugar:

const TellAFunnyWordIntentHandler = {

canHandle (handlerInput) {return Alexa.getRequestType (handlerInput.requestEnvelope) === 'IntentRequest' && Alexa.getIntentName (handlerInput.requestEnvelope) === 'TellAFunnyWordIntent'; }, lidar com (handlerInput) {const words = JSON.parse (fs.readFileSync ('./ words.json')); const word = words [Math.floor (Math.random () * words.length)]; const speakOutput = word.word + '. '+ palavra.explicação; return handlerInput.responseBuilder.speak (speakOutput).getResponse (); }}; const YesIntentHandler = {canHandle (handlerInput) {return Alexa.getRequestType (handlerInput.requestEnvelope) === 'IntentRequest' && Alexa.getIntentName (handlerInput.requestEnvelope) === 'AMAZON. YesIntent'; }, lidar com (handlerInput) {const words = JSON.parse (fs.readFileSync ('./ words.json')); const word = words [Math.floor (Math.random () * words.length)]; const speakOutput = word.word + '. '+ palavra.explicação; return handlerInput.responseBuilder.speak (speakOutput).getResponse (); }}; const NoIntentHandler = {canHandle (handlerInput) {return Alexa.getRequestType (handlerInput.requestEnvelope) === 'IntentRequest' && Alexa.getIntentName (handlerInput.requestEnvelope) === 'AMAZON. NoIntent'; }, lidar com (handlerInput) {const speakOutput = 'Ok, talvez outra hora.'; return handlerInput.responseBuilder.speak (speakOutput).getResponse (); }};

Etapa 8: registrar os manipuladores de intenções

Agora precisamos registrar os novos manipuladores de intent. Para isso, vá até o final do arquivo index.js.

Substitua este:

exportações.handler = Alexa. SkillBuilders.custom ()

.addRequestHandlers (LaunchRequestHandler, HelloWorldIntentHandler, HelpIntentHandler, CancelAndStopIntentHandler, SessionEndedRequestHandler, IntentReflectorHandler, // certifique-se de que IntentReflectorHandler seja o último, para que ele não ignore seus manipuladores de intent personalizados (overrandda).

com isso:

exportações.handler = Alexa. SkillBuilders.custom ()

.addRequestHandlers (LaunchRequestHandler, TellAFunnyWordIntentHandler, YesIntentHandler, NoIntentHandler, HelpIntentHandler, CancelAndStopIntentHandler, SessionEndedRequestHandler, IntentReflectorHandler, NoIntentHandler, HelpIntentHandler, CancelAndStopIntentHandler, SessionEndedRequestHandler, IntentReflectorHandler, NoIntentHandler, HelpIntentHandler, CancelAndStopIntentHandler, SessionEndedRequestHandler, IntentReflectorHandler)

Em seguida, clique em Salvar e implementar novamente. Após a conclusão da implantação, teste a habilidade novamente.

Etapa 9: Teste a habilidade

  1. Clique na guia Teste → Uma nova janela é aberta.
  2. Escreva ou fale: "abra palavras engraçadas em alemão" → A habilidade agora deve responder com a saudação.
  3. Escreva ou fale: "diga-me uma palavra alemã engraçada" → A habilidade agora deve dizer uma das palavras.

Se tudo funcionar, você já pode enviar sua habilidade.

Etapa 10: definir a visualização da habilidade e enviar para revisão

Definir a visualização da habilidade e enviar para revisão
Definir a visualização da habilidade e enviar para revisão

Preencha todas as caixas de texto obrigatórias com sua descrição pessoal da habilidade.

Em frases de exemplo, escreva:

  • Alexa, abra Palavras engraçadas em alemão.
  • Alexa, peça ao Funny German Words para me dizer uma palavra engraçada.

Depois de preencher todos os campos obrigatórios e depois de carregar os ícones, clique em Salvar e continuar.

Escolha as respostas corretas em Privacidade e Compilância e em Disponibilidade.

Por favor, dê uma olhada na lista de verificação de envio antes de enviar

Agora você precisa fazer alguns testes. Isso pode demorar um pouco.

Depois disso, você pode enviar sua habilidade para revisão. Levará 1 ou 2 dias até que você receba um feedback sobre sua habilidade. Se você fez tudo certo, sua habilidade será publicada logo após a revisão.

Se você quiser experimentar a habilidade já, mas ela ainda está em certificação, você sempre pode usar esta habilidade:

www.amazon.com/gp/product/B07ZH9GL9N?ref&ref=cm_sw_em_r_as_dp_uCOJljYBKfNx9

Recomendado: