Connect modules connect_vonage

Provider integration

Connect Vonage

Vonage integration for Oduist Connect.

Vonage (formerly Nexmo) as a cloud backend for Connect: inbound and outbound calls controlled with NCCO, a browser phone on the Vonage Client SDK, IVR call flows, recordings with transcription, voicemail, and SMS through the Messages API.

Almost all of the Vonage-side setup is done by Odoo. One sync creates the application with the right capabilities and webhook URLs, provisions a Vonage user per Connect user, imports the numbers and seeds the caller IDs — after which call control lives in Odoo as connect.ncco records and call flows rather than in a dashboard.

Call control is deliberately open-ended: an NCCO can be static JSON when that is enough, a jinja2 template when it needs the call’s context, or Python and a model method when the logic belongs in your own code. Calls, messages and recordings land in the shared Connect ledger, so Vonage can run beside Twilio, Telnyx, Asterisk and the rest in one database.

What it offers

  • The whole application provisioned for you

    SYNC VONAGE ACCOUNT creates a Vonage application with voice, messages and RTC capabilities, signed callbacks enabled and every webhook URL already pointing at your instance, stores the application ID and private key, creates a Vonage user for each Connect user, imports your numbers and seeds the outgoing caller IDs from them.

  • Browser phone on the Vonage Client SDK

    The systray web phone logs into the Client SDK with a JWT minted by Odoo, so no separate credentials are handed to the browser. Enable it per user with Web Phone Enabled; calls to that user ring the browser through the application app endpoint.

  • NCCO applications in four flavours

    A connect.ncco record can be static JSON, jinja2-templated JSON, Python, or a model.method call, with syntax checking on save and its own answer URL. Point a number straight at it, or give it an extension when a call flow is not enough.

  • IVR call flows with DTMF or speech

    Call flows render NCCO on the fly with a gather step whose input type you choose, prompts and invalid-input messages, and a voicemail record action at the end of the tree.

  • Number routing in Odoo

    Imported numbers appear under Connect → Numbers, each linked to the application, with a Destination of a user, a call flow, or an NCCO application. Re-running the sync after a domain change re-points all the webhooks.

  • Recordings and voicemail pulled into Odoo

    Vonage recording files need JWT authentication, so Odoo downloads them itself — a two-minute cron retries failures — and stores them as attachments, transcribing after the download. Voicemail messages are stored as recordings with source voicemail.

  • SMS through the Messages API

    Send and receive SMS from the shared Connect message ledger, with inbound messages and status updates arriving on the same signed webhooks as voice.

Scope of the current version

  • The vonage Python package must be available in the Odoo environment.
  • Odoo must be reachable over public HTTPS — Vonage webhooks and the signed-callback JWTs require it. Verify connect.api_url before running the sync.
  • Vonage returns the application private key only when the application is created; reusing an existing application means pasting its ID and private key in by hand before syncing.
  • Ring groups ring users sequentially — the NCCO connect action takes a single endpoint — and simultaneous ring is not available.
  • WhatsApp and MMS sending are not available in the current version, and neither is call transfer.
  • The Browser Client SDK is marked in the specification as requiring live validation.

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