xenial-black
xenial-black17mo ago

WhatsApp integration - « welcome » intent

Hye guys Recently implemented VoiceFlow with WhatsApp. Here’s the issue : When a new user open his WhatsApp discussion the first messages set in my flow (a welcome message for example) are not displayed in the WhatsApp a window. So whatever the user replies after is get as a Global No Match by VoiceFlow, locking the user outside of any our flows. When I checked conversation history on my dashboard, I can see that the welcome messages has been sent. So I guess that WhatsApp doesn’t display it. Anyone knows why ?
6 Replies
Tico | Voiceflow Assistant
The issue you're experiencing with the WhatsApp integration seems to be related to the initial interaction between Voiceflow and WhatsApp. In Voiceflow, the first message (in this case, the welcome message) is typically triggered by a "launch" request. However, it appears that this "launch" request might not be properly triggered when a new user opens a WhatsApp conversation. To resolve this, you need to ensure that your integration code sends a "launch" request to Voiceflow when a new user starts a conversation. This "launch" request will trigger the welcome message in your Voiceflow project. Here's an example of how you might structure your code to send a "launch" request:
bot.start(async (ctx) = {
let chatID = ctx.message.chat.id;
await interact(ctx, chatID, {type: "launch"});
});
bot.start(async (ctx) = {
let chatID = ctx.message.chat.id;
await interact(ctx, chatID, {type: "launch"});
});
In this example, bot.start is a function that gets called when a new user starts a conversation. The interact function sends a request to Voiceflow's API, with the type of the request set to "launch". This triggers the start of the conversation in Voiceflow, which should then send the welcome message to the user. If you've already implemented something similar and the issue persists, it might be worth checking the logs of your integration code to see if there are any errors when sending the "launch" request. Also, ensure that your Voiceflow project is properly deployed and the API key is correctly set in your integration code. Remember, the Voiceflow API uses the user's chat ID to maintain the state of the conversation. So, if the chat ID changes (for example, if the user starts a new conversation), Voiceflow will treat it as a new user and the conversation will start from the beginning. I hope this helps! If you have further issues, don't hesitate to ask.
xenial-black
xenial-blackOP17mo ago
Thanks for your reply. do I need to replace anything in your piece of code ?
deep-jade
deep-jade17mo ago
Hey there! We ran in to the same thing with FlowBridge (a SaaS tool for connection voiceflow to social channels like WhatsApp). The thing about social channels is the user is initiating the actual conversation. So you always want to start with a 'capture' step. There are ways to do it differently (there's webhooks you can set i believe which will trigger once a user opens the conversation) but are more complex and potentially payed (When a user initiates the conversation it's free for a 24 hour window to communicate back to the user, otherwise it's considered a company initiated message, which is a paid feature of Meta)
afraid-scarlet
afraid-scarlet17mo ago
I’m glad to hear this being discussed. I’ve ran into this problem as well. One little thing I noticed is if you have a button step as your starting step and then put your intro message as the message of the local no match to that button, it will show the message first. I don’t know why but it was a work round for me.
xenial-black
xenial-blackOP17mo ago
Thanks for your answer Mike. Any screenshot to share ?
deep-jade
deep-jade17mo ago
About our tool? You can visit https://flowbridge.app

Did you find this page helpful?