A build-to-order Odoo integration that links your FreeSWITCH PBX to Odoo CRM and Helpdesk for click-to-dial, inbound screen-pop, and automatic call logging. ECOSIRE scopes, builds, installs and supports it — this is not an off-the-shelf download. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $299.00 USD; request a quote for a scoped proposal.

A build-to-order Odoo integration that links your FreeSWITCH PBX to Odoo CRM and Helpdesk for click-to-dial, inbound screen-pop, and automatic call logging. ECOSIRE scopes, builds, installs and supports it — this is not an off-the-shelf download.
अभी कोई भुगतान नहीं। यह हमारी टीम को एक कोटेशन अनुरोध भेजता है — हम कीमत और अगले चरणों के साथ ईमेल द्वारा संपर्क करेंगे।
If your agents run FreeSWITCH but your customer data lives in Odoo, every call means alt-tabbing: copy a number from a partner form, dial it by hand on a softphone, then type notes back into the CRM after hangup. Inbound calls are worse — the phone rings with just a caller ID and nobody knows which res.partner, open opportunity, or helpdesk ticket it belongs to until they've asked the customer to repeat themselves. Odoo's native VoIP is built around its own Enterprise softphone and the paid Axivox/OnSIP connectors; there is no supported bridge to a self-hosted FreeSWITCH switch, so the ESL event stream, your dialplan, and your call recordings stay completely invisible to Odoo. That gap is exactly where this connector lives.
Persistent FreeSWITCH ESL (Event Socket Library) connection with automatic reconnect and exponential backoff, run as a managed background worker
Click-to-dial OWL widget on `res.partner`, `crm.lead`, and helpdesk phone fields that issues an ESL `originate` (ring agent extension first, then customer)
Inbound screen-pop driven by `CHANNEL_CREATE`/`CHANNEL_ANSWER` events, matched to the correct partner, opportunity, or ticket before the agent answers
Configurable E.164 / national number normalization so caller ID reliably matches `res.partner.phone` and `mobile` across formats
`freeswitch.call.log` model (`models.Model`) with `@api.depends` computed talk-time, ring-time, direction, disposition, and `Many2one` links to partner and source document
Call recording link or attachment surfaced on the call log and the CRM/Helpdesk chatter timeline (one click to listen)
ECOSIRE builds a dedicated Odoo module that opens a persistent Event Socket Library (ESL) connection to your FreeSWITCH server and translates its events into Odoo records. Click-to-dial is wired into partner, lead/opportunity, and helpdesk phone fields via an OWL widget that fires an originate command through ESL to ring the agent's extension first, then the customer. Inbound CHANNEL_CREATE/CHANNEL_ANSWER events are matched against res.partner.phone/mobile (with configurable E.164 normalization) so a screen-pop opens the right partner, opportunity, or ticket the instant the phone rings. Every call writes a freeswitch.call.log record — a proper models.Model with @api.depends computed talk-time, direction, agent, disposition, and Many2one links back to the partner and originating document — and if you record calls, the log carries a link (or attachment) to the recording so it is one click from the CRM timeline. Access is governed by ir.model.access.csv plus record rules so agents see their own calls while supervisors see the queue, and QWeb reports plus optional automated actions turn raw call events into follow-up activities and daily agent summaries.
Technically, the connector is a real Odoo addon with a clean __manifest__.py declaring its dependencies (base, mail, crm, optionally helpdesk/sale), Python ORM models, XML and OWL views, and security definitions — no core patches, so it upgrades cleanly. The ESL listener runs as a managed background worker (a long-lived connection with reconnect/backoff), and outbound actions are also exposed over Odoo's JSON-RPC/XML-RPC API so a wallboard or external dialer can trigger calls. Queue and agent statistics (mod_callcenter events, if you use it) are aggregated into dashboards for live and historical agent performance. We target Odoo 17.0, 18.0 and 19.0; the module works on Community and Enterprise, and where your edition has Helpdesk or Field Service we wire screen-pop and logging into those documents too.
Because every FreeSWITCH deployment is different — your dialplan, your extension scheme, whether you run mod_callcenter, how recordings are stored, and which Odoo apps agents actually work in — this is delivered build-to-order rather than as an instant download. We start with a short scoping call to map your dialplan, ESL credentials, number-normalization rules, and the exact CRM/Helpdesk flows you want. From confirmed scope, typical delivery is 2 to 4 weeks: we build against your requirements, demo on a staging instance for UAT, then install on production with a rollback plan and hand over the git repository and documentation. You get source code for your Odoo version, a training session, and a post-go-live support window — no fabricated benchmarks, just a module built and supported by an Odoo engineering team.
Runs an in-house FreeSWITCH switch with mod_callcenter queues and needs agent screen-pop, call logging, and queue/agent stats surfaced inside Odoo CRM without replacing the telephony stack.
Wants reps to click-to-dial from opportunities and partners and have every call auto-logged against the right record, so pipeline activity and follow-ups are accurate without manual note-taking.
Owns the FreeSWITCH dialplan and ESL security and needs a connector that respects existing extensions, recording paths, and number formats rather than forcing an off-the-shelf schema.
Handles inbound support calls and needs the caller's ticket or partner to pop on ring, with call recordings linked to the ticket timeline for QA and dispute resolution.
Buy the license on ecosire.com and download the FreeSWITCH CTI Connector for Odoo module ZIP from your account dashboard.
Extract the ZIP into your Odoo custom addons folder on the server (or upload via Apps > Install from file on Odoo.sh / runbot).
Activate Developer Mode, open Apps, click Update Apps List, search for FreeSWITCH CTI Connector for Odoo, and press Install.
Open the new menu, paste your ECOSIRE license key, connect any external credentials (Shopify, Amazon, Stripe, etc.), and save.
Run the built-in connection test, sync your first 10 records, and schedule the recurring cron. Contact support if anything fails.
| Criterion | ECOSIRE | Custom Build | Competitor | Odoo Native |
|---|---|---|---|---|
| FreeSWITCH ESL support | Native ESL listener built for your switch | Possible but you build and maintain it | Most connectors target Asterisk/3CX, not FreeSWITCH | |
| Odoo version coverage | Built for your 17.0 / 18.0 / 19.0 | Whatever you target and retest | Often lags newest Odoo release | |
| Inbound screen-pop | Matched to partner, lead, or ticket on ring | Requires event-matching logic you write | Basic partner pop, rarely ticket-aware | |
| Call logging & recordings | Auto `freeswitch.call.log` + recording link in chatter | Custom model and plumbing to build | Varies; recording links often absent | |
| Queue / agent stats | mod_callcenter dashboards, live + historical | Build aggregation and reports yourself | Seldom exposes FreeSWITCH queue data | |
| Fit to your dialplan | Scoped to your extensions & number formats | Full control, full effort | Fixed schema you adapt to | |
| Support & ownership | Support window + git repo handover | You own all maintenance | Vendor SLA, closed source, per-seat fees | |
| Delivery model | Build-to-order, 2-4 weeks from scope | Weeks to months to design and build | Instant install but generic fit |
No. This is a build-to-order integration. ECOSIRE scopes it against your FreeSWITCH dialplan, extensions, and Odoo apps, then builds, installs, and supports it. It is not a pre-packaged apps.odoo.com download.
Typical delivery is 2 to 4 weeks from confirmed scope. We start with a short scoping call to map your dialplan, ESL credentials, number normalization, and the CRM/Helpdesk flows you want, then build, demo on staging for UAT, and install on production with a rollback plan. Timelines depend on complexity such as mod_callcenter usage and recording storage.
Odoo 17.0, 18.0, and 19.0, on both Community and Enterprise. Where your edition has Helpdesk, Sales, or Field Service, we can wire screen-pop and call logging into those documents too. The module is a clean addon with no core patching, so it upgrades cleanly.
Through the Event Socket Library (ESL). A managed background worker holds a persistent, reconnecting connection to your FreeSWITCH server, subscribes to channel and call-centre events for screen-pop and logging, and issues originate/transfer/hangup commands for click-to-dial and in-call controls. No changes to core Odoo are required.
Usually only minor, documented adjustments — for example ensuring ESL access is enabled for the Odoo worker and that recording paths are reachable or linkable. We map your existing extensions, number formats, and recording storage during scoping and adapt the connector to them rather than forcing you to restructure your PBX.
Every engagement includes a post-go-live support window for defect fixes and configuration adjustments, and you receive the full git repository so your team can maintain or extend the module. We also offer ongoing support and version-upgrade retainers if you want ECOSIRE to keep it current across future Odoo releases.
Yes. Outbound origination is exposed over Odoo's JSON-RPC / XML-RPC API, so a wallboard, external dialer, or custom automation can trigger click-to-dial through the same connector that the Odoo UI uses.
A build-to-order Odoo integration that links your FreeSWITCH PBX to Odoo CRM and Helpdesk for click-to-dial, inbound screen-pop, and automatic call logging. ECOSIRE scopes, builds, installs and supports it — this is not an off-the-shelf download.