Skip to main content
inteldialix

Bidirectional Audio Streaming/AI Models & Voice Engines

Connect OpenAI Realtime to IntelDialix voice agents

Ultra-low latency speech-to-speech interaction powered by OpenAI Realtime models running over native WebSockets.

In short

You connect OpenAI Realtime to IntelDialix in two directions. When a call starts or ends, IntelDialix sends a signed webhook to OpenAI Realtime with the transcript and outcome. During a call, an agent can reach OpenAI Realtime through a custom tool — an HTTP request you define — to look up or update information. No SDK is needed; it is plain HTTPS and JSON.

  • OpenAI Realtime
  • IntelDialix
  • AI voice agent
  • Webhooks
  • WebSockets & PCM16 Audio
  • HTTPS
  • JSON

How it works

How information moves between a live phone call and OpenAI Realtime.

  1. 01

    A call reaches your agent

    A caller dials a Twilio or SIP number assigned to the agent, or the agent places an outbound call from a campaign.

    Twilio / SIP number → IntelDialix agent

  2. 02

    The agent uses OpenAI Realtime mid-call

    When the conversation needs data, the agent runs a custom tool: an HTTP request to OpenAI Realtime with the details it has collected.

    Custom tool → WebSockets & PCM16 Audio

  3. 03

    The call ends with a record

    IntelDialix keeps the recording, transcript and post-call analysis for the conversation in your call history.

    Recording · transcript · analysis

  4. 04

    OpenAI Realtime receives the result

    A signed webhook delivers the call event to your OpenAI Realtime endpoint, and is retried automatically if the delivery fails.

    HTTPS POST · X-Dialix-Signature

At a glance

Key figures

Voice engines
ElevenLabs · Vapi · Gemini
Choose the engine per agent and compare them on real calls.
Telephony
Twilio & SIP
Use numbers you already have, for inbound and outbound calls.
Call events
Signed webhooks
HMAC-SHA256 signature on every delivery, retried on failure.
Starter plan
$14 / month
One agent, one number and 100 calls a month.

Example

verify-dialix-webhook.js
// Verify an IntelDialix webhook before trusting it in OpenAI Realtime.
// Header: X-Dialix-Signature: t=<unix seconds>,v1=<hex>
// where v1 = HMAC-SHA256(secret, "<t>.<raw request body>")
import crypto from 'node:crypto';

export function verifyDialixWebhook(rawBody, signatureHeader, secret) {
  const parts = Object.fromEntries(
    signatureHeader.split(',').map((kv) => kv.split('='))
  );
  const expected = crypto
    .createHmac('sha256', secret)
    .update(`${parts.t}.${rawBody}`)
    .digest('hex');
  const valid =
    typeof parts.v1 === 'string' &&
    parts.v1.length === expected.length &&
    crypto.timingSafeEqual(Buffer.from(parts.v1), Buffer.from(expected));
  const fresh = Math.abs(Date.now() / 1000 - Number(parts.t)) < 300;
  return valid && fresh;
}

// Body: { "event": "call.completed", "payload": { ... }, "timestamp": "..." }

Check the signature before acting on an event in OpenAI Realtime. The secret is the one you set when you add the webhook in IntelDialix settings.

FAQ

Frequently asked questions

How does IntelDialix connect to OpenAI Realtime?

Through webhooks and custom tools. IntelDialix posts call events to a OpenAI Realtime endpoint you choose, and agents can call OpenAI Realtime during a conversation using an HTTP tool you configure in the agent editor.

Which events can OpenAI Realtime receive?

IntelDialix sends events such as call.initiated, call.inbound, call.completed, call.failed, campaign.started, campaign.completed. Each delivery includes a JSON payload and an X-Dialix-Signature header you can verify with your webhook secret.

Do I need a developer to set this up?

You need an HTTPS endpoint in OpenAI Realtime that can receive webhooks — many tools provide one — and, for mid-call actions, an endpoint the agent can call. Building the agent itself needs no code.

Keep exploring

Put an agent on the phone today.

Create a free account to explore the dashboard. Plans start at $14 a month for one agent and 100 calls.