Sippy Switch v4.4 Release Notes

Version 4.4 includes hundreds of improvements to existing features, and new features designed to bring additional ease of use, value, and operability to our loyal Sippy Switch Operators.

New Features

SIP Log extraction utility

Audience: hosted & dedicated operators

Switch operators can download SIP logs for successful and failed calls based on the SIP Call-ID header, making troubleshooting investigations much easier.

SIP Log Viewer ExtractScreen

SIP Log Viewer Screen Shot

SIP Logs separated by Environment

Audience: dedicated operators (technical)

Each Environment maintains its own sip.log file. Previous to this change, all environments logged to a single file. Logs are located in /var/jenv{N}/var/log/sip.log where {N} represents the Environment id. This separation of log files permits operators to control indexing of sip.logs on a per-environment basis, making logs more manageable on busier systems. SS-237

Ability to enable/disable sip.log indexing for fast log retrieval

Audience: dedicated operators

SIP Log Indexing is configurable in System Parameters, and defaults to disabled. Operators must explicitly enable the feature.

The SIP Extract tool relies on a sip.log indexer which enables fast SIP Log extraction. The indexer introduces a small proportion of CPU and Disk load. For operators who run their switch at the edge of their servers capacity, the indexer can be disabled. When the indexer is disabled, the SIP Log Viewer will use a naive extraction method much slower than the Indexed method. The recommended configuration is to enable SIP Log indexing ‘is enabled’.

When changing the SIP Log Indexing System Parameter, the operator is prompted with a warning explaining the consequence of the action. SS-845

Chinese language translation on the Sippy Web interface

The Sippy Web application now includes Chinese (Simplified) translation, making the system more comfortable for use by Chinese operators.

The Sippy Web application is available in the following languages:

  • Arabic
  • Chinese
  • English
  • Portuguese
  • Russian
  • Spanish
  • Turkish

DNCL (Do Not Call Lists) module

The DNCL module now supports international numbers, making it useful for calls to countries outside of the North American Dialing Plan (NANPA). DNCL can be enabled or disabled on a per account basis.

The DNCL module is a paid-for module. Contact for details.

Customize Realm/Domain sent to Vendors

This feature enables switch operators to present a custom SIP domain/realm to their vendors. The default behavior is to only present the IP address of the switch. Vendor realms are configured on a Vendor Connection basis. Vendor Realm

Customize Realm/Domain to Client systems via trunks

This feature enables switch operators to present a custom SIP domain/realm to their client equipment via the Trunk feature. The default behavior is to present the IP address of the switch. Custom Realm/Domains are configured on the Trunk edit screen. Vendor Realm

New Incoming Routing XML-API methods

The Incoming Routing feature on Accounts can now be managed via two new XML-API:

  • getIncomingRoutesList()
  • updateIncomingRoute()

Documentation for these methods can be found on the Sippy support website: Account Incoming Routing management

SS-57 SS-592

Profit & Loss report (preview status)

A new Profit & Loss report is available in preview status. It gives operators a consolidated view of calls from the Account and Vendor CDRs. The Profit & Loss report allows operators to see billed duration, cost, revenue and margin for all calls.

This feature is in preview status. SS-16

DID CDR web interface

A new CDR viewer is available specifically for DID’s. The new interface is available under “DID Numbers -> Call Records (CDRs)”

Inbound calls that come via a DID will generate CDRs provided a Charging Group is assigned to the DID. If no Charging Group is assigned, no CDR will be generated for the inbound leg of the call. SS-25

New Follow-Me option “On Unregistered”

Follow-Me can be enabled to forward calls only when no active SIP UAC registered with the Sippy Switch SS-689

Follow Me On Unregistered

DID Delegation to Customers for resale purposes

Switch operators that maintain Customer records to resell VoIP services can now also offer DIDs to their resellers using the DID Delegation feature. The Switch Operator can purchase DIDs from a DID Supplier, and import the DIDs into the root his/her environment. The Switch Operator can then delegate one or more DIDs to a Customer record. The Customer to whom the DID has been delegated to, can then further assign that DID to his/her accounts, thus opening up a new revenue stream.

The DID Delegation functionality is managed either via the DID Pool section in the Sippy Switch web application or by several new XML-API methods.

When a customer has a DID delegated from a parent environment, the Customer can assign that DID to an Account in the same environment, or the DID can be delegated again to another sub-customer. Delegated DID vendor information is not configurable or visible to Customers.

CDRs are generated at all stages of the DID delegation chain.

