Journey integrations
EARLY ACCESSUse integration elements in Journey to connect to Infobip applications.
Transfer chat to agent
Use this element to transfer the end user to a live agent for text-based chats.
To transfer to an agent through a voice channel, use the Transfer call to agent element.
Configure the element
(Optional) In the side panel of the element, assign conversation tags to do the following.
- Route the journey to the relevant queue in Inbox.
- Inform the agent what the conversation is about. Example: Add a tag, data verification, to indicate that the agent needs to verify the end user's information.
In the All conversation tags section, either create a new tag or select one or more existing tags.
Example
For an example of how to use this element, see the Set up an efficient sign up and account verification tutorial.
Use this element with a call session
You can use this element with a call (IVR) session as shown in the following example.
-
Use the Play element to ask whether the end user wants to wait on the line for an available agent or use a text-based channel such as WhatsApp.
Example:
To have a text-based chat with an agent, select 1. Waiting time is 1 minute.
To talk to an agent over the phone, select 2. Waiting time is 12 minutes.
-
If the end user wants to use a text-based channel, Hang up the voice session and add the Transfer chat to agent element.
-
If the end user wants to wait for an agent, use the Transfer call to agent element.
Transfer call to agent
Use this element to transfer a voice (IVR) call to a live agent in Inbox.
- You can use this element only within an inbound IVR session.
- To transfer to an agent outside an IVR session, that is, for text-based chats, use the Transfer chat to agent element.
When forwarding the call, the system automatically adds contextual information to help agents in Inbox manage the interaction effectively. Example: It includes the channel so that the agents know over which channel the call originated.
Configure the element and use the branches in the element to specify the next steps in the journey.
Configure the element
In the side panel of the element, configure the following fields:
Call origin
Use this field to provide context about the conversation to the agent. Example: Reschedule the appointment. In Conversations, this information is displayed as a popup message.
Select Add call origin and specify the context.
If you do not configure this field, the journey name is used as the context.
Conversation tags
(Optional) Assign conversation tags to do the following.
- Route the journey to the relevant queue in Inbox.
- Inform the agent what the conversation is about. Example: Add a tag, data verification, to indicate that the agent needs to verify the end user's information.
In the All conversation tags section, either create a new tag or select one or more existing tags.
Next steps
Use the following branches in the element to manage the next steps.
| Branch | Call session status |
|---|---|
| Call forwarded | Call was forwarded. A call session was successfully established between the end user and the destination. The journey exited the call session. |
| Call not forwarded | The journey was unable to forward the call. A call session was not established between the end user and the destination. The call session continues between the end user and the journey. |
| Call ended | Call was ended either by the end user or because of network issues, before it was forwarded. |
Transfer call to voicebot
Use this element to transfer a voice (IVR) call to a voicebot. The voicebot handles the call using conversational AI capabilities.
You can use this element only within an IVR session.
Configure the element
In the side panel of the element, configure the following fields:
- Voicebot: Select the voicebot to transfer the call to.
- Voicebot sender: Select the sender to use for the voicebot. Select Any available to let the system choose an available sender automatically.
Next steps
Use the following branches in the element to manage the next steps.
| Branch | Description |
|---|---|
| Call transferred | The call was successfully transferred to the voicebot. The journey exited the call session. |
| Call not transferred | The journey was unable to transfer the call to the voicebot. The call session continues between the end user and the journey. |
| Call ended | The call was ended either by the end user or because of network issues, before it was transferred. |
Transfer call to AI agent
Use this element to start a real-time voice call with an AI agent.
You can use this element only within an IVR session.
Configure the element
In the side panel of the element, configure the following fields:
- Choose AI agent: Select the AI agent to transfer the call to. To view or manage your agents, select Go to My Agents.
- Agent type: Select how the agent processes speech.
- Speech to speech: The agent communicates directly using voice input and output.
- Speech to text to speech (chained): The agent converts speech to text, processes it, then converts the response back to speech.
The remaining fields depend on the selected agent type.
Speech to speech
- Voice: Select the voice used for the agent's responses.
- Noise reduction: Select the noise reduction type to apply to the call audio.
- Turn detection: Select how the system detects when a speaker has finished their turn.
- Server VAD: Uses server-side voice activity detection.
- Semantic VAD: Uses semantic analysis to detect turn boundaries.
- Create response: Enable to allow the agent to generate a response after a turn is detected.
- Interrupt response: Enable to allow the end user to interrupt the agent's response.
Input transcription
- Prompt: Enter a prompt to guide the transcription model.
- Model: Select the model used to transcribe the end user's speech.
- Language: Select the language of the end user's speech.
Speech to text to speech (chained)
Settings
- Agent greeting: Enter the initial message the agent delivers when the call is answered. You can use placeholders to personalize the greeting.
- Text to speech language: Select the language used to convert the agent's text responses to speech.
- Voice name: Select the voice used for text-to-speech output.
- Speech rate: Set the speed of the agent's speech. The default value is 1.00.
Transcription
- Speech to text language: Select the language used to transcribe the end user's speech to text.
Next steps
Use the following branches in the element to manage the next steps.
| Branch | Description |
|---|---|
| Call transferred | The call was successfully transferred to the AI agent. The journey exited the call session. |
| Call not transferred | The journey was unable to transfer the call to the AI agent. The call session continues between the end user and the journey. |
| Call ended | The call was ended either by the end user or because of network issues, before it was transferred. |
Transfer call to voice application
Use this element to transfer a voice (IVR) call from a journey to a custom Calls API application. This enables you to manage calls within your application.
You can use this element only within an IVR session.
Prerequisites
- A Calls API-based application (opens in a new tab) to which the IVR call needs to be transferred. The application should be capable of processing application transfer request events.
- A Calls configuration (opens in a new tab) with a unique ID.
Configure the element
In the side panel of the element, configure the following fields:
- Calls configuration ID: Select the Calls configuration ID for the application.
- Custom data (Optional): Use key-value pairs to add custom data, if required. This data is sent to the application.
Next steps
For each exit branch in the element, configure the next steps.
The following table contains the description of each branch.
| Event | Description |
|---|---|
| Call transferred | The journey transferred the IVR call to the application. A call session was successfully established between the end user and the application. The journey exited the call session. |
| Call not transferred | The journey was unable to transfer the IVR call to the application. This could be for several reasons. Example: The API call failed. A call session was not established between the end user and the application. The call session continues between the end user and the journey. |
| Call ended | The IVR call was ended either by the end user or because of network issues, before it was transferred. |
Test the functionality of the element
To verify the functionality of the Transfer call to voice application element, use a custom webhook. Test the transfer of the call from the journey to the webhook.
Set up your system for the call transfer
- Configure a webhook to which the IVR call needs to be transferred.
- Create a Calls configuration (opens in a new tab) with a unique ID.
- Create a notification profile.
- Use the URL of the webhook.
- Create a subscription.
- Select Voice channel.
- Select the required events.
- Select the notification profile that you created.
Configure the journey
- In the IVR session of your journey, add the Transfer call to voice application element.
- Configure the following fields in the element:
- Calls configuration ID: Select the Calls configuration ID that you created.
- Custom data (Optional): Use key-value pairs to add custom data, if required. This data is sent in the request body to the webhook.
- For each exit branch in the element, configure the next steps.
- Configure the journey as required.
- Activate the journey.
You can now get the call information on your webhook.
Transfer to chatbot
Use the Transfer to chatbot element to direct the end user from the journey to a chatbot. After the chatbot session ends, the end user returns to the journey.
Prerequisites
-
Chatbots enabled in your Infobip account. Only then, you can access the Transfer to chatbot element in your journey.
-
An active chatbot that uses a text-based channel such as SMS, Viber, or WhatsApp. To create a chatbot, see the Chatbots documentation.
The chatbot must use the same channel and sender that is used in the journey.
Criteria to design the journey
- The chatbot session can start only after it receives an initial message from the end user. Use the Evaluate inbound message element to obtain the end user's message.
- You can add the Transfer to chatbot element only after an Evaluate inbound message element. So, these 2 elements must be in the same branch in the journey.
- Transfer to agent must be done in the journey. If the chatbot contains the To agent element and the end user reaches this element, the end user returns to the journey. Use the Transfer chat to agent element in the journey to connect the end user to an agent.
Process overview
- The end user's message from the Evaluate inbound message element is sent to the Transfer to chatbot element through the LastInboundMessage variable.
- When the end user reaches the Transfer to chatbot element, the journey automatically selects a chatbot that uses the same channel and sender that are configured in the Evaluate inbound message element.
- The chatbot receives the message from the Transfer to chatbot element.
- The chatbot session starts and the end user is redirected to the chatbot.
- When the chatbot session ends, the end user returns to the journey.
- The end user continues the journey based on the journey configuration.
The journey redirects the end user to any active chatbot that is associated with the sender. So, if the associated chatbot is stopped and a new chatbot is created on the same sender, the journey redirects the end user to the new chatbot.
If you cancel the journey, the associated chatbot is not affected.
Create the journey
-
Add an Evaluate inbound message element to the journey.
-
Configure the sender and condition in the element.
-
Add the Transfer to chatbot element to the same branch.
-
Configure the following fields in the element.
-
Chatbot sender: This field is prepopulated with the sender from the To recipient field in the Evaluate inbound message element.
If you update the sender in the Evaluate inbound message element, you must update the sender in the Transfer to chatbot element. To do so, select Update chatbot sender.
-
Message received by chatbot: This field contains the LastInboundMessage variable by default. Specify any additional information and context that you want to share with the chatbot.
The content of this field is sent to the chatbot.
-
Condition (Optional): Select one or more exit conditions to redirect the journey based on what happens in the chatbot session. In the Transfer to chatbot element, an exit branch is automatically added for each condition that you select.
-
-
For each exit branch in the Transfer to chatbot element, configure the next steps.
The following table contains descriptions of each condition and examples of the next steps for the condition.
| Condition | Description | Example of next steps |
|---|---|---|
| Session not started | The chatbot session could not start. This could be for several reasons. Example: The chatbot was deactivated after the journey was activated. | |
| Session ended externally (new session started) | The chatbot session ended because a new external session was started. Example: A new session was initiated for the end user through Conversations. | |
| Session expired by timeout | The chatbot session timed out because the chatbot did not receive a response from the end user. | Retarget the end user the following day to check if their request was resolved successfully. |
| Closed by Close session element | The chatbot session was ended by the Close session element in the chatbot. | |
| Chatbot deactivated | The chatbot was deactivated when the end user was in a chatbot session. | |
| Redirect to agent failed | The chatbot was unable to transfer the conversation to an agent. | Add the Transfer chat to agent element to this branch to redirect the end user to an agent. |
| Session ended by user | The end user ended the chatbot session. |
Analytics
To view the analytics for the Transfer to chatbot element, hover over the element in the journey.
Transfer to journey
The Transfer to journey element sends a person to a different, secondary journey. Use this element to create modular journeys, which split complex journeys into smaller, more manageable ones. For more information, see Benefits of modular journeys.
Each journey has a limit of 100 elements. If your journey exceeds this limit, split it into multiple modular journeys.
Prerequisites
- Create all the journeys you want to connect before adding this element.
- Ensure each secondary journey has an Existing journey entry point configured. Only journeys with this entry point are available to select in the element.
Element behavior
The behavior depends on where you place the element in the journey.
| Placement | What happens |
|---|---|
| Just before the exit element | The person exits the primary journey and enters the secondary journey only. |
| At an earlier step in the journey | The person continues in both the primary and secondary journeys simultaneously. |
Configure the element
- Pass variables: You can pass variables and their values from the primary journey to the secondary journey. This ensures that corresponding placeholder data is available as the person moves between journeys.
- Add a failover branch: Include a failover branch in the In all other cases condition. This handles cases where the transfer fails — for example, if the secondary journey is in draft or has been canceled — and allows the person to continue.
Secondary journey participants
By default, the person passing through the Transfer to journey element also enters the secondary journey. They participate in both the primary and secondary journeys until they exit.
You can also configure the element so that a different person enters the secondary journey based on their contact information. To do so, enable Add another participant when you configure the element. You can then define the primary contact information (phone number or email) for this participant, matching a journey variable or a standard or custom attribute of the person in the journey.
Depending on whether the participant exists in Customer Profiles:
- Participant exists: The journey starts for the person identified by their contact information, and any attributes referenced in the journey are updated.
- Participant does not exist: A new person profile is created and the attribute values are assigned to the profile.
One use case for this is a referral program. For example, you ask a person to share a friend's email over Messenger, parse the email from the inbound message, and save it into a variable. You can then use the Transfer to journey element to start a journey for the friend using the email extracted from the variable. Make sure the friend opts in, to meet data requirements for your region.
Custom Exchange elements
Create custom elements in Exchange and use them in your journey to add new functionality to the journey.
Example: Create a custom element to integrate your journey with third-party systems. Call third-party APIs and personalize the journey based on the response.
Configure the element once and reuse it across multiple communications.
The following are examples of use cases.
- Integrate your journey with a webinar platform to automatically register the end user for meetings.
- Connect your journey with a GenAI platform to generate personalized content within the journey.
- Connect your journey to your CRM to transfer data or add profiles to specific groups.
For more information, see the Developing with Infobip documentation.