Guide
Article Markdown

Use Case 3: Handoff to operator from the scenario

Level: basic · Modules: Scenario Builder, Settings → Operator Panel · Action: operator_panel__connect_to_operator_with_msg

Required permissions and access

What you need Where in the menu Why
Scenario Builder Menu → Scenario Builder Connect node in the scenario
Settings → Operator Panel → Subjects Settings → Operator Panel → Subjects Subject with alias for subject_alias
Settings → Operator Panel → Skill groups Settings → Operator Panel → Skill groups Subject skill group for auto_connect_operator

If the Subjects section is missing from the menu — check your account permissions or contact ConnectiveOne support.

Business context

After the menu (or FAQ), the customer taps “Talk to an operator.” If no operators are free — the customer gets your waiting message (edge limit), not silence. After the chat is closed or times out, the scenario can continue via an alias (preparation for CSAT in Use Case 7b).

Expected result

  • Edge success → connect completed (check in Runs).
  • Edge limit → customer gets your waiting message.
  • Edge error → clear error message (not silence).
  • subject_alias matches the subject in Settings; the subject is linked to a skill group with operators.
  • chat_closed_alias is set (entrypoint stub) and you understand inactivity / operator-wait timers.

Flow architecture

MessageKeyboard ("Operator") → Action (operator_panel__connect_to_operator_with_msg)
   ├─ success → MessageKeyboard “Operator connected”
   ├─ limit   → MessageKeyboard “Everyone is busy. Please wait…”
   └─ error   → “Could not connect. Try later”

After chat close (by operator) → chat_closed_alias → (e.g. “Thank you” section / stub for UC-7b)
What Why
Subject (subject_alias) Route the dialog to the correct OP queue / folder
Subject skill group Where auto_connect_operator takes a free operator from
Operator in skill group Otherwise limit or success without a live operator
Alias after close / timeout Continue the scenario after chat lifecycle events

Configure subjects · Configure skill groups

Step-by-step implementation

Step 0. Subject, skill group, and operator (if not yet)

Settings → Operator Panel → Subjects → create a subject for training:

Field Example
Name Training Support
alias training_support
Skill group Training Support SG (link an existing one or create a new one)

Settings → Operator Panel → Skill groups — make sure the subject’s group has at least one test operator (for E2E).

Write down the subject alias — it goes into subject_alias on the connect node.


Step 1. MessageKeyboard — escalation button

Parameter Value Why
Text “Need an operator?”
Button “Talk to an operator” · payload operator Start connect
Output Variable (optional) Button edge is enough

Edges: button operator → Action connect.


Step 2. Action — operator_panel__connect_to_operator_with_msg

What the action does: creates a chat room in Operator Panel, assigns the subject, tries to connect an operator, returns an event by result.

node_params Level Value (example) Why
subject_alias must training_support Route to subject / queue
auto_connect_operator must true Free operator from the subject skill group; otherwise limit
chat_closed_alias should training_chat_closed After operator closes → entrypoint (UC-7b: CSAT)
custom_timeout_time should 30 Dialog inactivity timeout (min); fires chat_closed_by_timeout_alias
connection_timeout_time should 120 Seconds waiting for an operator → connection_timeout_alias
customTextToOperator nice “Customer from the training bot” Context for the operator in OP
add_button nice false In training we don’t complicate the chat UI

Related aliases (as needed): chat_closed_by_timeout_alias, connection_timeout_alias, chat_closed_by_client_alias — details in the action reference.

Entrypoint stub: create a section with entry point training_chat_closed and a simple MessageKeyboard “Thank you for contacting us” — in Use Case 7b you will replace it with CSAT.

Edges (minimum required: success + limit + error):

Edge When Where Why
success Chat created, customer connected MessageKeyboard “You are connected to an operator” Customer knows the dialog is in OP
limit No free operators MessageKeyboard “All operators are busy…” Your queue text
error Chat creation error “Could not connect…” Failsafe (Use Case 9)
banned (if present) Customer is banned Blocking message Rare in training, but better to connect the edge

Step 3. MessageKeyboard after limit

Parameter Example
Text “All operators are busy right now. We’ll reply soon — please wait in this chat.”

Without this node the customer often sees silence after limit.


Step 4. Test in Runs

  1. Runs / preview: tap “Operator” → check which edge fired (success, limit, or error).
  2. Confirm that after edge limit the customer sees your message (not silence).
  3. If always error — check subject_alias, subject, and skill group in Settings.
  4. In trace / constants check that chat_closed_alias is recorded (if set).

Optional (E2E): if the instance has a test operator and channel — verify the dialog landed in the subject with the matching alias. This is not a required completion criterion for Use Case 3.

Queue message: the text is written by the integrator in the node after limit. For training, a static clear message is enough.

Acceptance criteria (self-check Runs)

Common mistakes

Symptom Cause What to do
Always error Wrong subject_alias or subject missing Create the subject, match the alias
Silence after connect No MessageKeyboard after limit Add waiting text
Dialog not in the right subject Alias mismatch Match Settings and node_params
success, but operator doesn’t see it No operators in the subject skill group Add an operator to the subject skill group
After close the scenario does not continue No chat_closed_alias or entrypoint Set alias + section with entry
Inactivity close “does nothing” chat_closed_by_timeout_alias not set See the full connect action reference
Using your own AI agent?Install the open skill so your AI agent can work with current official ConnectiveOne documentation.Get the skillNeed support?Couldn’t find the answer or need help from the ConnectiveOne team? Create a request in Client Portal.Create a request