Virbe Documentation

Route by Profile

Branch the conversation based on which Profile is running the pipeline. Useful for shared flows that need touchpoint-specific logic.

The Route by Profile node routes the conversation to different branches based on the Profile currently executing the pipeline. Use it in shared flows when the same pipeline serves multiple profiles (e.g. web widget and kiosk) but needs to behave differently depending on the deployment context.

Available in: Handlers, Conversational Flows, and Automations.


Configuration

Add one branch per Profile you want to handle differently. Each branch is labelled with the Profile name. The Else branch catches all other profiles not explicitly listed.


When to use it

A single Pipeline can be published and assigned to multiple profiles simultaneously. Most of the time, the same logic should run regardless of which profile is active – but sometimes context-specific behaviour is needed.

Common scenarios:

Different responses per touchpoint: The kiosk uses voice-first language ("Please speak your choice") while the web widget uses text-first language ("Click a button or type your choice"). Route by Profile lets you send the right Text node for each.

Feature availability:
Certain nodes only make sense on the kiosk (face detection logic, hardware scanner signals). Route by Profile lets you include kiosk-only branches in a shared flow without those branches running on web widget profiles.

Language or regional variants: If you maintain separate profiles for different regions or languages and need slightly different logic per region, Route by Profile handles the branching.


Example

A greeting flow used by both a web widget and a kiosk profile:

[Route by Profile]
  → [Web Widget – EN]: [Text: "Hi! Type a question or tap a button below."] → [Quick Reply: ...]
  → [Retail Kiosk – EN]: [Text: "Hello! Please speak or tap the screen to begin."]
  → [Else]: [Text: "Hello! How can I help you today?"]

Alternative approach

If the difference between profiles is minor (e.g. just one word changes), consider using the Profile's Additional Information field to pass context into the AI, and let an LLM Response node handle the phrasing difference – instead of branching the entire flow.

On this page