New and updated XML-API methods to manage DID Delegations.

  • new XML-API method addDIDDelegation() SS-701
  • new XML-API method updateDIDDelegation() SS-702
  • new XML-API method deleteDIDDelegation() SS-703
  • new XML-API method listDIDDelegations() SS-711
  • new XML-API method getDIDDelegationInfo() SS-712
  • updated getDIDInfo() XML-API method to support DID delegations SS-706
  • updated getDIDsList() XML-API method to support DID delegations SS-707

Documentation for these methods can be found on the Sippy support website: DID Management

DID Authentication Warnings

The DID Pool interface will now prominently warn the operator of Spam over Internet Telephony “SPIT” risks when adding DIDs without specifying a Vendor Connection. SS-993

Calls Per Second (CPS) accuracy improvements

The CPS management limits have been improved to enforce limits immediately in both low and high CPS use cases. In previous versions, a sampling window was used to measure CPS. This could lead to a spike of CPS in the first part of the window, allowing for CPS limits to be exceeded for small periods of time. The old feature was also not very useful for scenarios where CPS limits need to be very low. Switch operators can configure CPS limits using decimals. Setting CPS to 0.5 would mean that the limit will permit only one call every two seconds. SS-1113

New Service Plan setting ‘Block Charged Calls’

A new ‘On Billing Failure’ setting ‘Block All Calls’ has been introduced, and the previous behaviour represented as ‘Block Calls’ has been renamed to ‘Block Charged Calls’. SS-1073 SS-1075

Audit Logs

The 4.4 release now generates audit logs for all XML-API methods that creates, updates or deletes data (read methods do not produce audit logs).

The Sippy Web Application is partly built on top of the XML-API, and therefore, audit logs will be produced for only some of the actions taken via the web application. In future releases, the web application will be updated to make further use of the XML-API so that all changes via the web application will produce audit logs. SS-621

Notable areas that do not produce audit logs via the web application are:

  • Authentication Rules
  • Charging Group
  • DNCL numbers
  • Destination Sets
  • Environments
  • Follow-Me
  • IVR applications
  • Permissions
  • Routing Groups
  • Service Plans
  • Tariffs
  • Trunks
  • Trusted Numbers
  • Vendors & connections
  • Web User

Of additional note, the following other actions generate an Audit Log records:

  • Login Events
  • Vendor Connection ASR/ACD monitoring state change events SS-896

Calls cost calculation rounding

Switch operators can control how decimal precision and the rounding method used for CDR cost calculation on per vendor basis. This feature allows switch operators to accurately track the cost for all calls by using the same decimal precision and rounding as their carriers. SS-1044

The same rounding settings are also configurable on the Service Plan for customers. SS-1046

Audit Logs Viewer (technology preview)

Audit Logs are available via the ‘System Management > Tools’. This feature will be moved to the main menu when all web actions produce Audit Logs. SS-624

Audit Logs XML-API methods

Audit Logs are retrieved via the XML-API allowing for audit logs to be queried from external systems such as monitoring applications, dash-boards or security systems.

  • new XML-API method getAuditLogs() SS-626
  • new XML-API method writeAuditLogs() SS-674

Documentation for these methods can be found on the Sippy support website: Audit Logs

Record offered SDP/Codec information for calls

SDP packets can be recorded for each call, allowing the switch operator to track and analyze which codecs are negotiated between endpoints.

The Record SDP system parameter is used to enable recording of SDP. The data is recorded to database, and is accessible on the CDR Detail Page, or via a new XML-API method named getCDRSDP(). This setting defaults to off, SS-642 SS-656 SS655

Account/Customer CDR detail page displays all CDR fields.

The Account/Customer CDR detail page displays all available CDR fields, including User-Agent, Post Dial Delay, Asserted-ID, and price calculations. This page will also display offered SDP if SDP Recording is at the time in which the cdr was produced. SS-606 SS-656

The CDR Details page is accessible from the “My Customers -> Call Records (CDRs)” CDR list view by clicking the small arrow in the first column.

The same functionality will be added for Vendor CDR detail page in a future release. Access CDR Details

CDR Details Page

Apache thread auto-scaling

Apache threads now scale based on the number of concurrent calls and CPS assigned to a given environment. The auto scaling can also be overridden with a fixed number for special cases, such as higher than typical XML-API traffic. The configuration parameter is available on the Environments edit page.

Apache Auto Scaling


Official support for XML-API multi calls

API Consumers can now make use of XML-RPC multicalls to significantly speed up performance when performing more than one API request at a time.

New Methods

