The sip:provider CE Handbook 2.5


Table of Contents

1. Introduction
1.1. About this Document
1.2. Getting Help
1.2.1. Community Support
1.2.2. Commercial Support
1.3. What is the sip:provider CE?
1.4. What is inside the sip:provider CE?
1.5. Who should use the sip:provider CE?
2. Installation and Upgrade
2.1. Initial Installation
2.1.1. Prerequisites
2.1.2. Using the NGCP installer (recommended)
2.1.2.1. Installing the Operating System
2.1.2.2. Installing the sip:provider CE
2.1.3. Using a pre-installed virtual machine
2.1.3.1. VirtualBox image
2.1.3.2. VMware image
2.2. Initial System Configuration
2.2.1. Network Configuration
2.2.2. Apply Configuration Changes
2.2.3. Start Securing Your Server
2.2.4. Configuring the Email Server
2.2.5. What’s next?
2.3. Upgrade from v2.4 to v2.5
3. Platform Architecture
3.1. SIP Signaling and Media Relay
3.1.1. SIP and Media Elements
3.1.1.1. SIP Load-Balancer
3.1.1.2. SIP Proxy/Registrar
3.1.1.3. SIP Back-to-Back User-Agent (B2BUA)
3.1.1.4. SIP App-Server
3.1.1.5. Media Relay
3.1.2. Basic Call Flows
3.1.2.1. Endpoint Registration
3.1.2.2. Basic Call
3.1.2.3. Session Keep-Alive
3.1.2.4. Voicebox Calls
4. Administrative Configuration
4.1. Creating Domains
4.2. Creating Accounts
4.3. Creating Subscribers
4.4. Creating Peerings
4.4.1. Creating Peering Contracts
4.4.2. Creating Peering Groups
4.4.3. Creating Peering Servers
4.4.4. Authenticating and Registering against Peering Servers
4.4.4.1. Proxy-Authentication for outbound calls
4.4.4.2. Registering at a Peering Server
4.5. Configuring Rewrite Rule Sets
4.5.1. Inbound Rewrite Rules for Caller
4.5.2. Inbound Rewrite Rules for Callee
4.5.3. Outbound Rewrite Rules for Caller
4.5.4. Outbound Rewrite Rules for Callee
4.5.5. Assigning Rewrite Rule Sets to Domains and Subscribers
4.5.6. Creating Dialplans for Peering Servers
5. Advanced Subscriber Configuration
5.1. Access Control for SIP Calls
5.1.1. Block Lists
5.1.1.1. Block Modes
5.1.1.2. Block Lists
5.1.1.3. Block Anonymous Numbers
5.1.2. NCOS Levels
5.1.2.1. Creating NCOS Levels
5.1.2.2. Creating Rules per NCOS Level
5.1.2.3. Assigning NCOS Levels to Subscribers
5.2. Call Forwarding and Call Hunting
5.2.1. Defining Destination Sets
5.2.2. Activating a Destination Set
5.2.3. Defining Time Sets
5.2.4. Assigning a Time Set to a Call Forward
6. Customer Self-Care Interfaces
6.1. The Customer Self-Care Web Interface
6.1.1. Login Procedure
6.1.2. Site Customization
6.2. The Vertical Service Code Interface
6.3. The Voicemail Interface
7. Billing Configuration
7.1. Billing Data Import
7.1.1. Creating Billing Profiles
7.1.2. Creating Billing Fees
7.1.3. Creating Off-Peak Times
7.2. Billing Data Export
7.2.1. File Name Format
7.2.2. File Format
7.2.2.1. File Header Format
7.2.2.2. File Body Format
7.2.2.3. File Trailer Format
7.2.3. File Transfer
8. Provisioning interfaces
9. Configuration Framework
9.1. Configuration templates
9.1.1. .tt2 and .customtt.tt2 files
9.1.2. .prebuild and .postbuild files
9.1.3. .services files
9.2. config.yml and constants.yml files
9.3. ngcpcfg and its command line options
9.3.1. apply
9.3.2. build
9.3.3. commit
9.3.4. decrypt
9.3.5. diff
9.3.6. encrypt
9.3.7. help
9.3.8. initialise
9.3.9. pull
9.3.10. push
9.3.11. services
9.3.12. status
10. Security and Maintenance
10.1. Firewalling
10.2. Password management
10.3. SSL certificates.
10.4. Backup and recovery
10.4.1. Backup
10.4.2. Recovery
10.5. Reset database

