All Projects → sippet → sippet

sippet / sippet

Licence: BSD-3-Clause license
C++ SIP stack based on Chromium source code

Programming Languages

C++
36643 projects - #6 most used programming language
python
139335 projects - #7 most used programming language
java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to sippet

Katari
Katari - Python Session Initiated Protocol Framework
Stars: ✭ 29 (+26.09%)
Mutual labels:  sip, sip-stack
React Native Modalfy
🥞 Modal citizen of React Native.
Stars: ✭ 212 (+821.74%)
Mutual labels:  stack
Algo Tree
Algo-Tree is a collection of Algorithms and data structures which are fundamentals to efficient code and good software design. Creating and designing excellent algorithms is required for being an exemplary programmer. It contains solutions in various languages such as C++, Python and Java.
Stars: ✭ 166 (+621.74%)
Mutual labels:  stack
Stackoverflow Clone
Clone project of a famous Q/A website for developers which is stackoverflow built using MySQL-Express-React-Node 🌐
Stars: ✭ 182 (+691.3%)
Mutual labels:  stack
Rayo.js
Micro framework for Node.js
Stars: ✭ 170 (+639.13%)
Mutual labels:  stack
Interview Questions
List of all the Interview questions practiced from online resources and books
Stars: ✭ 187 (+713.04%)
Mutual labels:  stack
Android Swipecards View
Android library to implement cards stack view with swipe to remove feature
Stars: ✭ 162 (+604.35%)
Mutual labels:  stack
nano-node-docker
Setup a fully automated NANO cryptocurrency node as part of an dockerized stack with fast-syncing and easy SSL support.
Stars: ✭ 77 (+234.78%)
Mutual labels:  stack
Call in stack
Call a function in a new stack that allocated anywhere. Do not be afraid of stack limit in your coroutines! Try to make your stack shareable between all coroutines!
Stars: ✭ 197 (+756.52%)
Mutual labels:  stack
Tooling
🧰 Up-to-date list of JavaScript and TypeScript tooling resources
Stars: ✭ 181 (+686.96%)
Mutual labels:  stack
Leetcode
High-quality LeetCode solutions
Stars: ✭ 178 (+673.91%)
Mutual labels:  stack
Mean
The MEAN stack uses Mongo, Express, Angular(6) and Node for simple and scalable fullstack js applications
Stars: ✭ 12,125 (+52617.39%)
Mutual labels:  stack
C Macro Collections
Easy to use, header only, macro generated, generic and type-safe Data Structures in C
Stars: ✭ 192 (+734.78%)
Mutual labels:  stack
Swarmpit
Lightweight mobile-friendly Docker Swarm management UI
Stars: ✭ 2,255 (+9704.35%)
Mutual labels:  stack
Staticvec
Implements a fixed-capacity stack-allocated Vec alternative backed by an array, using const generics.
Stars: ✭ 236 (+926.09%)
Mutual labels:  stack
Interviewbit
Collection of Abhishek Agrawal's gists solutions for problems on https://www.interviewbit.com
Stars: ✭ 166 (+621.74%)
Mutual labels:  stack
Docker Elastic Stack
ELK Stack Dockerfile
Stars: ✭ 175 (+660.87%)
Mutual labels:  stack
Piladb
Lightweight RESTful database engine based on stack data structures
Stars: ✭ 184 (+700%)
Mutual labels:  stack
Golang Examples
Some examples for the programming language Go.
Stars: ✭ 14 (-39.13%)
Mutual labels:  stack
chrome-headless-launcher
Run the latest Chrome browser on CLI without head
Stars: ✭ 39 (+69.57%)
Mutual labels:  chromium

sippet

This C++ library has been designed as a Chromium SIP stack.

Current status: Work-in-progress

Sippet is an open-source SIP User-Agent library, compliant with the IETF RFC 3261 specification. It can be used as a building block for SIP client software for uses such as VoIP, IM, and many other real-time and P2P communication services.

The main target was to enable Javascript applications to use UDP, TCP and TLS transports along WebSocket. Existing SIP solutions for the browser are forced to use the WebSockets API to send/receive SIP messages. But for many service providers, the WebSocket protocol could not be a feasible solution due to scalability, support and other business constraints.

By the way, the stack can be used as a full client-side C++ Stack (full-featured) without Javascript integration.

Features

  • Support to symmetric response routing (RFC 3581).
  • Support to client-initiated connections (RFC 5626).
  • Multiplatform: same platforms supported by Chromium.
  • Parsing of SIP and Tel URIs, compatible with GURL.
  • TODO: Websockets, just in case.
  • SOCKS for stream-oriented connections, inherited from system settings.
  • Pass-through HTTP proxies using CONNECT (SIP over HTTP proxies).
  • Flexible SSL/TLS support (client-side certificates, restrict or relaxed cipher list).

Fun stuff

  • Added G.729 support to WebRTC: use at your own risk, you have to pay royalties if you want to use this codec commercially.
    • The source code is now based on ITU-T release of October 2006, and include some optimizations provided by the WebRTC signal processing library. Several optimizations available in other source codes (such as CSipSimple and Siphon) were discarded as they don't consider saturation. Precision was considered more important than optimization in this derived work.
  • Created a 'compatibility mode' for WebRTC, so it can negotiate media without supporting SRTP/DTLS and ICE.
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].