SIP

Kamailio DNS and NAT

DNS sub-system in Kamailio DNS failover DNS load balancing NAT ( Network Address Translation) NAT ( Network Address Translation) Why is NAT is important in SIP? Types of NAT solutions NAT behaviours RTP NAT Fixing NAT NAT Traversal Module Why use keepalive when Registrations are already there for NATing ? How keepalives work for NATing…

Asterisk – installation and dial plans for WebRTC supported PJSIP clients

Asterisk is a framework or toolkit designed for VOIP systems . It can support Enterprise communication systems like PBXs, call distributors, VoIP gateways , conference bridges etc . It is open source and free to use . It is developed in C and runs in linux . Technically , Asterisk has protocol support for many…

Kamailio WebRTC SIP Server

Kamailio TLS module Websocket module RTPengine JSSIP JSSIP WebRTC client for kamailio SIP over WEBSOCKET messages and kamailio processing REGISTER sip JSSIP UA Kamailio REGISTRAR INVITE + SDP 100 trying from callee 180 ringing from Callee 200 ok + SDP Kamailio’s reply_route ACK The purpose of this article is to demo the process of using…

Opensips Modules

If you are new are opensips you cab read Over view of Opensisp SIP server here https://telecom.altanai.com/2018/06/06/opensips/ This article talks about modules and subparts of Opensips and their role in defining the purpose and application of Opensips which can be as an lighweight proxy to loadbalancer or even as AAA server. Dispatcher Module This modules…

Opensips

Due to its very flexible and customisable routing engine it can be used in number of scenarios such as an SIP proxy or a router and due to its high throughput it is widely recommended as an enterprise grade inbound/outbound proxy server.

Lua Scripts for kamailio Routing

Kamailio uses a native scripting laguage for its configuration file kamailio.cfg . This components of this file are : global parameters loading modules module parameters routing blocks like request_route {…}, reply_route {…}, branch_route {…} etc These parameters including initialization event routes , are interpeted and loaded at kamailio startup. We know that restart of sip…

RTPengine on kamailio SIP server

RTPengine is a proxy for RTP traffic and other UDP based media traffic over either IPv4 or IPv6. It can even bridge between diff IP networks and interfaces . It can do TOS/QoS field setting. It is Multi-threaded , can advertise different addresses for operation behind NAT.

Kamailio Security

Kamailio security modules , Sanity , permission , topos , ACL , Fireqall , anti flood,s ecfilter module

Opensips as SIP gateway

OpenSIP provided dispatcher modules which computes hashes over parts of the request and selects an address from a destination set which is then as outbound proxy. Combination of opensips working scenarios scripts with code is at https://github.com/altanai/opensipsexamples. In the config of opensips load the file dispatcher.list with destination sets proxies 2 sip:127.0.0.1:5080 2 sip:127.0.0.1:5082 gateways…

Kamailio as Inbound/Outbound proxy or Session Border Controller (SBC)

role of an SBC is to shield the core network from external entities such as user agent’s , carrier network while also providing security , auth and accounting services . In many cases SBC also provides NAT traversal and policy control features ( such as rate limiting , ACL etc ) . In advanced cases…

Freeswitch PBX system

IP PBX FreeSWITCH Class 4 switch Class 5 switch freeswitch-setup-as-hosted-ip-pbx Freeswitch as B2BUA This article talks about setting up an in-house hosted Enterprise PBX system for sure and private communication within enterprise communication. IP PBX A PBX acts as the central switching system for phone calls within a business. Cloud Hosted IP PBX Systems On-premise…

Oracle Communication Application Server ( OCAS)

Back in 2010 , there was a very resilient SIP server called BEA weblogic , essentially used to write B2BUA ( back to back user agent application ) using SIP servlets for SIP based call flows . It was later acquired by Oracle and termed as Oracle Weblogic , then OCAS – Oracle Communication application…

Sip server Brekeke

We used Brekeke SIP server to run our SIP applications . Although there are newer versions of Brekeke SIP server out now . More awesome than before , we prefer using the old one for the sake of not messing with legacy SIP applications . The official site for brekeke is – http://www.brekeke.com/sip/ . A general…

Kamailio Architecture, Core and Modules

kamailio has a modular architecture with core components and modules to extend the functionality, this article will be discussing few of the essential modules in Kamailio.

Telephony Solutions with Kamailio

Rich features set suiting to telephony domain that includes IMS extensions for VoLTE; ENUM; DID and least cost routing; load balancing; routing fail-over; Json and XMLRPC control interface, SNMP monitoring. To integrate with a carrier grade telecom network as SBC / gateway / inbound/outbound proxy , it can act as IPv4-IPv6 gateway , UDP/TCP/SCTP/WS translator…

Proxying Media Streams via Kamailio’s RTP Proxy

Kamailio is a SIP server which does not play any role by itself in media transmission path. this behaviour leads to media packets having to attempt to stream peer to peer between caller and callee which in turn many a times causes them to get dropped in absence of NAT management To ensure that media…

