The idea is that once the user enters the desired Source Name, the on_bot_message is triggered and the BotKit SDK insert a template response as explained here
But, I must be missing something, the DebugLog console shows that it is Transitioning from SourceName to Source. but it ends with Standard question ‘Discarding the task since we did not find any options for a list or lookup.’ identified
Hi @yanluis.ulloa,
Below is transition steps till the node “Source” for the dialog “find a flight”.
→ User enters the value for entity “SourceName” in the dialog.
→ This is passed to the bot kit as the “GetSourceAirports” webhook node is called.
→ In the botkit at BotKit/FindAFlight.js at master · Koredotcom/BotKit · GitHub, the logic has been written at webhook event as if the component is “GetSourceAirports”, then invoke the function findAirports() with searchterm as data.context.entities.SourceName
→ findAirports(searchterm) would call the endpoint and the list of airports will be received as response. sourceAirports is created and added to context from bot kit to store the airportResults. This variable is sent back to the platform which is used at the entity “source” to have the list.
So,in the dialog “find a flight”, the entity “Source” is dependent on the “sourceAirports”. Now that you have modified the dialog and have removed the webhook node “GetSourceAirports”, the entity couldn’t have the list and so the execution stopped.
I’ve moved the logic you pointed from the *on_webhook to the on_bot_message in order to set the value of data.context.sourceAirports. No success anyway. Or, should I set the value of data.context.sourceAirports in the on_user_message message and the message template to render UI components in the on_bot_message?.
It is really confusing me. So, I’ve come with the following questions:
Can I make the flow I’m trying to accomplish without using webhook at all?
Can someone provide an example of a transition between two dialogs using the BotKit SDK without using webhooks*?