All Projects β†’ fonoster β†’ fonoster

fonoster / fonoster

Licence: MIT license
πŸš€ The open-source alternative to Twilio

Programming Languages

javascript
184084 projects - #8 most used programming language
typescript
32286 projects
shell
77523 projects
Dockerfile
14818 projects
Mustache
554 projects
HTML
75241 projects

Projects that are alternatives of or similar to fonoster

Fonos
πŸš€ The open-source alternative to Twilio
Stars: ✭ 3,785 (-25.37%)
Mutual labels:  twilio, telephony, voip, cpaas, programmable-voice, ucaas, cloud-communications-platform
somleng
Open Source Implementation of Twilio's REST API
Stars: ✭ 33 (-99.35%)
Mutual labels:  twilio, telephony, voip, cloud-communications-platform
human-call-filter
Captcha for phone calls
Stars: ✭ 41 (-99.19%)
Mutual labels:  twilio, telephony, voip
Switchio
asyncio powered FreeSWITCH cluster control
Stars: ✭ 160 (-96.85%)
Mutual labels:  telephony, voip
Freeswitch
FreeSWITCH is a Software Defined Telecom Stack enabling the digital transformation from proprietary telecom switches to a versatile software implementation that runs on any commodity hardware. From a Raspberry PI to a multi-core server, FreeSWITCH can unlock the telecommunications potential of any device.
Stars: ✭ 1,213 (-76.08%)
Mutual labels:  telephony, voip
Kamailio
Kamailio - The Open Source SIP Server for large VoIP and real-time communication platforms -
Stars: ✭ 1,358 (-73.23%)
Mutual labels:  telephony, voip
Core
Free, easy to setup PBX for small business based on Asterisk 16 core
Stars: ✭ 190 (-96.25%)
Mutual labels:  telephony, voip
Esl Client
A Fork from http://git.freeswitch.org/git/freeswitch-contrib/tree/dvarnes/java/esl-client
Stars: ✭ 160 (-96.85%)
Mutual labels:  telephony, voip
Twilio Java
A Java library for communicating with the Twilio REST API and generating TwiML.
Stars: ✭ 371 (-92.69%)
Mutual labels:  twilio, telephony
Routr
Routr: Next-generation SIP Server
Stars: ✭ 788 (-84.46%)
Mutual labels:  twilio, voip
Oreka
Enterprise telephony recording and retrieval system with web based user interface.
Stars: ✭ 20 (-99.61%)
Mutual labels:  telephony, voip
Asterisk Cdr Viewer Mod
Simple and fast viewer for Asterisk CDRs and Recordings (Mod)
Stars: ✭ 76 (-98.5%)
Mutual labels:  telephony, voip
Baresip
Baresip is a modular SIP User-Agent with audio and video support
Stars: ✭ 817 (-83.89%)
Mutual labels:  telephony, voip
Ivozprovider
IVOZ Provider - Multitenant solution for VoIP telephony providers
Stars: ✭ 127 (-97.5%)
Mutual labels:  telephony, voip
Katari
Katari - Python Session Initiated Protocol Framework
Stars: ✭ 29 (-99.43%)
Mutual labels:  telephony, voip
awesome-rtc
πŸ“‘ A curated list of awesome Real Time Communications resources
Stars: ✭ 196 (-96.14%)
Mutual labels:  telephony, voip
Kalbi
Kalbi - Golang Session Initiated Protocol Framework
Stars: ✭ 85 (-98.32%)
Mutual labels:  telephony, voip
Twilio Csharp
Twilio C#/.NET Helper Library for .NET Framework 3.5+ and supported .NET Core versions
Stars: ✭ 541 (-89.33%)
Mutual labels:  twilio, telephony
sms blitz
Send SMS messages through multiple different providers
Stars: ✭ 29 (-99.43%)
Mutual labels:  twilio, telephony
twilio-client.js
Twilio’s Programmable Voice JavaScript SDK
Stars: ✭ 63 (-98.76%)
Mutual labels:  twilio, voip

Fonoster: The open-source alternative to Twilio

Fonoster Inc researches an innovative Programmable Telecommunications Stack that will allow for an entirely cloud-based utility for businesses to connect telephony services with the Internet.

Fonoster - Engage with your customers with VoIP or SMS | Product Hunt

teaser_video.mov

build license: MIT Tweet

Features

The most notable features on FN 0.2 are:

  • Cloud initialization with Cloud-Init
  • Multitenancy
  • Easy deployment of PBXs functionalities
  • Programmable Voice Applications
  • NodeJS SDK
  • Web SDK
  • Support for Amazon Simple Storage Service (S3)
  • Secure API endpoints with Let's Encrypt
  • Authentication with OAuth2
  • Authentication with JWT
  • Role-Based Access Control (RBAC)
  • Plugins-based Command-line Tool
  • Support for Google Speech API
  • Experimental support for Cloud Functions
  • Experimental support for Secret management

Code Examples

A Voice Application is a server that takes control of the flow in a call. A Voice Application can use any combination of the following verbs:

  • Answer - Accepts an incoming call
  • Hangup - Closes the call
  • Play - Takes an URL or file and streams the sound back to the calling party
  • Say - Takes a text, synthesizes the text into audio, and streams back the result
  • Gather - Waits for DTMF or speech events and returns back the result
  • SGather - Returns a stream for future DTMF and speech results
  • Dial - Passes the call to an Agent or a Number at the PSTN
  • Record - It records the voice of the calling party and saves the audio on the Storage sub-system
  • Mute - It tells the channel to stop sending media, effectively muting the channel
  • Unmute - It tells the channel to allow media flow

Voice Application Example:

const { VoiceServer } = require("@fonoster/voice");
const voiceServer = new VoiceServer({ base: '/voiceapp' });

voiceServer.listen((req, res) => {
  console.log(req);
  res.play("sound:hello-world");
});

// your app will be at http://127.0.0.1/voiceapp 
// and you can easily publish it to the Internet with:
// ngrok http 3000

Everything in FN is an API first, and initiating a call is no exception. You can use the SDK to start a call with a few lines of code.

Example of originating a call with the SDK:

const Fonoster = require("@fonoster/sdk");
const callManager = new Fonoster.CallManager();

callManager.call({
 from: "9842753574",
 to: "17853178070",
 webhook: "https://5a2d2ea5d84d.ngrok.io/voiceapp"
})
 .then(console.log)
 .catch(console.error);

Getting Started

To get started with FN use the following resources:

Give a Star! ⭐

If you like this project or plan to use it in the future, please give it a star. Thanks πŸ™

Bugs and Feedback

For bugs, questions, and discussions, please use the Github Issues

Contributing

For contributing, please see the following links:

We're glad to be supported by respected companies and individuals from several industries. See our Github Sponsors learn more.

Sponsors

Find all supporters in our BACKERS.md file.

Become a Github Sponsor


Special Announcement:

We now have a Slack Channel
There we plan to discuss roadmaps, feature requests and more
Join the channel


Authors

License

Copyright (C) 2022 by Fonoster Inc. MIT License (see LICENSE for details).

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].