- [Installation](#installation) - [Getting Started](#getting-started) - [API Calls](#api-calls) - [Advanced SDK Configuration & Polyfills](#advanced-sdk-configuration--polyfills) - [Making telephony calls](#making-telephony-calls) - [Call mana
Stentor Dialogflow Telephony channel for stentor
Telephony platform for AI agents — SMS, WhatsApp, voice calls, TTS/STT, real-time streaming
Get device location by telephony (SIM card) or settings without using GPS tracker.
Android Telephony for React Native
Unified telephony integrations for voice workflows.
Add typing to to ovh api telephony
VueJS components for telephony and dialer functions
Android Telephony for React Native
SIP telephony plugin for OpenClaw. Single-process pure TypeScript. STT + agent + TTS over real SIP+RTP.
Telnyx STT, TTS, and telephony providers for Cloudflare Agents voice pipeline
Add typing to to ovh api telephony
Import Ovh telephony event as an nodeJS event or to a Redis server
Sippet AI's SDK to enable telephony calling features in any web application.
Add typing to to ovh api telephony
Official PIOPIY WebRTC SDK for high-quality voice communication and telephony integration in the browser.
n8n community node for 3CX telephony system integration with comprehensive call management, extensions, conferences, and CRM features
Ocean Telephony Api Library for js
expo package for android telephony framework apis
Telephony Manager for VOIP Apps
SIP/RTP transport adapter for LiveKit Agents. Run voice agents over traditional telephony with G.711 codec support.
MCP server for Voximplant — cloud telephony, call history, SMS (Russia)
Telephony framework for FreeSWITCH
The Telephony API That Does More!
Bindings to the CoreTelephony framework
SIP telephony library with event-driven API — handles SIP signaling, RTP media, codecs, and call state
SIP protocol implementation for the rvoip stack
Shared types for the WaveKat audio processing ecosystem
A SIP/WebRTC voice agent
Safe Rust wrappers for the spandsp telephony DSP library
Raw FFI bindings for the spandsp telephony DSP library
SIP signaling and RTP transport for voice pipelines
A zero-heap, no_std, const-first DTMF keypad frequency table with runtime tolerance helpers. Also available in Python
A zero-heap, no_std, const-first DTMF keypad frequency table with runtime tolerance helpers.
Voice & Realtime MCP Server — calls, transcription, sentiment, IVR, recordings, call center analytics for AI agents
Pure-Rust ITU-T G.729 (CS-ACELP, 8 kbit/s) decoder + encoder
Call placing and handling framework.
Like Rack is to Rails and Sinatra, Punchblock provides a consistent API on top of several underlying third-party call control protocols.
Adhearsion is an open-source telephony development framework
A library for interacting with the "FreeSWITCH":http://freeswitch.org telephony platform
Xoxzo telephony API library in Ruby. Pleae look http://docs.xoxzo.com/en/ for API details.
An evented application framework for the FreeSWITCH telephony platform
========================================================= FreeSWITCHeR Copyright (c) 2009 The Rubyists (Jayson Vaughn, Tj Vanderpoel, Michael Fellinger, Kevin Berry) Distributed under the terms of the MIT License. ========================================================== ABOUT ----- A ruby library for interacting with the "FreeSWITCH" (http://www.freeswitch.org) opensource telephony platform REQUIREMENTS ------------ * ruby (>= 1.8) * eventmachine (If you wish to use Outbound and Inbound listener) USAGE ----- An Outbound Event Listener Example that reads and returns DTMF input: -------------------------------------------------------------------- Simply just create a subclass of FSR::Listner::Outbound and all new calls/sessions will invoke the "session_initiated" callback method. <b>NOTE</b>: FSR uses blocks within the 'session_inititated' method to ensure that the next "freeswich command" is not executed until the previous "Freeswitch command" has finished. This is kicked off by "answer do" #!/usr/bin/ruby require 'fsr' require 'fsr/listener/outbound' class OutboundDemo < FSR::Listener::Outbound def session_initiated exten = @session.headers[:caller_caller_id_number] FSR::Log.info "*** Answering incoming call from #{exten}" answer do FSR::Log.info "***Reading DTMF from #{exten}" read("/home/freeswitch/freeswitch/sounds/music/8000/sweet.wav", 4, 10, "input", 7000) do |read_var| FSR::Log.info "***Success, grabbed #{read_var.strip} from #{exten}" # Tell the caller what they entered speak("Got the DTMF of: #{read_var}") do #Hangup the call hangup end end end end end FSR.start_oes! OutboundDemo, :port => 8084, :host => "127.0.0.1" An Inbound Event Socket Listener example using FreeSWITCHeR's hook system: -------------------------------------------------------------------------- #!/usr/bin/ruby require 'pp' require 'fsr' require "fsr/listener/inbound" # EXAMPLE 1 # This adds a hook on CHANNEL_CREATE events. You can also create a method to handle the event you're after. See the next example FSL::Inbound.add_event_hook(:CHANNEL_CREATE) {|event| FSR::Log.info "*** [#{event.content[:unique_id]}] Channel created - greetings from the hook!" } # EXAMPLE 2 # Define a method to handle CHANNEL_HANGUP events. def custom_channel_hangup_handler(event) FSR::Log.info "*** [#{event.content[:unique_id]}] Channel hangup. The event:" pp event end # This adds a hook for EXAMPLE 2 FSL::Inbound.add_event_hook(:CHANNEL_HANGUP) {|event| custom_channel_hangup_handler(event) } # Start FSR Inbound Listener FSR.start_ies!(FSL::Inbound, :host => "localhost", :port => 8021) An Inbound Event Socket Listener example using the on_event callback method instead of hooks: --------------------------------------------------------------------------------------------- #!/usr/bin/ruby require 'pp' require 'fsr' require "fsr/listener/inbound" class IesDemo < FSR::Listener::Inbound def on_event(event) pp event.headers pp event.content[:event_name] end end FSR.start_ies!(IesDemo, :host => "localhost", :port => 8021, :auth => "ClueCon") An example of using FSR::CommandSocket to originate a new call in irb: ---------------------------------------------------------------------- irb(main):001:0> require 'fsr' => true irb(main):002:0> FSR.load_all_commands => [:sofia, :originate] irb(main):003:0> sock = FSR::CommandSocket.new => #<FSR::CommandSocket:0xb7a89104 @server="127.0.0.1", @socket=#<TCPSocket:0xb7a8908c>, @port="8021", @auth="ClueCon"> irb(main):007:0> sock.originate(:target => 'sofia/gateway/carlos/8179395222', :endpoint => FSR::App::Bridge.new("user/bougyman")).run => {"Job-UUID"=>"732075a4-7dd5-4258-b124-6284a82a5ae7", "body"=>"", "Content-Type"=>"command/reply", "Reply-Text"=>"+OK Job-UUID: 732075a4-7dd5-4258-b124-6284a82a5ae7"} SUPPORT ------- Home page at http://code.rubyists.com/projects/fs #rubyists on FreeNode
Adhearsion is an open-source telephony development framework
Adhearsion is an open-source telephony development framework
Adhearsion is an open-source telephony development framework
Adhearsion is an open-source telephony development framework
Adhearsion is an open-source telephony development framework. This is a fork to add CallWeaver compatibility.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.