The sip:provider PRO Handbook mr4.5.1


Table of Contents

1. Introduction
1.1. About this Handbook
1.2. Getting Help
1.2.1. Phone Support
1.2.2. Ticket System
1.3. What is the sip:provider PRO?
1.4. What is inside the sip:provider PRO?
1.5. Who should use the sip:provider PRO?
2. Platform Architecture
2.1. SIP Signaling and Media Relay
2.1.1. SIP and Media Elements
2.1.1.1. SIP Load-Balancer
2.1.1.2. SIP Proxy/Registrar
2.1.1.3. SIP Back-to-Back User-Agent (B2BUA)
2.1.1.4. SIP App-Server
2.1.1.5. Media Relay
2.1.2. Basic Call Flows
2.1.2.1. General Call Setup
2.1.2.2. Endpoint Registration
2.1.2.3. Basic Call
2.1.2.4. Session Keep-Alive
2.1.2.5. Voicebox Calls
2.2. High Availability and Fail-Over
2.2.1. Overview
2.2.2. Core Concepts and Configuration
2.2.3. Administration
2.3. Fax Server Architecture
2.3.1. Fax2Mail Architecture
2.3.2. Sendfax and Mail2Fax Architecture
3. Upgrading the sip:provider PRO
3.1. Preparation
3.2. Upgrade
4. Installation
4.1. Hardware Specifications
4.1.1. Dimensions and Weight
4.1.2. Front View
4.1.3. Back View
4.2. Installation Prerequisites
4.3. Rack-Mount Installation
4.4. Power Supply Cabling
4.5. Network Cabling
5. Administrative Configuration
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.5.3.1. Proxy-Authentication for outbound calls
5.5.3.2. Registering at a Peering Server
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. Advanced Subscriber Configuration
6.1. Access Control for SIP Calls
6.1.1. Block Lists
6.1.1.1. Block Modes
6.1.1.2. Block Lists
6.1.1.3. Block Anonymous Numbers
6.1.2. NCOS Levels
6.1.2.1. Creating NCOS Levels
6.1.2.2. Creating Rules per NCOS Level
6.1.2.3. Assigning NCOS Levels to Subscribers/Domains
6.1.2.4. Assigning NCOS Level for Forwarded Calls to Subscribers/Domains
6.1.3. IP Address Restriction
6.2. Call Forwarding and Call Hunting
6.2.1. Setting a simple Call Forward
6.2.2. Advanced Call Hunting
6.2.2.1. Configuring Destination Sets
6.2.2.2. Configuring Time Sets
6.3. Header Manipulation
6.3.1. Header Filtering
6.3.2. Codec Filtering
6.3.3. Enable History and Diversion Headers
6.4. SIP Trunking with SIPconnect
6.4.1. User provisioning
6.4.2. Inbound calls routing
6.4.3. Number manipulations
6.4.3.1. Rewrite rules
6.4.3.2. User parameter
6.4.3.3. Forwarding number
6.4.3.4. Allowed CLIs
6.4.4. Registration
6.4.4.1. Trusted sources
6.5. Limiting Subscriber Preferences via Subscriber Profiles
6.5.1. Subscriber Profile Sets
6.6. Creating Trusted Subscribers
6.7. Voicemail System
6.7.1. Accessing the IVR Menu
6.7.1.1. Mapping numbers and codes to IVR access
6.7.1.2. External IVR access
6.7.2. IVR Menu Structure
6.7.3. Type Of Messages
6.7.3.1. Unavailable Message
6.7.3.2. Busy Message
6.7.3.3. Temporary Greeting
6.7.4. Folders
6.7.4.1. The Default Folder List
6.8. XMPP Instant Messaging
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. Entering the Conference with a PIN
6.12. Malicious Call Identification (MCID)
6.12.1. Setup
6.12.2. Usage
6.12.3. Advanced configuration
6.13. Handling WebRTC Clients
6.14. SIP loop detection
6.15. Call-Through Application
6.15.1. Administrative Configuration
6.15.1.1. Subscriber provisioning
6.15.1.2. Forward to local user
6.15.1.3. Sound Set provisioning
6.15.2. Call Flow
6.15.2.1. Internal Header Parameters
6.15.2.2. Caller authorization
6.15.2.3. Outgoing call
6.15.2.4. CLI configuration
6.16. Calling card application
6.16.1. Administrative Configuration
6.16.1.1. Subscriber provisioning
6.16.1.2. Sound Set provisioning
6.16.1.3. CLI configuration
6.16.2. Call Flow
6.16.2.1. Internal Header Parameters
6.16.2.2. Caller authorization
6.16.2.3. Outgoing call
6.16.2.4. Voucher recharge
6.16.2.5. Billing
7. Customer Self-Care Interfaces
7.1. The Customer Self-Care Web Interface
7.1.1. Login Procedure
7.1.2. Site Customization
7.2. The Vertical Service Code Interface
7.2.1. Vertical Service Codes for PBX customers
7.2.2. Configuration of Vertical Service Codes
7.3. The Voicemail Interface
8. Billing Configuration
8.1. Billing Data Import
8.1.1. Creating Billing Profiles
8.1.2. Creating Billing Fees
8.1.3. Creating Off-Peak Times
8.1.4. Prepaid Accounting
8.1.5. Fraud Detection and Locking
8.2. Billing Data Export
8.2.1. File Name Format
8.2.2. File Format
8.2.2.1. File Header Format
8.2.2.2. File Body Format for Call Detail Records (CDR)
8.2.2.3. File Body Format for Event Detail Records (EDR)
8.2.2.4. File Trailer Format
8.2.3. File Transfer
9. Invoices and invoice templates
9.1. Invoices management
9.2. Invoice templates
9.2.1. Invoice Templates management
9.2.2. Invoice Template content
9.2.2.1. Layers
9.2.2.2. Edit SVG XML source
9.2.2.3. Change logo image
9.2.3. Save and preview invoice template content.
9.3. Invoices generation
10. Email templates
10.1. Email events
10.2. Initial template values and template variables
10.3. Password reset email template
10.4. New subscriber notification email template
10.5. Invoice email template
10.6. Email templates management
11. Local Number Porting
11.1. Local LNP Database
11.1.1. LNP Carriers
11.1.2. LNP Numbers
11.1.3. Enabling local LNP support
11.1.4. LNP Routing Procedure
11.1.4.1. Calls to non-authoritative Carriers
11.1.5. Transit Calls using LNP
11.1.6. CSV Format
11.2. External LNP via LNP API
12. ngcp-faxserver system configuration
12.1. ngcp-faxserver mail2fax configuration
12.2. ngcp-faxserver per subscriber configuration
12.3. sending faxes using email clients (mail2fax)
12.4. sending and receiving faxes via the REST API
12.4.1. configuring fax settings
12.4.2. sending a fax
12.4.3. receiving a fax
12.4.4. configuring the mail2fax settings
12.4.5. using advanced faxserver and mail2fax settings via the REST API
12.5. fax tests
12.6. Fax Debug
13. Provisioning REST API Interface
13.1. Managing Customers and Subscribers
14. Configuration Framework
14.1. Configuration templates
14.1.1. .tt2 and .customtt.tt2 files
14.1.2. .prebuild and .postbuild files
14.1.3. .services files
14.2. config.yml, constants.yml and network.yml files
14.3. ngcpcfg and its command line options
14.3.1. apply
14.3.2. build
14.3.3. commit
14.3.4. decrypt
14.3.5. diff
14.3.6. encrypt
14.3.7. help
14.3.8. initialise
14.3.9. pull
14.3.10. push
14.3.11. services
14.3.12. status
15. Network Configuration
15.1. General Structure
15.2. Available Host Options
16. Advanced Network Configuration
16.1. Extra SIP Sockets
16.2. Extra SIP and RTP Sockets
17. Security and Maintenance
17.1. Sipwise SSH access to sip:provider PRO
17.2. Firewalling
17.3. Password management
17.4. SSL certificates.
17.5. Securing your sip:provider PRO against SIP attacks
17.5.1. Denial of Service
17.5.2. Bruteforcing SIP credentials
17.6. Backup and recovery
17.6.1. Backup
17.6.1.1. What data to back up
17.6.1.2. The built-in backup solution
17.6.2. Recovery
17.7. Reset database
17.8. Synchronize database
17.9. System requirements and performance
17.10. Troubleshooting
17.10.1. Collecting call information from logs
17.10.2. Collecting SIP traces
18. Monitoring and Alerting
18.1. Internal Monitoring
18.2. Statistics Dashboard
18.3. External Monitoring Using SNMP
18.3.1. Overview and Initial Setup
18.3.2. Details
18.3.2.1. Sipwise NGCP OIDs
18.3.2.2. Legacy OIDs
A. Cloud PBX
A.1. Configuring the Device Management
A.1.1. Setting up Device Models
A.1.2. Uploading Device Firmwares
A.1.3. Creating Device Configurations
A.1.4. Creating Device Profiles
A.2. Preparing PBX Rewrite Rules
A.2.1. Inbound Rewrite Rules for Caller
A.2.2. Inbound Rewrite Rules for Callee
A.2.3. Outbound Rewrite Rules for Caller
A.3. Creating Customers and Pilot Subscribers
A.3.1. Creating a PBX Customer
A.3.2. Creating a PBX Pilot Subscriber
A.4. Managing a Customer PBX
A.4.1. Creating more Subscribers
A.4.2. Assigning Subscribers to Devices
A.4.2.1. Synchronizing a PBX Device for initial Usage
A.4.3. Configuring Sound Sets for the Customer PBX
A.4.3.1. Uploading a Music-on-Hold File
A.4.3.2. Uploading Auto-Attendant Sound Files
A.4.4. Configuring the Auto Attendant
A.4.4.1. Preparing the Sound Set
A.4.4.2. Configuring the Auto Attendant Slots
A.4.4.3. Activating the Auto Attendant
A.5. Device Auto-Provisioning Security
A.5.1. Server Certificate Authentication
A.5.2. Client Certificate Authentication
A.6. Device Bootstrap and Resync Workflows
A.6.1. Cisco SPA Device Bootstrap
A.6.1.1. Initial Bootstrapping
A.6.1.2. Subsequent Device Resyncs
A.6.2. Panasonic Device Bootstrap
A.6.2.1. Initial Bootstrapping
A.6.2.2. Factory Reset
A.6.2.3. Subsequent Device Resyncs
A.6.3. Yealink Device Bootstrap
A.6.3.1. Initial Bootstrapping
A.6.3.2. Factory Enable Yealink Auto-Provisioning
A.6.3.3. Subsequent Device Resyncs
A.6.4. Audiocodes Mediant Device Bootstrap and Configuration
A.6.4.1. Initial Bootstrapping
A.6.4.2. Device management basics
A.6.4.3. Parameterizing the Device Configuration Template
A.7. Device Provisioning and Deployment Workflows
A.7.1. Audiocodes Mediant Device Provisioning Workflow
A.7.1.1. Provisioning URL
A.7.1.2. Field Configuration
A.7.1.3. Network Configuration
A.7.2. Audiocodes Mediant Device Deployment Workflow
A.7.2.1. Pre-Configuration on Sipwise NGCP platform
A.7.2.2. Installation
A.7.2.3. Device Replacement
A.8. List of available pre-configured devices
A.8.1. Cisco Devices
A.8.1.1. IP Phones
A.8.1.2. Analog Adapters
A.8.1.3. Extension Boards
A.8.2. Panasonic Devices
A.8.2.1. IP Phones
A.8.3. Yealink Devices
A.8.3.1. IP Phones
A.8.4. Innovaphone Devices
A.8.4.1. IP Phones
A.8.4.2. Analog Adapters
A.8.4.3. Extension Boards
A.8.5. Audiocodes Devices
A.9. Phone features
A.9.1. Cisco phones
A.9.1.1. SPA301
A.9.1.2. SPA303
A.9.1.3. SPA501G
A.9.1.4. SPA502G
A.9.1.5. SPA504G
A.9.1.6. SPA512G
A.9.1.7. SPA514G
A.9.1.8. SPA509G
A.9.1.9. SPA508G
A.9.1.10. SPA525G
A.9.2. Yealink phones
A.9.2.1. T19P
A.9.2.2. T20P
A.9.2.3. T21P
A.9.2.4. T22P
A.9.2.5. T23P
A.9.2.6. T23G
A.9.2.7. T26P
A.9.2.8. T28P
A.9.2.9. T32G
A.9.2.10. T38G
A.9.2.11. T41P
A.9.2.12. T42G
A.9.2.13. T46G
A.9.2.14. T48G
A.9.2.15. W52P
A.9.3. Panasonic phones
A.9.3.1. KX-UT113
A.9.3.2. KX-UT123
A.9.3.3. KX-UT133
A.9.3.4. KX-UT136
A.9.3.5. KX-UT248
A.9.4. Innovaphone
A.9.4.1. IP222
A.9.4.2. IP232
A.9.4.3. IP111
A.9.4.4. IP240
B. Sipwise Clients and Apps
B.1. sip:phone Mobile App
B.1.1. Zero Config Launcher
B.1.1.1. 3rd Party Sign-Up Form
B.1.1.2. 3rd Party Launch Handler
B.1.2. Mobile Push Notification
B.1.2.1. Architecture
B.1.2.2. The Configuration Checklist
B.1.2.3. Obtain the Trusted SSL Certificate
B.1.2.4. Create an Apple Account and Enable the Push Notification Service
B.1.2.5. Obtain an Apple SSL Certificate and a Private Key
B.1.2.6. Obtain the API Key for the App from Google
B.1.2.7. Provide the Required Information to Developers
B.1.2.8. Adjust the sip:provider PRO Configuration (Usually Performed by Sipwise)
B.1.2.9. Recheck Your DNS Zone Configuration
B.1.2.10. Add SRV Records to DNS
B.1.2.11. Check NTP Configuration
B.1.2.12. Enable Apple/Google Mobile Push
B.1.2.13. Perform Tests
C. NGCP configs overview
C.1. config.yml overview
C.1.1. asterisk
C.1.2. autoprov
C.1.3. backuptools
C.1.4. cdrexport
C.1.5. checktools
C.1.6. cleanuptools
C.1.7. database
C.1.8. faxserver
C.1.9. general
C.1.10. heartbeat
C.1.11. intercept
C.1.12. kamailio
C.1.13. mediator
C.1.14. nginx
C.1.15. ntp
C.1.16. ossbss
C.1.17. pbx (only with additional cloud PBX module installed)
C.1.18. prosody
C.1.19. pushd
C.1.20. qos
C.1.21. rate-o-mat
C.1.22. redis
C.1.23. reminder
C.1.24. rsyslog
C.1.25. rtpproxy
C.1.26. security
C.1.27. sems
C.1.28. snmpagent
C.1.29. sshd
C.1.30. voisniff
C.1.31. www_admin