• Stars
    star
    172
  • Rank 221,201 (Top 5 %)
  • Language
    Python
  • License
    BSD 2-Clause "Sim...
  • Created over 10 years ago
  • Updated 3 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Sippy B2BUA is a RFC3261-compliant Session Initiation Protocol (SIP) stack and Back-to-back user agent (B2BUA) server software.

Build Status@GitHub

Sippy B2BUA

Sippy B2BUA is a RFC3261-compliant Session Initiation Protocol (SIP) stack and Back-to-back user agent (B2BUA).

The Sippy B2BUA is a SIP call controlling component. Unlike a SIP proxy server, which only maintains transaction state, the Sippy B2BUA maintains complete call state and participates in all call requests. For this reason it can perform number of functions that are not possible to implement using SIP proxy, such as for example accurate call accounting, pre-paid rating and billing, fail over call routing etc. Unlike PBX-type solutions such as Asterisk for example, the Sippy B2BUA doesn't perform any media relaying or processing, therefore it doesn't introduce any additional packet loss, delay or jitter into the media path.

Features

  • 5,000-10,000 simultaneous sessions per server
  • 150-400 call setups/tear-downs per second
  • Real-time calls control and call data records (CDRs) generation
  • Optional ability to use Sippy RTPproxy for media relaying
  • Optional ability to perform Cisco-compatible RADIUS AAA (Authentication, Authorization and Accounting)
  • RFC3261 compliance
  • Seamless compatibility with majority of popular SIP software and hardware on the market today
  • Robustness and Resilience
  • Simple and clean, yet flexible, internal design making implementing new features and services easy
  • Sippy B2BUA could be easily combined with other Open Source software, such as SIP Express Router / OpenSIPS to build complete softswitch solution

Installation

Install latest stable version

pip install sippy

Install latest development version

pip install git+https://github.com/sippy/b2bua

Running

To get started, you can use the b2bua_simple implementation. The following example will cause the b2bua run in the foreground so you can see the SIP messaging. If you make a call to the IP address of your host machine, the b2bua will recieve the call on its UAC side, and it will send a new call leg out its UAS side to the IP address 192.168.1.1. It is expected that 192.168.1.1 is some sort of SIP switch or termination gateway.

b2bua_simple -f -n 192.168.1.1

Documentation

See documentation/documentation.md

Support us on Patreon!

Sippy B2BUA is available for use at the most liberal Open Source license there is and we promise to keep it this way. If you like our software, find it useful and want to support us moving it forward consider becoming a patron here Sippy Labs Patreon Page. In turn, we would give a priority to bugs and feature requests from our Patrons.

More Repositories

1

rtpproxy

The RTPproxy is a high-performance software proxy for RTP streams that can work together with Sippy B2BUA, Kamailio, OpenSIPS and SER.
Makefile
411
star
2

go-b2bua

The GO port of the Sippy B2BUA
Go
65
star
3

voiptests

Meta-repository to test interop between latest versions of opensips, kamailio, sippy b2bua and rtpproxy
Python
43
star
4

rtp_cluster

RTP Cluster is a front-end for multiple RTPproxies
Python
39
star
5

libg722

The ITU G.722 codec, Copyright (C) 2005 Steve Underwood, Copyright (c) CMU 1993 Computer Science, Speech Group Chengxiang Lu and Alex Hauptmann
C
34
star
6

libsinet

A lightweight user land implementation of the UDP/IPv4 stack designed to plug into the netmap framework. The 's' stands for speed.
C
10
star
7

go-rtp_cluster

GoLang version of the rtp_cluster
Go
10
star
8

Infernos

Real-time multi-modal inference server for interacting with humans and other intelligences around
Python
9
star
9

elecirc

SIP-Pecker: Bot to Monitor and Report Status and Availability of SIP Endpoints
5
star
10

vapp

A Python framework to create multilingual IVR applications
Python
5
star
11

hepconnector

Client library to integrate HEPv3 Encapsulation Protocol
C
4
star
12

sip_test_data

Some real-world looking test data and python code to use it.
Python
4
star
13

webrtc_phone

WebRTC -> SIP phone built using Sippy B2BUA and Sippy RTPProxy.
Shell
3
star
14

opensips2019_tutorial

Scrips and configuration files related to the "Advanced RTP media handling using OpenSIPS and RTPProxy: distributed media processing, stream injection, call recording & lawful intercept" tutorial
Roff
3
star
15

librtpsynth

Low-level library optimized to generate/process sequence of the RTP packets.
C
2
star
16

py-xmlrpc

Fast XMLRPC Python Library by Shilad Sen
C
1
star
17

socket_server

UDP socket server that can work as a front-end for multiple Sippy B2BUA processes to hide topology
C
1
star
18

Sippy_Recorder

Example SIP Recorder Server (RFC 7866) build on top of Sippy Python SIP Stack/UA and RTPProxy
Python
1
star