@Bruno Ferreira aqui eu também tenho um bot para as chamadas de API. Nos blocos onde direciono para esse sub bot, eu não envio para o Início após o redirecionamento. Deixo o redirecionamento nas ações de entrada, coloco “Aguarda resposta do usuário” e nas condições de saída eu coloco o próximo bloco que quero que vá depois de chamar a API.
Boa noite @Lucas Ventura deixa eu ver se entendi, depois que vc sai do bloco onde vc redireciona para o bot de api vc nao manda para o inicio do bot de api depois de redirecionar vc deixa o redirecionamento na açao de entrada do bot de api e deixa uma mensagem de aguarda resposta do usuário e depois que eue executou a api vc poe o proximo bloco que vc quer enviar depois de chamar a api ?
Só pra ver se entendi depois que vc chama a api vc deixa fico pra onde vc tem que devoler depois de passar por ela ?
Não ficou muito claro pra mim ...
@Bruno Ferreira Não…
Segue exemplo abaixo.
Bot X:
1- Criar um bloco onde vc quer chamar a api “ API] Busca informações do cliente”.
2- Criar um script nas ações de entrada do bloco acima para retornar um json com pelo menos { “uri”: “/get_user_info”, “param”: “contact.phoneNumber”, “botOrigem”: “bot x” (mesmo nome que está no serviço desse bot X no seu Router) } (neste caso a api recebe o telefone e retorna informações do cliente).
3- Criar redirecionamento (após o script) enviando para o bot de API e passando o json do script acima como entrada do usuário.
4- Nos conteúdos deixar a opção “Aguardar entrada do usuário”, pois o retorno da API chegará nesse bloco como se fosse o input.content.
5- Nas ações de saída vc cria uma variável “status” e o valor dela será {{input.content@status}}.
6- Nas ações de saída vc cria outra variável “body” e o valor dela será {{input.content@body}}.
7- Nas ações de saída vc cria um script que recebe o body e trata as informações que vem da API do jeito que vc quer.
Bot API:
1- Cria um bloco após o início que que valida nas condições de saída → Se input.content@uri for igual a “/get_user_info” vai pro bloco “/get_user_info”.
2- No bloco /get_user_info vc cria o http que faz a requisição.
3- Nas condições de saída do /get_user_info vc envia para um outro bloco “Redireciona bot origem”.
4- No bloco “Redireciona bot origem” vc cria o redirecionamento colocando o serviço como input.content@botOrigem e na entrada do usuário vc pode mandar um json como exemplo: { “status”: apiStatus, “body”: apiBody }
@Bruno Ferreira caso queira fazer isso em qualquer outro local via api pode seguir o guia :
@Bruno Ferreira caso queira fazer isso em qualquer outro local via api pode seguir o guia :
uma pergunta por exemplo eu tenho 1 bot só e quero redirecionar dentro desse próprio bot para outro bloco, eu preciso usar as 2 requests ou somente a de mandar para o bloco? Pq fui fazer um teste aqui com o postman ele retorna 200 mas ele não manda para o bloco que desejo, simplesmente não acontece nada.