Provider integration
Connect LiveKit
LiveKit integration for Oduist Connect.
A self-hosted realtime stack behind Odoo: the LiveKit WebRTC SFU for video and browser calling, the livekit-sip bridge for telephony over your own carrier trunk, Egress for recording, and LiveKit Agents for voice AI. It arrives in three levels that can be adopted one at a time — meetings first, then SIP, then agents.
Video meetings are the cheapest thing to turn on: a room, a public URL, and guests who join in a browser with no account. Telephony builds on the same stack — DIDs and trunks are configured in Odoo, which pushes the trunks and dispatch rules to LiveKit, and inbound calls ring the destination user’s systray phone.
Voice agents are configured as Odoo records rather than in a separate console, down to which contact, CRM and Helpdesk tools they may call, and the worker reads that configuration at dispatch time. Everything — meeting recordings, SIP calls, agent transcripts and summaries — lands in the shared Connect ledger, so a LiveKit deployment gets the same reporting and AI pipeline as every other backend.
What it offers
-
Video rooms with guest links
Create a room in
Connect → LiveKit → Roomsand share its copyable Public URL: guests join in the browser with nothing to install and no account, authenticated purely by the unguessable link. The organiser can end it for everyone with Close Room, and empty timeout and maximum participants are set per room. -
Meeting recording through Egress
Tick Record Meeting and LiveKit Egress captures the room; the file lands in
Connect → Recordingsand is transcribed and summarised by the core OpenAI pipeline when transcription is on. -
SIP telephony on your own trunk
Trunks carry the carrier's outbound address and inbound signalling IPs and are pushed to LiveKit the moment you save them. Each DID in
connect.livekit.numberpicks a trunk and routes to a user, an AI agent or a room, and Odoo creates the matching LiveKit dispatch rule for it. -
Browser phone in the systray
Enable the LiveKit web phone per user, set their outgoing caller ID, and point
Click-to-call Providerat LiveKit. Thelivekit-clientSDK is lazy-loaded on the first call rather than bundled into the backend assets. -
Native LiveKit voice agents
An agent in
connect.livekit.agentis configured entirely in Odoo: an STT to LLM to TTS pipeline or OpenAI Realtime mode, the provider and model for each stage, instructions, greeting, voice, language and time limit, and which Odoo tools it may call across contacts, CRM and Helpdesk. -
Agent transcripts and live config
The worker pulls each agent's configuration from Odoo at dispatch time, so an edit applies to the next call. Transcripts are stored as recordings with
source = livekit-aialongside the worker's summary, tool calls reach Odoo on a per-agent token you can rotate from the agent form, and Worker Last Seen on the settings page tells you whether the sidecar is connected. -
Self-hosted, with the stack shipped
connect_livekit/deploy/carries the Docker Compose stack and config templates for the SFU, the SIP bridge, Egress recording and the agent worker; one LiveKit stack pairs with exactly one Odoo instance, on your own infrastructure.
Scope of the current version
- livekit-sip has no SIP registrar: desk phones cannot register, and there are no internal user-to-user calls. The web phone and the mobile SDKs are the endpoints.
- LiveKit is a media layer on top of a carrier, not a replacement for one — telephony needs your own SIP trunk from Telnyx, Twilio, Plivo or similar.
- The
livekit-apiPython package must be available in the Odoo environment, and the stack needs a host running Docker and Docker Compose. - Browsers require
wss://, so TLS has to be terminated in front of the LiveKit port by your own reverse proxy before Odoo is pointed at it. - Voice agents need an OpenAI key — plus Deepgram and ElevenLabs keys for STT and TTS in pipeline mode — and the
oduist/livekit-agentsidecar running next to the stack. - All
connect.livekit.*models are admin-only: regular Connect users reach the web phone and meeting links through server methods, not the menus.
Installs with full features free for 30 days; buy the license inside the module.