Making OpenSIPS work as MS Teams SBC

Introduction Alexey Vasilyev posted an article to the OpenSIPS blog site in September 2019 which explained how to use OpenSIPS as an SBC for Microsoft Teams Direct Routing: OpenSIPS as MS Teams SBC – Drops of wisdom, knowledge and news from OpenSIPS I am sure the OpenSIPS community is grateful to Alexey for sharing his … Read more


SIP transport protocol transcoding in OpenSIPS

Introduction This is the final article in my series about fixing SIP header addresses. It broadly overlaps with the theme of the earlier articles. As a VoIP solutions designer, you may want your proxy server to deliberately transcode between different transport protocols. For example, WebRTC to TCP or TLS to UDP. This is possible with … Read more


Fixing SIP header addresses – Contact headers

Part 3 of this series of articles focusses on the Contact header. In particular, I examine the use-cases where it is necessary to “fix” (or alter) a received Contact header. Contact headers work in close combination with Record-Route and Route headers in a mechanism known as loose routing. To get the most from this article … Read more


Fixing SIP header addresses – Via headers

In part 2, Via headers are put under the microscope. I examine how the address in the Via header is set by each node in the path; how and why it may differ from the source address. I will look at the functions available in OpenSIPS to detect and handle situations where the address in … Read more


Fixing SIP header addresses – Introduction

making two items of equipment work well together

The main theme I explore in these articles is when and how a SIP Proxy should alter (or “fix”) embedded sender address information – IP and port – in a SIP request that it has received. The headers that are most relevant here are Via, Contact and Record-Route


Contact and Record-Route headers explained

Diagnosing some problems in the world of VoIP requires close inspection of the SIP messages being exchanged, but there are many occasions where a good understanding of loose routing will be invaluable. The headers that underpin loose routing are Contact, Record-Route and Route. In this post, I explain how they work and provide some insight … Read more


Using the Clusterer Module for contact replication

Summary In this, the second part of a three-part article about the Clusterer Module, I explain how I got on when testing a pair of OpenSIPS Registrar Proxies configured as a highly available cluster. The design, which uses Pacemaker to assign a floating IP to the currently active server, is described in some detail in … Read more


HA Scenarios and the OpenSIPS Clusterer Module

Summary System reliability and avoidance of down-time are themes that recur time and again with Smartvox customers. In this article I will review some of options available to a system designer who wants to build a highly available OpenSIPS solution, paying particular attention to the new Clusterer module which is at the heart of a set … Read more


Using ClusterLabs Pacemaker with OpenSIPS

Summary In this article we examine how Pacemaker and Corosync might be used to supercharge OpenSIPS and build a highly available clustered solution. The focus is entirely on High Availability rather than any form of load sharing. This means we are looking for a way to have more than one server contactable on the same IP … Read more