The sip:provider CE Handbook mr5.0.1
Table of Contents
1. Introduction
1.1. About this Handbook
1.2. What is the sip:provider CE?
1.3. The Advantages of the sip:provider CE
1.4. Who is the sip:provider CE for?
1.5. Getting Help
1.5.1. Community Support
1.5.2. Commercial Support
2. Architecture
2.1. SIP Signaling and Media Relay
2.1.1. SIP Load-Balancer
2.1.2. SIP Proxy/Registrar
2.1.3. SIP Back-to-Back User-Agent (B2BUA)
2.1.4. SIP App-Server
2.1.5. Media Relay
2.2. Redis Database
3. Initial Installation
3.1. Prerequisites
3.2. Using the NGCP install CD (recommended)
3.3. Using the NGCP installer
3.3.1. Installing the Operating System
3.3.2. Installing the sip:provider CE
3.4. Using a pre-installed virtual machine
3.4.1. Vagrant box for VirtualBox
3.4.2. VirtualBox image
3.4.3. VMware image
3.4.4. Amazon EC2 image
4. Initial System Configuration
4.1. Network Configuration
4.2. Apply Configuration Changes
4.3. Start Securing Your Server
4.4. Configuring the Email Server
4.5. Advanced Network Configuration
4.5.1. Audiocodes devices workaround
4.6. What’s next?
5. VoIP Service Configuration Scenario
5.1. Creating a Customer
5.2. Creating a Subscriber
5.3. Domain Preferences
5.4. Subscriber Preferences
5.5. Creating Peerings
5.5.1. Creating Peering Groups
5.5.2. Creating Peering Servers
5.5.3. Authenticating and Registering against Peering Servers
5.6. Configuring Rewrite Rule Sets
5.6.1. Inbound Rewrite Rules for Caller
5.6.2. Inbound Rewrite Rules for Callee
5.6.3. Outbound Rewrite Rules for Caller
5.6.4. Outbound Rewrite Rules for Callee
5.6.5. Emergency Number Handling
5.6.6. Assigning Rewrite Rule Sets to Domains and Subscribers
5.6.7. Creating Dialplans for Peering Servers
6. Features
6.1. Managing System Administrators
6.1.1. Configuring Administrators
6.1.2. Access Rights of Administrators
6.2. Access Control for SIP Calls
6.2.1. Block Lists
6.2.2. NCOS Levels
6.2.3. IP Address Restriction
6.3. Call Forwarding and Call Hunting
6.3.1. Setting a simple Call Forward
6.3.2. Advanced Call Hunting
6.4. Local Number Porting
6.4.1. Local LNP Database
6.5. Header Manipulation
6.5.1. Header Filtering
6.5.2. Codec Filtering
6.5.3. Enable History and Diversion Headers
6.6. SIP Trunking with SIPconnect
6.6.1. User provisioning
6.6.2. Inbound calls routing
6.6.3. Number manipulations
6.6.4. Registration
6.7. Trusted Subscribers
6.8. Voicemail System
6.8.1. Accessing the IVR Menu
6.8.2. IVR Menu Structure
6.8.3. Type Of Messages
6.8.4. Folders
6.8.5. Flowcharts with Voice Prompts
6.9. Configuring Subscriber IVR Language
6.10. Sound Sets
6.10.1. Configuring Early Reject Sound Sets
6.11. Conference System
6.11.1. Configuring Call Forward to Conference
6.11.2. Configuring Conference Sound Sets
6.11.3. Joining the Conference
6.11.4. Conference Flowchart with Voice Prompts
6.12. Malicious Call Identification (MCID)
6.12.1. Setup
6.12.2. Usage
6.12.3. Advanced configuration
6.13. Subscriber Profiles
6.13.1. Subscriber Profile Sets
6.14. SIP Loop Detection
6.15. Invoices and Invoice Templates
6.15.1. Invoices Management
6.15.2. Invoice Templates
6.15.3. Invoices Generation
6.16. Email Reports and Notifications
6.16.1. Email events
6.16.2. Initial template values and template variables
6.16.3. Password reset email template
6.16.4. New subscriber notification email template
6.16.5. Invoice email template
6.16.6. Email templates management
6.17. The Vertical Service Code Interface
6.17.1. Configuration of Vertical Service Codes
6.17.2. Voice Prompts for Vertical Service Code Configuration
6.18. Handling WebRTC Clients
6.19. XMPP and Instant Messaging
7. Customer Self-Care Interface and Menus
7.1. The Customer Self-Care Web Interface
7.1.1. Login Procedure
7.1.2. Site Customization
7.2. The Voicemail Menu
8. Billing Configuration
8.1. Billing Profiles
8.1.1. Creating Billing Profiles
8.1.2. Creating Billing Fees
8.1.3. Creating Off-Peak Times
8.2. Fraud Detection and Locking
8.2.1. Fraud Lock Levels
8.3. Billing Data Export
8.3.1. File Name Format
8.3.2. File Format
8.3.3. File Transfer
9. Provisioning REST API Interface
9.1. API Workflows for Customer and Subscriber Management
10. Configuration Framework
10.1. Configuration templates
10.1.1. .tt2 and .customtt.tt2 files
10.1.2. .prebuild and .postbuild files
10.1.3. .services files
10.2. config.yml, constants.yml and network.yml files
10.3. ngcpcfg and its command line options
10.3.1. apply
10.3.2. build
10.3.3. commit
10.3.4. decrypt
10.3.5. diff
10.3.6. encrypt
10.3.7. help
10.3.8. initialise
10.3.9. pull
10.3.10. push
10.3.11. services
10.3.12. status
11. Network Configuration
11.1. General Structure
11.1.1. Available Host Options
11.1.2. Interface Parameters
11.2. Advanced Network Configuration
11.2.1. Extra SIP Sockets
11.2.2. Extra SIP and RTP Sockets
12. Software Upgrade
12.1. Release Notes
12.2. Upgrade from previous versions to mr5.0.1
13. Backup, Recovery and Database Maintenance
13.1. sip:provider CE Backup
13.1.1. What data to back up
13.1.2. The built-in backup solution
13.2. Recovery
13.3. Reset Database
13.4. Accounting Data (CDR) Cleanup
13.4.1. Cleanuptools Configuration
13.4.2. Accounting Database Cleanup
13.4.3. Exported CDR Cleanup
14. Platform Security, Performance and Troubleshooting
14.1. Sipwise SSH access to sip:provider CE
14.2. Firewalling
14.3. Password management
14.4. SSL certificates.
14.5. Securing your sip:provider CE against SIP attacks
14.5.1. Denial of Service
14.5.2. Bruteforcing SIP credentials
14.6. System Requirements and Performance
14.7. Troubleshooting
14.7.1. Collecting call information from logs
14.7.2. Collecting SIP traces
A. Basic Call Flows
A.1. General Call Setup
A.2. Endpoint Registration
A.3. Basic Call
A.4. Session Keep-Alive
A.5. Voicebox Calls
B. NGCP configs overview
B.1. config.yml Overview
B.1.1. apps
B.1.2. asterisk
B.1.3. autoprov
B.1.4. backuptools
B.1.5. cdrexport
B.1.6. checktools
B.1.7. cleanuptools
B.1.8. cluster_sets
B.1.9. database
B.1.10. faxserver
B.1.11. general
B.1.12. heartbeat
B.1.13. intercept
B.1.14. kamailio
B.1.15. mediator
B.1.16. nginx
B.1.17. ntp
B.1.18. ossbss
B.1.19. pbx (only with additional cloud PBX module installed)
B.1.20. prosody
B.1.21. pushd
B.1.22. qos
B.1.23. rate-o-mat
B.1.24. redis
B.1.25. reminder
B.1.26. rsyslog
B.1.27. rtpproxy
B.1.28. security
B.1.29. sems
B.1.30. snmpagent
B.1.31. sshd
B.1.32. voisniff
B.1.33. www_admin
B.2. constants.yml Overview
B.3. network.yml Overview
C. RTC:engine
C.1. Overview
C.2. RTC:engine enabling
C.2.1. Enabling services via CLI
C.2.2. Enabling via Panel for resellers and subscribers
C.2.3. Create RTC:engine session
C.2.3.1. Create sessions
C.2.3.2. Receive sessions
C.3. RTC:engine protocol details
C.3.1. Terminology
C.3.1.1. Connector
C.3.1.2. Router
C.3.1.3. User
C.3.1.4. App
C.3.1.5. Network
C.3.1.6. Session
C.3.1.7. Account
C.3.1.8. Browser SDK
C.3.2. Messages
C.3.2.1. Fields
C.3.2.2. method
C.3.2.3. from
C.3.2.4. to
C.3.2.5. session
C.3.2.6. body
C.3.3. Account
C.3.3.1. Flow
C.3.3.2. Messages
C.3.3.3. account.connect
C.3.3.4. account.state
C.3.3.5. State reasons
C.3.3.6. States
C.3.4. Call
C.3.4.1. Flow
C.3.4.2. call.start
C.3.4.3. Body properties
C.3.4.4. id
C.3.4.5. gcid
C.3.4.6. account
C.3.4.7. replace
C.3.4.8. trickle
C.3.4.9. target
C.3.4.10. sdp
C.3.4.11. call.alive
C.3.4.12. call.ringing
C.3.4.13. call.accept
C.3.4.14. call.ack.accept
C.3.4.15. call.candidate
C.3.4.16. call.fullsdp
C.3.4.17. call.change….
C.3.4.18. call.change.lock.reset
C.3.4.19. call.change.lock
C.3.4.20. call.change.lock.ok
C.3.4.21. call.change.offer
C.3.4.22. call.change.answer
C.3.4.23. call.dtmf
C.3.4.24. call.end
C.3.4.25. call.ack.end
C.3.5. Session
C.3.5.1. Flow
C.3.5.2. Messages
C.3.5.3. session.open
C.3.5.4. session.validated
C.3.5.5. Reason types
D. NGCP Internals
D.1. Pending reboot marker
D.2. Redis id constants
D.2.1. Redis monitoring keys
D.3. Enum preferences