Tools rule

A tool has two halves:
  1. UI/config definition
  2. prompt instructions telling the bot when to use it
If the prompt does not describe when to call a tool, the bot may ignore it or use it at the wrong time.

End Call

Enable End Call when the bot should be allowed to terminate the call after success, refusal, wrong number, abusive customer, or other terminal states. The tool description should be clear:
Use this when the customer has completed the conversation, refuses to continue, confirms wrong number, or asks to end the call.

Transfer targets

Only two transfer methods exist, and each is tied to a transport. CXB Core resolves a target by matching the bot’s enabled targets against the active transport.
Method (enum)TransportUse case
websocket_reverse_transferWebSocket transportReverse-transfer the live call to an extension/number.
livekit_sip_referLiveKit SIPSIP REFER to a phone_number, tel: URI, or sip: URI.
There is no “Phone Transfer” method. It was dropped. A target’s value may still be a phone number, but the method must be one of the two above for the call’s transport. Configuring a target whose method does not match the active transport raises a transfer error at runtime.
Agent Desk is a separate handoff path, not a transfer method. It does not appear in the transfer-method enum and is not resolved by the transfer-target logic. To send a customer into the human-agent queue, enable Agent Desk settings on the bot and confirm agents are available in CXB Console. See the Test Calls page for the Agent Desk verification checklist.

Callback scheduling

If this bot should detect “call me back later” requests, enable the callback toggle (callback_prompt_injection). It only fires when the campaign also enables callback detection — see Callbacks for the full double-gate behavior.

Custom HTTP tools

Custom tools can call external APIs during the conversation. Ops checklist:
  • tool name is short and action-oriented
  • description tells the bot exactly when to use it
  • HTTP method and URL are correct
  • required arguments match the API
  • timeout behavior is acceptable
  • spoken pre-message is natural in the call language
Tool execution telemetry appears in call events as tool_call and custom_tool_result.

CRM pre-fetch

Use pre-fetch when the bot needs customer data before speaking. Typical flow:
  1. CXB API receives call/campaign variables.
  2. CXB API calls CRM pre-fetch endpoint.
  3. CRM response fields become crm.* variables.
  4. Bot prompt/opening message uses those fields.
Always test with a real or staging customer ID before running a campaign.

Post-call push

Use post-call push when CRM must receive call outcome data. Map:
  • call metadata
  • recording URL
  • analysis fields
  • disposition/sub-disposition
  • QC fields
  • campaign variables if needed
After a test call, inspect the integration log or CRM side to confirm the payload.

Knowledge Base RAG

Enable Knowledge Base RAG when the bot needs grounded answers from uploaded documents. Ops checklist:
  • KB is active and has documents/chunks.
  • KB description explains what the documents contain.
  • Bot has the correct KB attached.
  • Trigger instructions tell the bot when retrieval is mandatory.
  • Strict mode is enabled only when the bot must answer only from KB.
  • Fallback message is safe when no answer is found.
Built-in tool name: search_knowledge.