1
resposta

Como pegar um dado variável e colocar no slot

Como faço para criar uma variável que possa armazenar o nome de uma pessoa? Fiz uma interação que solicita o nome eu criei o slot nomes, lá eu coloquei uma lista de nomes previstos, mas quero saber como faço pra pegar o nome e repetir na interação?

1 resposta

Oi Edson, tudo bem?

Sinto muito pela demora em te retornar.

O primeiro passo é relacionar o slot a intent que foi criada. E para fazer isso, é necessário colocar o nome do slot na intent através de chaves, por exemplo: {nomes}, como mostra a figura abaixo:

image

Já para capturar o nome, no código você pode fazer algo como:

nome = handler_input.request_envelope.request.intent.slots['nomes'].value

Com isso, irá saber o nome do slot que foi falado e utilizá-lo para a Alexa repetí-lo. Suponha que você pergunte o nome de uma pessoa e após isso, a Alexa diga: Oi fulano, prazer te conhecer., então um exemplo de código seria o seguinte:

nome = handler_input.request_envelope.request.intent.slots['nomes'].value
speak_output = "Oi " + nome + " prazer te conhecer."

Observação: Lembre-se sempre de salvar o modelo e fazer o build do mesmo.

Qualquer dúvida estou por aqui, tá bom?

Abraços!