It is possible to separate user DMs according to their message type(if they are coming from an advertisement or not) and trigger a flow which is specified for DM user’s message type.
Partner needs to create an advertisement on Instagram which directs customers into the DM of Partner’s account.
Publish the MindBehind Chatbot to the Instagram channel. To do this, please follow the document on this link.
A) Put a Logic Action at the beginning of the flow to set a statement.
B) Set the statement as “If the LASTMESSAGETYPE is equals to INSTAGRAM_ADS” and set the connection of this statement to the flow you desired.
C) For the ELSE scenario, you can set a fallback connection. So, if the “if statement” is not satisfied, user will continue to the settled fallback scenario.
After the settlements above, ChatBot will be able to separate users if they forwarded to DM from Instagram Advertisement or not. Just make sure that you save and publish the bot to the Instagram channel after changes.
After the flow is designed as described and changes published to the Instagram Channel,
You can send DM to the any advertisement of partner’s Instagram Page with a random text. Since you sent DM by coming from an advertisement, you will continue on the flow that is created for advertisement DMs.
On the other scenario; if you send a DM without directed from an add, the other flow will be continued which is designed for regular DMs.
If needed, same logic for other messageTypes can also be used, detected. By following the steps below, user DMs could be separated according to mention, reels or image answers.
For Example: If LASTMESSAGETYPE equals IMAGE; — (If the user message is coming as a DM answer to the image that partner shared)
If LASTMESSAGETYPE equals INSTAGRAM_STORY_MENTION; — (If the user message is coming as a DM answer to the Story that partner shared)
If LASTMESSAGETYPE equals REELS; — (If the user message is coming as a DM answer to the Reels that partner shared)
It is also possible to separate user DMs according to its “values” instead of “types”.
By using the same structure, messageValue should be stated with the desired user message.
Warning: MessageValue is the direct message that user send, which means it is whatever the user types and sends.
If LASTMESSAGEVALUE equals merhaba; — (If the user message is “merhaba” itself, make that user follow the flow1)