Coder Social home page Coder Social logo

somleng / somleng-project Goto Github PK

View Code? Open in Web Editor NEW
45.0 5.0 12.0 38.24 MB

Entrypoint for the Somleng Project

Home Page: https://www.somleng.org

License: MIT License

HTML 71.83% HCL 11.69% JavaScript 8.97% CSS 6.28% Shell 1.23%
somleng freeswitch voice voip cloud-communications-platform twilio telephony hacktoberfest

somleng-project's Introduction

The Somleng Project

DPG Approved

About this Repository

This repository is the entry point for The Somleng Project. The README links to the individual software components that make up Somleng. The repository also contains the source code for somleng.org.

Build

What is Somleng?

Somleng is the world's only Open Source Telco-as-a-service (TaaS) and Cloud-communications-as-a-service (CPaaS). With the support of UNICEF, we're helping to save lives by reaching some of the most remote and vulnerable communities around the world. Learn more.

Our vision is a world where communications is accessible to everyone.

You can use Somleng to roll out your own programmable voice and SMS to:

How does it work?

The diagram below shows how each component is connected together.

Somleng-Overview

Explanation

On the left hand side, applications such as RapidPro, Somleng SCFM, Early Warning Systems, or your own custom application use Twilio's libraries to connect to Somleng's Open Source Implementation of Twilio's REST API by updating the endpoint in the helper library from api.twilio.org to api.somleng.org (or to your own URL running Somleng).

Somleng then connects to carriers, aggregators, network providers, VoIP gateways, or SMS gateways in order to make or receive calls/SMS from the telephone network via SomlengSWITCH which interprets the TwiML (provided by the connecting application on the left) in order to control a call / SMS.

More information on the various components are listed below. More detailed information about each component can be found in the individual project repositories.

Somleng

Somleng is an Open Source Cloud Communications Platform as a Service (CPaaS). This is the core engine of Somleng. Some features include:

  • An open source implementation of Twilio's REST API for programmable voice and SMS.
  • White-label(able) dashboard.

SomlengSWITCH

SomlengSWITCH is the low level switching layer for Somleng. Some features include:

  • TTS engines
  • Open source TwiML parser

Somleng Simple Call Flow Manager (SCFM)

Somleng Simple Call Flow Manager (SCFM) is an application which can be used to connect and process calls through Somleng (or Twilio). Some features include:

  • Contact management
  • Callflow management

Documentation

Below is a link to the documentation start page.

Getting Started

Follow the Getting Started Guide and run through the tutorials to learn about Somleng.

Installation

Follow the Installation guide to get Somleng up and running on your local development machine.

Deployment

The infrastructure directory contains Terraform configuration files in order to deploy Somleng to AWS. This repository only contains core infrastructure. Each individual component's infrastructure is in its own repository. Some of the infrastructure in this repository is a dependency of the other components and is shared using remote state.

Hosting

Chatterbox Solutions offers white-labeled Somleng hosting for Carriers. Currently this service is in private beta. Please contact us for more info.

Connect with the community

You can join at the Discord channel for asking questions about the project or talk about Somleng with other peers.

Roadmap

Our 2024 Roadmap is structured around the following strategic building blocks.

  • Create more network reachability.
  • Add more communication channels.
  • Global customer onboarding.

Create more network reachability

In order to provide a cheaper alternative to existing CPaaS companies, especially in emerging markets, we need to partner with carriers and individuals who can provide in-country network reachability.

We plan to achieve this by the following approaches:

  1. Encourage local carriers to use Somleng.

    Local carriers can offer much cheaper pricing than global aggregators which are used by existing CPaaS providers. By using Somleng to offer white-labeled programmable voice and SMS to their customers, local carriers can generate extra revenue which would otherwise go to global CPaaS providers. Additionally local carriers can publish their routes to be used by global customers in the Somleng network.

  2. Empower individuals to become in-country network providers.

    Individuals across the globe can generate income by using their own hardware (GSM modem, SIM Box, etc)to provide network connectivity for Somleng. Individuals register their device with Somleng and Somleng will automatically route calls to devices based on network quality and pricing.

Add more communication channels

Add programmable SMS to the Somleng stack by developing an open source implementation of Twilio's Programmable SMS API. Carriers and network providers can configure SMPP routes for programmable SMS similar to programmable voice.

Global customer onboarding

Once there are local carriers and network providers providing pubic routes on the Somleng network, we can open up global customer onboarding. Customers can then sign-up and use programmable voice and SMS through these providers without the need for a direct relationship with them.

Learn more

To dive deeper into our roadmap and progress please refer to our Pivotal Tracker Project.

Contributing

For carriers, network providers, or anyone who is interested in suggesting features to Somleng, feel free to join us on the Discord channel.

Currently we are moving quickly to achieve the goals stated in our roadmap. While we welcome anyone who wants to contribute to Somleng we have some specific goals which we want to achieve. It's best to reach out to us on the Discord channel first to discuss your ideas before submitting a pull request.

All final decisions about the direction of this project will be decided by the Somleng team.

Who's sponsoring The Somleng Project?

The Somleng Project is among the first 5 start-ups to received investment from the the UNICEF Innovation Fund.

What does Somleng mean?

Somleng (แžŸแŸ†แžกแŸแž„) means Voice in Khmer.

Project Resources

Investors

Pitch Deck

Special thanks to our investors:

UNICEF Innovation Fund

somleng-project's People

Contributors

dependabot[bot] avatar dwilkie avatar github-actions[bot] avatar samnang avatar traviscibot avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

somleng-project's Issues

Problem when changing the dashboard and api domain

Hello,

I'm having trouble running the application in a production environment.

I am not able to change the domain for the application.
I tried changing it using the documentation, but it didn't work.

I want to be able to access the application through my domain, not through the address "my-carrier.app.lvh.me:3000"

Problem to synthesize voice

Hey guys,

The application is working as expected, however I am having problems selecting a certain language to synthesize speech and to use Polly Voices from Amazon.
The language in which the problem is occurring is pt-BR, in the default language it works normally and I don't use Amazon's Polly Voices.

This is the TwiML instructions:

<?xml version="1.0" encoding="UTF-8"?>
  <Response>
    <Say language="pt-BR" voice="Polly.Ricardo" loop="5">Testando Zabbix</Say>
</Response>

When querying the freeswitch container logs, it appears this:
Captura de Tela 2022-12-19 aฬ€s 21 20 43

Add GETTING_STARTED guide

Todo

  • Link to GETTING_STARTED guide from README

Done

  • Add docker-compose which boots all of the Somleng services then make a call.
  • Figure out how to call host from Docker (use LinPhone in Docker)
  • Use docker curl
  • Figure out how to set env vars for the User Account SID and Auth Token and use them in curl
  • Figure out how to pass env vars for Admin Account SID and Auth token to FreeSWITCH
  • Add links to installing git and docker
  • Configure adhearsion URLS

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.