Você sabia que podemos criar experiências visuais para acompanhar sua skill?
Nesse vídeo vou explicar como funciona a Alexa Presentation Language (APL).
Já fiz um vídeo sobre o que é a APL, e hoje vamos ver mais um pouco sobre a Alexa Presentation Language, vamos ver como ela funciona.
Como Funciona A Alexa Presentation Language (APL)?
Todas as skills personalizadas usam uma interface de request e response.
Se você for um desenvolvedor web já deve estar careca de ver isso.
Em resumo, a Alexa envia uma requisição à sua backend, que pode ser uma função Lambda ou webservice.
Seu código processa este request e retorna uma resposta (response). A APL funciona dentro desta estrutura:
- Sua skill recebe um LaunchRequest ou IntentRequest normal para iniciar uma interação com o usuário.
- Na sua resposta da skill, você pode retornar diretivas para dizer ao dispositivo para exibir seu conteúdo APL e executar comandos. A interface Alexa.Presentation.APL define essas diretivas. A carga desta diretiva inclui um documento APL. Ela também inclui uma fonte de dados.
- Sua skill pode escutar solicitações acionadas por ações do usuário, como quando o usuário seleciona um botão na tela. A interface Alexa.Presentation.APL também define esses tipos de solicitação. Você cria handlers no código da sua skill para aceitar e processar essas solicitações, semelhantes aos handlers que você cria para suas intenções.
- Como com qualquer skill, os usuários podem fazer solicitações de voz, que são enviadas para sua skill como uma solicitação IntentRequest normal. Para uma boa experiência, permita que os usuários interajam com sua skill tanto por voz quanto por toque e não obrigue os usuários a usar apenas um modo de entrada.
Vamos Ver Um Exemplo?
Imagine a seguinte interação com uma skill que utiliza APL e o dispositivo do usuário é um Echo Show.
Usuário: Alexa, abra Perguntas Rápidas
O Echo Show mostra uma animação de boas-vindas quando Alexa começa a falar.
Alexa: Bem-vindo ao Perguntas Rápidas! Pronto para jogar?
Usuário: Sim.
O Echo Show exibe uma lista de categorias.
Alexa: Legal, por favor, escolha a categoria que deseja jogar! Você pode dizer uma categoria ou selecionar um item na tela.
Usuário: (toca na categoria “Animais” na tela. Como alternativa, o usuário poderia ter respondido com “Jogue a categoria de animais”.)
O dispositivo exibe a pergunta sobre uma imagem relacionada.
Alexa: OK, faremos perguntas sobre animais. Aqui está sua primeira pergunta: (o texto da pergunta)…
Depois de ler a pergunta, a tela é atualizada para mostrar uma lista de respostas possíveis para escolher.
O usuário responde às perguntas por voz ou tocando nas opções na tela.
Agora Em Detalhes
1
Usuário: Alexa, abra Perguntas Rápidas
Sua skill recebe um LaunchRequest normal, em seguida, retorna uma resposta com duas partes:
- Resposta falada
- A diretiva Alexa.Presentation.APL.RenderDocument. O conteúdo desta diretiva inclui um documento APL que define uma animação de boas-vindas.
2
O Echo Show exibe uma animação de boas-vindas quando Alexa começa a falar.
Alexa: Bem-vindo ao Perguntas Rápidas! Pronto para jogar?
O Echo Show renderiza o documento fornecido em sua resposta. Este documento exibe uma animação de boas-vindas.
Quando Alexa termina de falar, o aparelho abre o microfone para ouvir a resposta do usuário.
3
Usuário: Sim.
Sua skill recebe um IntentRequest para a intenção AMAZON.YesIntent e, em seguida, retorna uma resposta que inclui a resposta falada e a diretiva RenderDocument. Desta vez, o documento APL define uma lista de categorias.
4
O Echo Show exibe uma lista de categorias.
Alexa: Por favor, escolha a categoria que deseja jogar!
O Echo Show renderiza o documento fornecido em sua resposta. Este documento exibe uma lista de categorias.
Quando Alexa termina de falar, o dispositivo abre o microfone para ouvir a resposta do usuário.
5
Usuário: (O usuário toca na categoria “Animais” na tela.)
- Sua skill recebe um request Alexa.Presentation.APL.UserEvent que indica o item que o usuário tocou.
- Seu handler para a UserEvent retorna uma resposta de voz e as diretivas RenderDocument e ExecuteCommands.
- O documento APL define duas páginas: uma página de detalhes que exibe a pergunta e uma página de resposta que exibe uma lista de respostas.
- A diretiva ExecuteCommands especifica comandos para ler o texto da pergunta exibido na tela e destaca cada linha em sincronia (SpeakItem), em seguida muda para a segunda página para exibir as respostas possíveis (SetPage).
6
O dispositivo exibe a pergunta sobre uma imagem relacionada.
Alexa: OK, faremos perguntas sobre animais. Aqui está sua primeira pergunta: (texto da pergunta)
O Echo Show renderiza o documento para exibir o texto da pergunta e, em seguida, executa o comando SpeakItem para ler o texto com realce.
7
Depois de ler a pergunta, a tela é atualizada para mostrar uma lista de respostas possíveis para escolher.
O usuário pode responder às perguntas por voz ou tocando nas opções na tela.
Quando o comandeo SpeakItem termina, o dispositivo executa o comando SetPage para mudar a exibição para a próxima página, que exibe uma lista de respostas.
Palavras Finais
Com este exemplo dá para ter uma ideia de como funciona a Alexa Presentation Language (APL).
Claro que existem muitos outros comandos que podemos utilizar.
Fora o fato desta interface estar em constante evolução, então a Amazon sempre inclui coisas novas para usarmos.
Meu e-book com 4 passos para criar sua primeira skill Alexa está GRATUITO por tempo limitado!
Olha o link: 👉🏼 http://celsokitamura.com.br/minha-primeira-skill-alexa
Bora aprender a desenvolver skills para Alexa!