Compartilhar via


Conectar um bot ao Alexa

APLICA-SE A: SDK v4

Você pode configurar seu bot para se comunicar com as pessoas por meio das habilidades personalizadas do Alexa. Este artigo descreve como criar uma habilidade Alexa usando o Console de Desenvolvedores do Alexa, conectar seu bot à habilidade Alexa no Azure e testar seu bot no Alexa.

Pré-requisitos

  • Uma assinatura do Azure. Se ainda não tiver uma, crie uma conta gratuita antes de começar.
  • Um bot publicado no Azure que você deseja conectar ao Alexa.
  • Uma conta da Amazon.

Importante

O bot precisa usar o SDK do Bot Framework versão 4.8 ou posterior. Se você já tiver um bot, poderá precisar atualizar a versão do SDK. e republicar seu bot.

Criar uma habilidade do Alexa

  1. Inicie sessão no Console de Desenvolvedores do Alexa e selecione Criar habilidade.

  2. Na próxima página:

    1. Insira um nome para sua nova habilidade.
    2. Certifique-se de que a opção Escolher um modelo para adicionar à sua habilidade esteja definida como Personalizado.
    3. Certifique-se de que a opção Escolher um método para hospedar os recursos de back-end da sua habilidade esteja definida como Provisionar seus próprios.
    4. Selecione Criar habilidade.

    Escolha o modelo e a hospedagem

  3. Na próxima página:

    1. Certifique-se de que a opção Escolher um modelo esteja definida como Iniciar do zero
    2. Selecione Escolher.

    Escolher um modelo

  4. No dashboard de habilidades, em Modelo de Interação, selecione Editor JSON.

  5. No editor JSON:

    1. Substitua o conteúdo existente pelo código JSON a seguir.

      {
          "interactionModel": {
              "languageModel": {
                  "invocationName": "<your-skill-invocation-name>",
                  "intents": [
                      {
                          "name": "GetUserIntent",
                          "slots": [
                              {
                                  "name": "phrase",
                                  "type": "phrase"
                              }
                          ],
                          "samples": [
                              "{phrase}"
                          ]
                      },
                      {
                          "name": "AMAZON.StopIntent",
                          "samples": []
                      }
                  ],
                  "types": [
                      {
                          "name": "phrase",
                          "values": [
                              {
                                  "name": {
                                      "value": "<example-phrase>"
                                  }
                              },
                              {
                                  "name": {
                                      "value": "<example-phrase>"
                                  }
                              },
                              {
                                  "name": {
                                      "value": "<example-phrase>"
                                  }
                              }
                          ]
                      }
                  ]
              }
          }
      }
      
    2. Em invocationName, altere < o nome de invocação da sua habilidade> para o nome que os usuários usarão para invocar sua habilidade no Alexa. Por exemplo, se o nome de invocação da habilidade for “auxiliar do adaptador”, um usuário poderá dizer "Alexa, inicie o auxiliar do adaptador" para iniciar a habilidade.

    3. Na matriz values em types, substitua as três instâncias de <example-phrase> por frases que os usuários podem dizer para acionar sua habilidade. Por exemplo, se um usuário disser "Alexa, peça ao auxiliar do adaptador que me forneça os detalhes do adaptador do Alexa", a frase de exemplo será "fornecer detalhes do adaptador do Alexa".

  6. Selecione Salvar modelo e, em seguida, selecione Criar modelo. Isso atualiza a configuração da sua habilidade no Alexa.

Configure seu bot no Azure

Para concluir esta etapa, você precisará da ID de habilidade do Alexa. Obtenha a ID de Habilidade do Alexa na URL do Portal do Alexa ou acessando o Console do Desenvolvedores do Alexa e selecionando Copiar ID da Habilidade. Sua ID de habilidade do Alexa deverá ter um valor, como "amzn1.ask.skill.<some-guid>".

  1. Abra o Portal do Azure.
  2. Kudu a folha do recurso de Bot do Azure para o seu bot.
  3. Abra Canais e selecione Alexa.
  4. Em Configuração do canal do Alexa, insira as informações copiadas nas etapas anteriores.
    1. Em Inserir ID da habilidade, insira a ID de habilidade do Alexa copiada do Console de Desenvolvedores do Alexa.
    2. Escolha Aplicar.
    3. Copie a URI do ponto de extremidade de serviço do Alexa gerada pelo Azure.

Atualize o registro de seu bot Alexa

  1. Inicie sessão no Console de Desenvolvedores do Alexa.

  2. Procure e abra a página de configuração da sua habilidade.

  3. Selecione o Ponto de extremidade.

  4. Em Tipo de ponto de extremidade de serviço, selecione HTTPS.

  5. Em Região padrão:

    1. Insira a URI do ponto de extremidade de serviço do Alexa copiada do portal do Azure.
    2. Na lista suspensa, selecione Meu ponto de extremidade de desenvolvimento é um subdomínio de um domínio que tem um certificado curinga de uma autoridade de certificação.
  6. Selecione Salvar pontos de extremidade.

Testar e publicar sua habilidade

Se você possui um dispositivo Alexa, pode testar sua habilidade antes de publicá-la.

Confira a documentação de Desenvolvedores do Kit de habilidades do Alexa das habilidades do modelo de Voz Personalizada para obter informações sobre como testar e publicar sua habilidade na plataforma deles.

Informações adicionais

Para obter mais informações sobre as habilidades do Alexa, confira a documentação de Desenvolvedores da Amazon:

Autenticação de usuário no Alexa

A autenticação do usuário no Alexa é feita configurando e usando a Vinculação de contas às habilidades do Alexa. Para obter mais informações, confira Compreender a vinculação de contas às habilidades do Alexa. Você pode exigir a vinculação de contas quando o usuário habilitar a habilidade, ou pode exigi-la como parte de um fluxo de conversa.

Se você adicionar a autenticação do usuário como parte da conversa:

  1. Anexe um cartão de credenciais à atividade realizada. Ele será convertido em um cartão LinkAccount do Alexa que solicita que o usuário inicie sessão usando o aplicativo Alexa.

  2. Se o usuário vincular com êxito sua conta ao aplicativo, um token estará disponível em solicitações subsequentes nos dados do canal.

Próximas etapas