// the find
openai/openai-realtime-twilio-demo
A demo connecting OpenAI's Realtime API to Twilio phone calls, so you can build an AI voice assistant that answers actual phone numbers. It bridges the WebSocket-based Realtime API with Twilio's bi-directional audio streams through an Express backend, with a Next.js frontend for call monitoring and configuration. Aimed at developers who want a working starting point, not a production system.
The architecture is clear and honest about what it is — three processes (Next.js, Express, ngrok) with distinct responsibilities, and the README maps the call lifecycle step by step. The frontend transcript view is a genuinely useful debugging tool when your prompt is doing unexpected things. Function call mocking is included from the start, which is the right place to learn the tool-use flow before wiring up real backends. The TwiML webhook pattern is minimal and correct — easy to follow when you need to adapt it.
Last commit was December 2024 and the Realtime API has moved fast since; there's a real chance some event types or session config fields are already stale. The README explicitly warns security is bad, and it means it — there's no auth on the websocket server, so anyone who finds your ngrok URL can connect to your logs stream or trigger calls. ngrok as a hard runtime dependency (not just a dev convenience) makes this awkward to deploy anywhere real. The function call flow is entirely mocked with no path shown for actually executing code and returning a result, which is where most people will get stuck.