I have a Bot Connector that is talking to a custom translation layer (CTL) to RulAI. The Bot Connector is correctly sending the initial webhook to the CTL. The bot itself then sends a response back with another question, however the Bot Connector is reporting the following error
Error Message type: NoMatchError, Description: No intent was identified.
The intent was intentionally left blank and the botState set to MOREDATA with a reply message. My understanding is that in this scenario the Bot Connector would effectively send a response back to the customer (as if using the Send Response block) to request the additional information. Is this correct?
Here's a sample response that is coming back to the Bot Connector:
We have tried various different formats, including removing the intent and slots parameters completely, but we still get the same error. What are we missing? I've read the API Spec over and over several times and can't see why it is failing.
I just checked with Engineering and they confirmed that when the intent is empty on the first response from the bot (first response of a bot session), this will cause an exit in the flow.
This is what they meant in the description of the intent attribute: If no intent is returned Bot Connector will treat that as a non-found intent and take the failure path in the flow.
The behavior is different in the next response (in this case, empty intent will not cause an exit).
They have created a ticket (internal) to get the documentation clarified.
OK. Do you know how we are supposed to get a message from the Bot back up to the end user via Open Messaging? What should the response look like when sending back a question?
The examples provided don't clearly illustrate that or what the response data flow looks like in the initial diagram.
"Do you know how we are supposed to get a message from the Bot back up to the end user via Open Messaging?"
I am not entirely sure I understand what you are asking...
These are 2 distinct things: Open Messaging and Bot Connector.
The 3rd party, integrated with Genesys Cloud via Open Messaging, sends customer messages to Genesys Cloud using Open Messaging Inbound Messages. This translates into a conversation of mediaType "message".
On first message, the conversation will be started, and will trigger an Architect Inbound Message flow. In this Architect Inbound Message flow, you can make use of the Call Bot Connector action to interconnect with your Bot Connector integration.
When the bot sends a reply (HTTP Response sent as a reply to the Bot Connector postUterrance HTTP Request), as this bot session is tied to a specific conversation, Genesys Cloud knows that it has to propagate the message to the 3rd party via the Open Messaging integration.
This Bot response will therefore trigger a an outbound message on your Open Messaging webhook.
If you are just sending a text reply from your bot, it should look like this Text Message.
Thanks Jerome, you have answered the question perfectly
"When the bot sends a reply (HTTP Response sent as a reply to the Bot Connector postUterrance HTTP Request), as this bot session is tied to a specific conversation, Genesys Cloud knows that it has to propagate the message to the 3rd party via the Open Messaging integration."
I have opened a support ticket as well to understand why that isn't happening in our case.
If you are referring to the first bot response you put at the beginning, saying that it causes an error in your Architect flow, then it is normal you don't see a response sent back....
If this is what you meant, just correct it as I said, not sending an empty intent on first bot response.
You can also test the message to your Open Messaging integration, using a Send Response action in your Architect flow.
If your flow and issue is about something specific, just describe it. I cannot guess.