1. Introduction

1.1. About this Document

This document describes the architecture and the operational steps to install, operate and modify the Sipwise sip:provider CE.

The first chapter gives an introduction into the sip:provider CE. It describes what it is, what it contains and who should use it.

The second chapter guides through the installation and upgrade process of the sip:provider CE. It lines out the prerequisites and the steps required to install it from scratch or upgrade it from an older version.

The third chapter provides an architectural overview of what software components are used within the sip:provider CE. It goes into each of the main components and outlines how the signaling and media paths are routed through the system. It also provides charts of basic call flows to give you an idea how the system internally works.

The fourth chapter describes the steps to configure the sip:provider CE in order to offer VoIP services to end users.

The fifth chapter shows the different customer self-care interfaces and describes how to configure them.

The sixth chapter describes the billing interface, so you can rate calls and export call detail records.

The seventh chapter describes in detail the steps necessary if you want to start modifying local configuration files to adapt and extend the system.

The eight chapter guides through the provisioning interface (SOAP and XMLRCP) system, so you can integrate it into your own or third-party provisioning and billing systems.

The ninth chapter outlines additional tasks to protect the sip:provider CE from security exploits and attacks, as well as describes the steps to perform regular backups and restore from them when necessary.

1.2. Getting Help

1.2.1. Community Support

We have set up the spce-user mailing list, where questions are answered on a best-effort basis and discussions can be started with other community users.

1.2.2. Commercial Support

If you need professional help setting up and maintaining the sip:provider CE, send an email to support@sipwise.com.

Sipwise also provides training and commercial support for the platform. Additionally, we offer a migration path to the sip:provider PRO appliance, which is the commercial, carrier-grade version of the sip:provider CE. If the user base grows on the CE, this will allow operators to migrate seamlessly to a highly available and scalable platform with defined service level agreements, phone support and on-call duty. Please visit www.sipwise.com for more information on commercial offerings.

1.3. What is the sip:provider CE?

The sip:provider CE is a SIP based Open Source Class5 VoIP soft-switch platform providing rich telephony services. It offers a wide range of features to end users (call forwards, voicemail, conferencing, call blocking, click-to-dial, call-lists showing near-realtime accounting information etc.), which can be configured by them using the customer-self-care web interface. For operators, it offers a fully web-based administrative panel, allowing them to configure users, peerings, billing profiles etc., as well as viewing real-time statistics of the system. For tight integration into existing infrastructures, it provides SOAP and XMLRPC APIs.

The sip:provider CE can be installed in a few steps within a couple of minutes and requires no knowledge about configuration files of specific software components.

1.4. What is inside the sip:provider CE?

Opposed to other free VoIP software, the sip:provider CE is not a single application, but a whole software platform, the Sipwise NGCP (Sipwise Next Generation Communication Platform), which is based on Debian GNU/Linux.

Using a highly modular design approach, the NGCP leverages popular open-source software like MySQL, Apache, Catalyst, Kamailio, SEMS, Asterisk etc. as its core building blocks. These blocks are glued together using optimized and proven configurations and work-flows and are complemented by building blocks developed by Sipwise to provide fully-featured and easy to operate VoIP services.

After downloading and starting the installer, it will fetch and install all the required Debian packages from the relevant Debian repositories. The installed applications are managed by the NGCP Configuration Framework, which allows to change system parameters in a single place, so administrators don’t need to have any knowledge of the dozens of different configuration files of the different packages. This provides a very easy and bullet-proof way of operating, changing and tweaking the otherwise quite complex system.

Once configured, integrated web interfaces are provided for both end users and administrators to use the sip:provider CE. By using the provided provisioning and billing APIs, it can be integrated tightly into existing OSS/BSS infrastructures to optimize work-flows.

1.5. Who should use the sip:provider CE?

The sip:provider CE is specifically tailored to companies and engineers trying to start or experiment with a fully-featured SIP based VoIP service without having to go through the steep learning curve of SIP signalling, integrating the different building blocks to make them work together in a reasonable way and implementing the missing components to build a business on top of that.

In the past, creating a business-ready VoIP service included installation and configuration of SIP software like Asterisk, OpenSER, Kamailio etc., which can get quite difficult when it comes to implementing advanced features. It required to implement different web interfaces, billing engines and connectors to existing OSS/BSS infrastructure. These things are now obsolete due to the CE, which covers all these requirements.