For a cloud platform for telephony integration services, the strongest matches are signalwire/freeswitch (FreeSWITCH is a mature open-source telephony switch that provides), fonoster/fonoster (Fonoster is a self-hostable programmable voice gateway and CPaaS) and rtcrs/webrtc (This repository is a Rust library implementing the WebRTC). aiortc/aiortc and peers/peerjs round out the shortlist. Each is ranked by relevance to your query, popularity and recent activity.
We curate open-source GitHub repositories matching “telephony integration services”. Results are ranked by relevance to your query — pick filters below to narrow, or refine with AI.
FreeSWITCH is an open-source software telephony switch that routes and processes voice, video, and messaging calls over IP networks using standard protocols such as SIP and RTP. It serves as both a call routing and switching engine and a programmable telephony API, enabling developers to build custom telephony applications with event-driven call control and media manipulation. As a SIP media server, it handles media streaming, transcoding, and conferencing, and functions as a unified communications platform integrating voice, video, messaging, and conferencing into a single switchable infrastr
FreeSWITCH is a mature open-source telephony switch that provides programmable call control APIs, SIP and WebRTC support, IVR, and media handling, making it a comprehensive self-hostable CPaaS platform that directly replaces Twilio-like services for voice and messaging.
Fonoster is a conversational AI framework and multi-tenant communications platform as a service. It serves as a programmable voice gateway and SIP telephony platform, enabling the creation of voice-based assistants and automated communication workflows using large language models. The project distinguishes itself through a vendor-agnostic speech integration engine that abstracts speech-to-text and text-to-speech providers. It features a multi-tenant architecture that isolates telephony resources and user identities into distinct organizational workspaces. The system covers a broad range of t
Fonoster is a self-hostable programmable voice gateway and CPaaS with SIP and WebRTC support, directly fitting the search for an open-source Twilio alternative, though its primary focus on conversational AI may mean some traditional telephony features like SMS are less central.
This is a Rust library and peer-to-peer toolkit that implements the WebRTC protocol. It provides a network stack for establishing direct audio, video, and data streaming between peers to achieve low-latency real-time communication. The project is designed as an async-compatible network stack that maintains compatibility across different asynchronous runtimes and executors. It further functions as a deterministic protocol testing tool by separating communication logic from network I/O, allowing protocol behavior to be verified without using live network traffic.
This repository is a Rust library implementing the WebRTC protocol for peer-to-peer media, not a full telephony API platform; it provides a relevant building block, but lacks the programmable voice, SMS, SIP, and IVR APIs needed for a Twilio-like service.
aiortc is a Python implementation of the WebRTC protocol, providing an asynchronous stack for real-time audio, video, and data streaming between peers. It functions as a media engine and data channel implementation that manages peer connections through a non-blocking framework. The library enables the establishment of direct peer-to-peer networking by negotiating session descriptions and connectivity paths. It facilitates secure, bidirectional data transmission via data channels and supports low-latency media streaming using standard codecs. The system includes capabilities for network NAT t
aiortc is a Python library implementing the WebRTC protocol for real-time media streaming, but it is a low-level building block rather than a full-featured telephony platform with programmable voice, SMS, SIP, or IVR capabilities—so it is adjacent to the self-hosted Twilio alternative you are looking for.
PeerJS is a real-time communication library and framework designed to establish direct peer-to-peer data and media connections between browsers. It provides a simplified wrapper for managing the lifecycles of WebRTC connectivity, enabling the exchange of audio, video, and data without a central relay. The project includes a coordination server that handles signaling management by mapping unique user identities to network connection details. This server facilitates the discovery of remote peers and the exchange of metadata required to perform the initial connection handshake. The framework su
PeerJS is a peer-to-peer WebRTC library for browser-based audio/video/data connections, not a self-hostable telephony API platform like Twilio — it lacks programmable voice, SMS, SIP, and IVR capabilities, making it a single-aspect building block rather than the full CPaaS you need.
react-native-webrtc is a mobile framework wrapper and peer-to-peer communication library used to integrate real-time audio, video, and data communication into cross-platform mobile applications. It functions as a tool for capturing device screens and streaming live media content via the WebRTC protocol. The project provides an interface for bidirectional data channels, enabling the exchange of arbitrary data packets between peers without a central relay server. It supports real-time media streaming, including peer-to-peer audio and video transmission and screen capture capabilities. The libr
react-native-webrtc is a mobile library for integrating WebRTC peer-to-peer audio/video into apps, not a self-hostable telephony API platform with programmable voice, SMS, SIP, or IVR—it is a building block rather than the full CPaaS solution you are looking for.
ejabberd is a multi-protocol communication gateway and scalable server that implements XMPP for instant messaging and presence. It serves as a federated messaging platform, enabling interoperable communication and user discovery between different remote servers. The project functions as an MQTT message broker for lightweight IoT device communication and a SIP signaling server for managing voice and multimedia signaling traffic. It allows for the hosting of multiple domains on a single instance using virtual hosting to isolate configurations and prevent username conflicts. The system provides
ejabberd is a multi-protocol communication server with SIP signaling for VoIP, but its core focus is XMPP messaging rather than offering programmable voice and SMS APIs as a CPaaS platform, so it only partially overlaps with the telephony API platform you need.
Venom is a TypeScript library for building automated bots that interact with WhatsApp. It provides a complete toolkit for programmatically managing chats, groups, and messages by bridging into the WhatsApp Web protocol through WebSocket communication. The library handles authentication via QR code scanning, session persistence to avoid repeated logins, and real-time event listening for message delivery, edits, deletions, and connection state changes. The library offers a command-based routing system that directs incoming messages to handler functions based on pattern matching, alongside an ev
Venom is a library for automating WhatsApp messaging, not a telephony API platform—it lacks voice calling, SIP, WebRTC, and PSTN integration, making it a different category from the Twilio-like CPaaS you are looking for.
Botkit is a multi-platform chatbot framework designed to build conversational bots that operate across different messaging services using a unified interface. It provides a core system for multi-platform development, utilizing a platform adaptation layer to translate service-specific API payloads into a standardized internal format. The framework features a conversational dialog manager that coordinates multi-turn interactions through state-tracking, branching logic, and scripted flows. It employs a message processing middleware pipeline to intercept, normalize, and enrich incoming and outgoi
Botkit is a chatbot framework for messaging platforms, not a telephony API platform—it lacks voice APIs, SIP, and IVR, so it does not serve as a self-hostable alternative to Twilio.
Plain-app is a multi-purpose toolset for self-hosted device management, providing a web-based dashboard to remotely access files, system settings, and notifications on a mobile device over a local network. It functions as a remote gateway for SMS and notifications, a peer-to-peer file transfer system, and a media server for streaming content to browsers or casting to televisions via DLNA and Chromecast. The project emphasizes secure local connectivity, utilizing TLS and XChaCha20-Poly1305 encryption to protect traffic between the mobile device and the browser. It also includes a distraction-f
Plain-app is a self-hosted remote device management tool with SMS gateway capabilities, but it lacks the programmable voice, SIP, WebRTC, and IVR APIs needed for a full telephony platform or CPaaS.
| Repository | Stars | Language | License | Last push |
|---|---|---|---|---|
| signalwire/freeswitch | 4.6K | C | other | |
| fonoster/fonoster | 8K | TypeScript | MIT | |
| rtcrs/webrtc | 5.1K | Rust | Apache-2.0 | |
| aiortc/aiortc | 5.1K | Python | BSD-3-Clause | |
| peers/peerjs | 13.4K | TypeScript | MIT | |
| react-native-webrtc/react-native-webrtc | 5K | Java | MIT | |
| processone/ejabberd | 6.7K | Erlang | NOASSERTION | |
| vynect/venom | 6.6K | TypeScript | Apache-2.0 | |
| howdyai/botkit | 11.6K | TypeScript | MIT | |
| ismartcoding/plain-app | 3.3K | Kotlin | agpl-3.0 |