Connect modules connect_dograh

Voice AI

Connect Dograh

Dograh AI voice agents for FreeSWITCH.

A bridge between the self-hosted FreeSWITCH backend and Dograh, the open-source voice-AI platform with a drag-and-drop workflow builder. Calls to a dedicated extension are answered by a Dograh agent; Dograh can also place outbound calls through your own trunks for campaigns and test calls.

The split of responsibility is the point. Dograh runs the voice pipeline — speech recognition, the model, the voice, the workflow logic — and Odoo runs the telephony: it renders the dialplan, holds the FreeSWITCH credentials, picks the outgoing route, applies the caller ID and records the call. Neither side reaches past its own job, and the only thing crossing between them is a shared service token and a media WebSocket.

Because Dograh has no FreeSWITCH provider of its own yet, Oduist publishes an overlay image that adds one on top of the official Dograh release; the provider sources ship inside the module. The result is an AI voice agent whose model, telephony and call data all run on infrastructure you control end to end.

What it offers

  • Dograh workflows answer an extension

    A connect.dograh.agent record gets its own FreeSWITCH extension with one button, and becomes a routing destination like any other. Point a DID or an IVR choice at that extension and the workflow you built in Dograh's drag-and-drop editor answers the call.

  • Per-call dialplan, rendered on demand

    When a call arrives Odoo registers it with Dograh's inbound webhook, takes back the media WebSocket URL, and renders a FreeSWITCH dialplan that forks the audio there with mod_audio_fork. If Dograh is unreachable or rejects the call, the caller gets a busy response instead of dead air.

  • Outbound campaigns through your own trunks

    Dograh campaigns and test calls post to /dograh/api/originate; Odoo matches the destination against your FreeSWITCH outgoing routes, applies the default outgoing caller ID when Dograh sends none, and attaches the answered leg to the workflow's WebSocket.

  • Odoo keeps the switch credentials

    Dograh never talks to FreeSWITCH directly. It drives the switch through a small token-authenticated control plane in Odoo — originate and hangup — so the mod_xml_rpc credentials stay in one place and every request is checked against a shared service token.

  • Calls land in the Connect journal

    Recording is on by default and runs through the standard FreeSWITCH recording webhook, so the audio shows up on the Connect call form and can be transcribed and summarised by the core OpenAI integration. A CHECK STATUS button probes the Dograh health endpoint and reports its version.

Scope of the current version

  • Dograh is self-hosted and does not ship a FreeSWITCH provider upstream. You run the Dograh stack yourself with the Oduist overlay API image that adds the provider on top of the official release.
  • The FreeSWITCH image must include mod_audio_fork — the Oduist FreeSWITCH image from 2.1.0 onward.
  • Transfer to a human from a Dograh workflow is not supported in this version; the workflow engine reports that gracefully if a transfer node is reached.
  • Extension numbers are configured twice. The number to workflow mapping lives in Dograh's Phone Numbers page, and must match the FreeSWITCH extension created in Odoo exactly.
  • Three network paths have to be open: Odoo to the Dograh API, FreeSWITCH to the media WebSocket URL Dograh advertises, and Dograh back to Odoo over HTTPS.
  • Workflows are built in Dograh, not in Odoo. The workflow field on the agent record is informational only.
  • Registered as a licensed Oduist module.

Installs with full features free for 30 days; buy the license inside the module.