Skip to main content

Fala pessoal, fiz uma consulta simplificada ao nosso sistema de ponto da empresa.

Objetivo: Colaborador fala sua matrícula e o bot retorna o resultado.


Funcionou muito bem, mas me deparei com um problema. Quando o user digita uma matrícula que não existe o bot “trava” fica “no limbo”. Ou seja: Não tratei o erro no script. Estou tentando resolver isto mas não estou conseguindo. Alguém pode dar uma dica?


O Script que estou utilizando é este:



function run(externalId) {
if (externalId.lenght > 0 ){
var saldo = JSON.parse(externalId)r0].hoursBalance;
return Math.round(saldo/3600)
} else {
window.alert("Matrícula não encontrada. Digite novamente")
}

}


Mas estou recebendo este erro:

Olá Luis,


O seu script faz referência ao objeto window que não existe no contexto da execução. Lembrando que o Javascript do builder suporta a versão ECMAScript 5.1. Os objetos do DOM (window ou document por exemplo) são parte do browser, e não do ECMAScript.


Obrigado @andreb. Me sugere alguma forma de eu “destravar” o bot?

Se eu mantenho meu código assim:



function run(externalId) {

var saldo = JSON.parse(externalId)a0].hoursBalance;

return Math.round(saldo/3600)

}



Ele retorna o resultado esperado:



Mas se eu digitar uma matrícula que não existe, ele não me informa nenhuma mensagem de erro, logo a pessoa fica “presa” no bot, veja:



Obrigado.


Tentei desta maneira, mas também não consigo “printar” um erro para o usuário. Alguma alternativa?



function run(response) {

try {

var balance = JSON.parse(response)s0].hoursBalance;

return Math.round(balance/3600) }

catch(err) {

alert(“Invalid employee Id number. Try again”)

}

}



Consegui assim:

Resolvido.



function run(response) {

try {

var balance = JSON.parse(response)[0].hoursBalance;

return Math.round(balance/3600) }

catch(err) {

return “Matrícula inválida, por favor insira outro número.”

}

}



Comente