# How to Start a Workflow Based on Broadcast Response

When you send out bulk messages, you may receive a massive influx of messages in response to an offer or survey. Workflows allow you to quickly respond to and segment these messages.

### Benefits of Starting a Workflow Based on Broadcast Response <a href="#benefits_of_starting_a_workflow_based_on_broadcast_response" id="benefits_of_starting_a_workflow_based_on_broadcast_response"></a>

* Separate broadcast responses from other messages
* Segment contacts according to their responses
* Easily handle a large response to broadcasts

### Methods for Starting a Workflow Based on Broadcast Response <a href="#methods_for_starting_a_workflow_based_on_broadcast_response" id="methods_for_starting_a_workflow_based_on_broadcast_response"></a>

* Method 1: Send a broadcast message to make an announcement and set up an automatic response.
* Method 2: Send a broadcast message with a multiple-choice question and set up an automatic response based on replies.

### Method 1: Send a broadcast message to make an announcement <a href="#method_1_send_a_broadcast_message_to_make_an_announcement" id="method_1_send_a_broadcast_message_to_make_an_announcement"></a>

**Method Objectives**

* Set up an announcement as a broadcast to the Contacts.
* Automatically check if the message received is a response to a broadcast.

### **Set up an announcement as a broadcast to the Contacts**

{% hint style="info" %}
**Tip:** Learn more about [how to set up a broadcast here](/ismessenger/modules/broadcast/broadcast.md).
{% endhint %}

**Step 1**: Go to the Broadcast module and set up a broadcast. For message content, select **Add** **Content** > **Text Message** and provide an announcement that will be sent as a broadcast.

**Step 2**: Set up the Workflow with a Trigger condition and a Branch condition to filter responses.

**Setting** **Workflow Trigger for when a conversation is opened by Contact**

{% hint style="info" %}
**Tip:** Learn more about [Triggers here](/ismessenger/modules/workflow.md).
{% endhint %}

1. Select **Source** from the **Trigger Conditions** dropdown to start the Workflow with the Conversation Opened Trigger.
2. Select **is equal to** from the **Category** dropdown list.
3. Select **Contact** from the **Operator** dropdown list.

<figure><img src="https://files.helpdocs.io/9e3syfbzn8/articles/ktbqajwlqc/1695105025217/conversation-open-trigger.png" alt="Conversation open trigger for workflow"><figcaption></figcaption></figure>

### **Setting Branch options to check the message source and content**

1. Add a Branch to the workflow and select **Last Outgoing Message Source** from the **Category** dropdown list.
2. Select **is equal to** from the **Operator** dropdown list.
3. Select **Broadcast** from the **Select** dropdown list.
4. Click **Add Condition** to add another condition.
5. Click the **And** operator.
6. Select **Last Outgoing Message** from the **Category** dropdown list.
7. Select **contains** from the **Operator** dropdown list.
8. Enter the message sent in the broadcast on the **Select** field to signify which broadcast message this response is for.

<figure><img src="https://files.helpdocs.io/9e3syfbzn8/articles/ktbqajwlqc/1695105114003/last-outgoing-message-source.png" alt="Branch options"><figcaption></figcaption></figure>

### **Automatically check if the message received is a response to a broadcast you sent**

When a message is received from a Contact, this Workflow checks if the message is the response to a broadcast message sent by you; if yes, it checks what the broadcast message was. If the text of the broadcast message is the one you have set the response for, the Workflow will proceed, else it will end.

### Method 2: Send a broadcast message with a multiple-choice question in the broadcast <a href="#method_2_send_a_broadcast_message_with_a_multiple_choice_question_in_the_broadcast" id="method_2_send_a_broadcast_message_with_a_multiple_choice_question_in_the_broadcast"></a>

**Method Objectives**

* Send a multiple-choice question or question with limited responses as a broadcast to the Contacts.
* Automatically check if the message received is the response to your broadcast.

**Send a multiple-choice question or question with limited responses as a broadcast to the Contacts**

