Kommunicate provides a smooth one-click integration with Dialogflow. In case you are not able to set it up and get it working, here is the troubleshooting guide for you:

Make sure your API version is in sync

When you integrate a Dialogflow bot in Kommunicate Dashboard, it asks you which API  version you are going to use. In case you have upgraded the bot in dialogflow from V1 to V2, don’t forget to update it in Kommunicate Dashboard. We recommend you to upgrade all your bots to V2 API as there are certain features which only work with Dialogflow V2. Hence, we highly recommend shifting to Dialogflow V2 API.

Test your bot in Dialogflow’s “Try it out” section

Once configured, you should check your bot in Dialogflow’s  “Try it out” section. If your bot is not working as expected, you need to check the configured intents and entities.

Working with fulfillment

You can inspect the fulfillment request and response by clicking on the “Diagnostic info” button on your Dialogflow console. The response you want to send to the user should be inside the fullfillmentMessages Array. You can use actionable rich messages as well as text response. Here is the sample image from Dialogflow console.
 

Use context parameters

Kommunicate server sends the below context parameter along with every message to Dialogflow. Dialogflow further sends it to your webhook as the part of originalDetectIntentRequest. You can utilize this information to write your business logic or to call Kommunicate APIs:

"originalDetectIntentRequest": {
"payload": {
"groupId": "unique groupId assigned to conversation",
"source": "message source ie. Android, IOS, Web etc. ",
“applicationId”: “your application id”,
“botId”: “kommunicate id of the bot”
}
}

The bot is not starting the conversation

When a new conversation is created, Kommunicate triggers a WELCOME event. You can write the Welcome Message or configure an actionable message as the response of this event. You can enable the default welcome intent of Dialogflow or create a new event and add the WELCOME event in it.

Bot assigns the conversations to agents if it’s not able to answer

You can give agent handoff capability to your bot easily. The action input.unknown helps you to achieve this. Kommunicate server treats this action as a sign of agent’s handoff and applies the existing Conversation Routing rule on the conversation as soon as input.unknown action is detected. 

input.unknown action is associated with Default fallback intent by default. But you can add this action in a new intent to enforce the routing rule on the conversation. If you want to bot keep replying and don’t wish to add any agent in conversation you can remove the input.unknown action from intent.

Alternatively, you can assign the conversation to a specific agent by passing agent id in the custom payload as described here.

 

 

Hope this helps. If you have any questions or need more information, message us on chat or email us at support@kommunicate.io.

Author