OfficeSIP

This post describes the installation , setup and configuration of Office SIP server to provide a registrar to our SIP based WebRTC application .

BEA Weblogic SIP server

Bea server is a old SIP servlet container ie application server which is used to embed control logic in a program. 1. Install Bea Weblogic 2. Follow the Installation steps Make domain 3. Goto the installation directory . Usually C:/bea/user_projects/mydomain/ . click on startweblogic.cmd in windows. In case the system is linux run startweblogic.sh script…

SIP Presence

We have already learned about Sip user agent and sip network server. SIP clients initiates a call and SIP server routes the call . Registrar is responsible for name resolution and user location. Sip proxy receives calls and send it to its destination or next hop. Presence is user’s reachability and willingness to communicate its…

Interoperability between WebRTC, SIP phones and softphones

SIP Server convert the SIP transport from WebSocket protocol to UDP, TCP or TLS which are supported by all legacy networks. It also facilitates the use of rich serves such as phonebook synchronisation , file sharing , oauth in client .

Kamailio Call routing and Control

Kamailio SIP server evolved from SER and OpenSER. Written in ANSI C , primarily it is an open source proxy SIP server. RFC 3261 compliant and has support for various Operating system to install and run on as alpine , centos , deb , fedora , freebsd , netbsd , obs , openbsd , opensuse…

SIP and SDP Messages Explained

SIP is a widely adopted application layer protocol used in VoIP calls and confernecing applciations and in IMS architeture or pure packet switched networks . More on SIP , its packet structure , transaction and dialogs , loose and strict record routing , location service , near and far end nating , and commonly used…

Kamailio Transaction management and Transaction Module tm

Kamailio is basically only a transaction stateful proxy, without any dialog support build in. Here the TM module enables stateful processing of SIP transactions. State is a requirement for many complex logic such as accounting, forking , DNS resolution

SIP VoIP system architecture basics

A VOIP/CPaaS solution is designed to accommodate both signalling and media. It integrates with various external endpoints. These include SIP phones like desktop, softphones, and webRTC. It also involves telecom carriers, different VoIP network providers, and enterprise applications such as Skype and Microsoft Lync. Additionally, it connects with Trunks. A sufficiently capable SIP platform should…

SIP ( Session Initiation Protocol )

SIP – Application layer protocol SIP Requests SIP responses Session Description Protocol  (SDP) SIP transactions, dialog , branch Matching in-dialog transactions/requests Record Routing strict routing loose routing Mobility and Location Service Network Address Translator ( NAT) Far End Traversal Near End Traversal SIP Call Flows Registeration Call Redirection Forking click to Dial SIP for Instant…

Mobicents SIP server platform

We know that SIP is in the p2p session layer of the OSI mode and used to setup voip sessions and that a SIP Servlets must be executed within a SIP Servlets Container, which implements the SIP Servlet specification. Mobicents sip servlets have been extensively used to create , deploy and manage VOIP services. Also…

SIP in IMS

A diagrammatic layout of the nodes , interwokring among them and involvment of SIP in the different planes of  IMS architecture .

JSR 116 – SIP SERVLET 1.0

SIP Servlet 1.0 API •JSR 116 •Built into the Servlet container that also hosts  portlets and HTTP Servlets. •SIP Servlet API developed under the JCP (Java Community Process) as JSR 116 (Java Specification Request), as a set of neutral interfaces Servlet Container •Environment in which a servlet can exist •Loads and initializes a servlet •Invokes…

Freeswitch Integration with Telecom Carrier

This articles is a follow up of the earlier freeswitch capability introduction and some generic usecases around dialplans and contexts. This post contains instructions on how to integrate your SIP VOIP Freeswitch server to ITSP ( Internet Telephony Service Providers) which are basically part of large telecommunications companies. First we check the external profile via…

Freeswitch Modules

This section describes some of the popular and useful freeswitch module. Although there are many more modules, I have picked a few of commonly used one and divided them into categories Logger modules in Freeswitch XML Interfaces in Freeswitch Event system and Event Handlers in Freeswitch mod_amqp mod_cdr_csv DataBase Applications Info, Intercept and eavesdrop Channel…

FreeSwitch SIP and Media Server

Architecture and Design of Freeswitch Core Threaded Model  State Machine in Freeswitch Core Channel Variables Dialplan Speak Time and Date on Call Call Routing based on destination number and forwarding to voice mail on no answer Call routing based on day and time Match incoming network IP address with pre configured IP Store captured values…

SIP Servlets – Develop and Deploy

With this article I will outlines the SIP servlet creation and various call routing logic development. A simple proxy SIP ser vlet application also has 4 parts Extension SIP servlet Classand global var declaration 2. Init 3. doRequest 4. doResponse Githuhb Repo for Source Code of given applications : https://github.com/altanai/sip-servlets SIP protocol based Surveillance Stream…