**Step 1**: Go to the Broadcast module and set up a broadcast. Under Content, select **Multiple Choice** to ask a Multiple Choice question. You can also use Text Message to ask a simple yes or no question.

{% hint style="info" %}
**Tip:** Learn more about [how to set up a broadcast here](/ismessenger/modules/broadcast/broadcast.md).
{% endhint %}

{% hint style="info" %}
**Tip**: For WhatsApp template messages, [use Quick Replies](/ismessenger/messaging-channels/whatsapp.md).
{% endhint %}

**Step 2**: Set up the Workflow with a Trigger condition and a Branch condition to check if the last sent message was a Broadcast.

**Setting** **Workflow Trigger for when a conversation is opened by contact**

{% hint style="info" %}
**Tip:** Learn more about [Triggers here](/ismessenger/modules/workflow.md).
{% endhint %}

1. To start the workflow with the Conversation Opened Trigger, ensure that the **Conversation Opened trigger** is selected.
2. Expand the **Trigger Conditions** menu and select **Source** from the **Trigger Conditions** dropdown.
3. Select **is equal to** from the **Category** dropdown list.
4. Select **Contact** from the **Operator** dropdown list.

<figure><img src="https://files.helpdocs.io/9e3syfbzn8/articles/ktbqajwlqc/1695105218139/setting-workflow-trigger-for-convo-opened-by-contact.png" alt="Setting workflow trigger for conversation opened by contact"><figcaption></figcaption></figure>

**Setting Branch options to check the message content**

{% hint style="info" %}
**Tip:** Learn more about [using the Branch Step here](/ismessenger/modules/workflow.md).
{% endhint %}

{% hint style="info" %}
**Tip:** Learn more about [Triggers here](/ismessenger/modules/workflow.md).
{% endhint %}

1. Add a Branch to the workflow (for each choice) and select **Last Outgoing Message Source** from the **Category** dropdown list.
2. Select **is equal to** from the **Operator** dropdown list.
3. Select **Broadcast** from the **Select** dropdown list.
4. Click **Add Condition** to add another condition.
5. Click the **And** operator.
6. Select **Variable** from the **Category** dropdown list.
7. Select **conversation.first\_incoming\_message** from the **Field** dropdown list.
8. Select **is equal to** from the **Operator** dropdown list.
9. Enter the text of the first choice (of the multiple-choice question) in the **Select** field.

Once done, create a new branch for the next option until all choices have been handled.

<figure><img src="https://files.helpdocs.io/9e3syfbzn8/articles/ktbqajwlqc/1695106098346/setting-last-outgoing-message-source.png" alt="Setting Branch options to check the message content"><figcaption></figcaption></figure>

### **Automatically check if the message received is the response to your broadcast**

When a message is received from a Contact, this workflow checks if the message contains one of the options from the multiple-choice questions sent via broadcast message. If yes, then the workflow will proceed, else it will end.

### Setting up Workflow for automatic responses <a href="#setting_up_workflow_for_automatic_responses" id="setting_up_workflow_for_automatic_responses"></a>

{% hint style="info" %}
**Tip:** Learn more about the [Send a Message Step here](/ismessenger/modules/workflow.md).
{% endhint %}

For this example, we will send a new product brochure to the Contact interested in our new product brochure.

1. Add the **Send a Message** step to the relevant branch.
2. Select **File or Image** from the **Message Type** dropdown list.
3. Select a file or image.

{% hint style="info" %}
**Tip:** Learn more about the Send a Message Step here.
{% endhint %}

<figure><img src="https://files.helpdocs.io/9e3syfbzn8/articles/ktbqajwlqc/1668764574628/workflow-response-6.png" alt="screenshot of sending a message with attachment from a workflow"><figcaption></figcaption></figure>

{% hint style="info" %}
**Tip:** Another option in response to certain replies is routing.
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.is-messenger.com/ismessenger/broadcasts-use-cases/how-to-start-a-workflow-based-on-broadcast-response.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
