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