Integrations

Every provider is a replaceable connector behind a common interface.

Crisp.chat

Messaging

Not Connected

Shared customer history and chat AI knowledge.

Ringover

Telephony

Not Connected

Cloud telephony provider connector.

Twilio

Telephony

Configuration Required

Programmable voice and media streams.

Telnyx

Telephony

Not Connected

SIP and programmable voice provider.

Plivo

Telephony

Not Connected

Voice API provider connector.

Aircall

Contact center

Not Connected

Contact-center call routing.

8x8

Contact center

Not Connected

Enterprise voice platform.

OpenAI

AI provider

Connected

Realtime voice, reasoning and TTS.

Google Gemini

AI provider

Configuration Required

Multimodal reasoning models.

Anthropic Claude

AI provider

Not Connected

Reasoning models for agent logic.

Crisp.chat — knowledge connector
Not connected
API credentials missing
Never synchronised0 source items

Credentials are stored as server-side secrets (CRISP_IDENTIFIER and CRISP_KEY) and are never exposed to the browser. Knowledge synchronisation and conversation intelligence are separate operations.

Telephony provider interface

Any provider (Twilio, Telnyx, Plivo, Aircall, Ringover or SIP) implements the same capability contract. The core application makes no vendor-specific assumptions.

Incoming calls
Outgoing calls
Phone numbers
Audio streaming
Call transfer
Call termination
Call recording
Call metadata
Conversation workspace interface
Voice interactions are pushed into the customer workspace through a generic conversation sync driver. Crisp is the current implementation; another helpdesk can be added without touching the voice, knowledge or agent layers.
Telephony — live phone calls
OpenAI key: missing
OpenAI webhook secret: missing
OpenAI SIP trunk URI: missing
Ringover API key (optional): missing
Ringover webhook token: missing
Twilio credentials: missing
Aircall webhook secret: missing
Telnyx webhook secret: missing
Telnyx API key (optional): missing

Setup — Ringover

  1. Map a phone number to an agent below.
  2. In Ringover, activate Connectivity for the test number only, then paste this SIP destination into its external SIP routing field:(OpenAI SIP URI is not configured yet)

    Transport Type must be TLS and the port must be 5061 — OpenAI does not accept UDP/TCP on 5060. Leave Login, Password and Custom Headers blank. After saving, delete the Call queue step so the flow is Start → SIP endpoint → Hangup.

    OpenAI also requires SRTP (encrypted media). If the carrier sends plain RTP, the INVITE is rejected before this app is ever notified — the caller hears ringback, music or voicemail and no OpenAI event appears in the log below. That means the carrier, not this app, has to be fixed.

  3. In the OpenAI project webhook settings, add this URL:/api/public/telephony/openai-sip
  4. In Ringover webhook settings, add this URL for call events (hangup), replacing YOUR_SECRET with the value you saved as the Ringover webhook secret:/api/public/telephony/ringover?token=YOUR_SECRET

Calls are answered with the mapped agent's full configuration (instructions, languages, greeting, voice, speed). Knowledge search is browser-test only for now — a live phone call cannot be answered by a serverless monitor, so phone sessions are tool-free.

Ringover does not issue a webhook signing secret, so the shared token travels in the URL above. The Ringover API key is optional — it is not used by the call flow yet.

ProviderNumberLabelAgentLast callEnabledRemove
No numbers mapped yet.

Recent phone calls

(auto-refreshes every 10s)
StartedCallerAgentStatusDuration
No phone calls have reached the AI yet.

Webhook events log(auto-refreshes every 10s)

Ringover Connectivity sends the test number's call audio to OpenAI. This log records webhook delivery; Recent phone calls shows whether the AI answered.

ReceivedProviderEventDetails
No webhook events received yet.
Voice conversation sync

Every AI Voice interaction creates or updates a single conversation in the customer workspace, carrying the transcript, call summary, duration, language, knowledge citations and escalation state. The same conversation is reused for its whole lifecycle, so escalation never creates a duplicate.

Crisp not connected
Credentials missing
Website not set

Sync AI Voice conversations

When off, sessions are stored locally but nothing is written to the workspace.

Attach full transcript

Adds the conversation transcript as private notes.

Attach knowledge citations

Lists which knowledge sources the AI used to answer.

Loading inboxes from Crisp…

Loading inboxes from Crisp…

Optional operator the handoff is assigned to.

Browser tests use a test identity; telephony calls will match by phone number, then email, before creating a profile.

No voice sessions recorded yet — run a browser test on an agent.