A complete list of new methods:

  • SS-57 incoming routing XML-API list method
  • SS-469 A new XML-API function that will return a list of all auth rules for a given ‘customer’
  • SS-512 Delete list of auth rules via API
  • SS-585 Add list of auth rules via API
  • SS-586 Get list of auth rules via API
  • SS-587 Update list of auth rules via API
  • SS-592 incoming routing XML-API update method SS-655 getCDRSDP to return calls_sdp data when available

Updated Methods

  • getAccountCDR() now accepts i_cdr as an optional filter parameter. SS-668
  • getCustomerCDRs() i_cdrs_customer is no longer a mandatory
  • SS-627 Log successful requests to createAccount()
  • SS-628 Log successful requests to updateAccount()
  • SS-629 Log successful requests to deleteAccount() parameter, but still works SS-670
  • SS-616 Return all CDR fields from getAccountCDRs XML-API
  • SS-990 Problem creating Route using API “addRouteToDestinationSet” (bug)
  • SS-676 Return i_protocol name from getAccountCDRs

Replication Status API Methods

Replication status can be queried using the new XML-API methods:

  • getReplicationStatus() SS-903
  • getReplicationLag() SS-914

These methods are useful for operations teams to build richer monitoring dashboards for their Sippy Switches.

Documentation for these methods can be found on the Sippy support website: Replication Status Methods

Sippy Media Gateway

The sippy media gateway includes improvements in terms of performance and reliability. The clustering technology has undergone extensive load and regression testing.

SNMP Performance Improvements

The SNMP monitoring service includes performance improvements, which allow SNMP queries to return faster. SS-942 SS-976 SS-61 SS-936

Local Ring-Back configurable on Account and Account Classes

Local Ring-Back can be enabled/disabled on a per account basis. SS-875 and SS-876 SS-698

The Routing Group screen is searchable, making it easier to find routing groups on systems with many routing groups. SS-916

Firewall rule limit increased

The web-based firewall rule user interface was limited to 50 rules. This has been increased to 500. SS-1015

The firewall user interface will be improved in future versions.

Operating system support

The Supported release for version 4.4 is FreeBSD 10.1-p11. FreeBSD 10.2 is optionally available, and will be the standard operating system for new and upgraded systems during Fall 2015.

The FreeBSD 9 series is not supported for version 4.4. Sippy operators wishing to upgrade to Sippy 4.4 will have the base operating system upgraded to FreeBSD 10.1 or 10.2

Third-party dependency updates

Apache httpd

Apache httpd has been upgraded to version 2.4, and the base configuration tracks Mozilla’s “intermediate” TLS recommendations. SS-647


PostgreSQL 9.1 is the supported database version for the Sippy 4.4 release. A database upgrade will be required for clients running older versions of PostgreSQL.

The following PostgreSQL database settings have been increased:

  • shared_buffers = 256MB # default 128MB
  • checkpoint_segments = 16 # default 3
  • effective_cache_size = 4GB # default 128MB, 4GB is the new PostgreSQL 9.4 default
  • maintenance_work_mem = 128MB

New virtualenv package installed

The Python virtualenv utility now ships pre-installed. This is useful for clients who wish to install python modules/scripts in a home directory, without interacting with the OS package manager. SS-897

Improvements & Fixes

  • Hide Own CLI now works correctly during on-net and Follow-Me scenarios SS-574

  • When internal media relay is configured on a Vendor that has a specific egress IP address set, the RTP media will also traverse that IP address SS-644

  • Concurrent updates to Account are detected, preventing rare situations where one account update will overwrite another. SS-505

  • Test Dial plan used to hang under rare condition. This has been fixed. SS-970

  • IVR Applications that operate in non-English languages that have a missing audio prompt, will “fall through” and play the English prompt as a best effort measure. SS-944

  • IVR calling card application did not generate ring-back to the caller in some situations. SS-615

  • All references have been removed to the deprecated web phone module. SS-580

  • The active calls page has been updated to be sorted numerically on called number. Previously it was sorted alpha-numerically. SS-1046

  • New IVR option Allow Own Accounts Only has been added which limits on-net calling within the given Customer scope only. SS-1122

Spelling mistakes/typos

Eight spelling mistakes in the Sippy Web interface have been corrected.

New web user “sippy-support”

A new web user called “sippy-support” exists in version 4.4. This user is used by Sippy Support for remote assistance purposes. Previous to this version, Sippy used the ssp-user for remote assistance purposes. The use of this account is also recorded in the switch’s Audit Logs, making Sippy’s support role transparent to all switch operators. SS-540