SIP trunking gateway and near-end / far-end NAT traversal

for remote workers For release 4.0 we are adding a fully functional native SIP trunking gateway that adds SIP trunking capabilities to sipXecs without requiring an external Session Border Controller (SBC). As a further objective we want to implement the SIP Forum SIPconnect standard for interconnection with ITSPs. SipXbridge Functional Requirements outlines the requirements we are trying to address in this project. See issueXECS-1014 and the SIP trunking Wiki page.

Cluster Management

In release 4.0 sipXconfig will learn how to fully manage a distributed cluster. Such a cluster consists of several call control servers in high-availability load-sharing configuration combined with application servers for media services, conferencing, call center ACD, etc. All these applications can either run on a single server or be distributed to run on separate HW. This will allow sipXecs to be deployed as a multi-branch office solution that is fully centrally managed and acts as one big system with a cohesive dial plan and number portability between branch offices. Scalability should then extend into several 10,000 of users distributed over different locations / offices.

SIP Trunking Gateway

The sipXbridge project adds a new component to sipXecs to enable native SIP trunking and NAT traversal. sipXbridge is based on a B2BUA design able to anchor media and tweak SIP signaling so that it can traverse NAT. sipXbridge is integrated into sipXconfig as a managed SBC. XECS-1192, XECS-1014, XCF-2237. As all the other sipXecs components, sipXbridge can run independently either on the same server hardware with other components or on its dedicated server. sipXbridge anchors media and the media anchoring can be configured in a redundant setup where each of the redundant proxy servers provides its own media relay.

Near-end / far-end NAT traversal support in the proxy

The sipXecs proxy server will natively support near-end and far-end NAT traversal in order to support remote workers and remote branch offices connected without a VPN. This includes support for PATH header RFC 3327. XECS-484, XECS-265. The NAT traversal capability is directly integrated into the sipXecs proxy server so that it can auto-detect dynamically whether an end point requires NAT traversal assistance or not. A media relay is added to each proxy for anchoring the media as necessary. The NAT traversal capability also works in a redundant system offering an HA configuration.

Conferencing Server

The sipXecs and FreeSWITCH projects cooperate to integrate FreeSWITCH as a conferencing server into sipXecs. Full plug & play management is provided for users creating and administering their conferences. See here for more details. We are aiming for over 500 conferencing ports on regular hardware, support for different codecs, dynamic conference controls using DTMF codes or the sipXconfig user portal. The conferencing bridge is ready to be speech enabled with TTS, allows wideband conferences, and will eventually support video.

New IVR and Auto-Attendant Server

The sipXecs and FreeSWITCH cooperation also led to a new IVR server based on FreeSWITCH. The underlying media server engine is used from FreeSWITCH and the sipXecs project created a new Java based IVR frontend for easy application writing. The first application using this new capability is a complete rewrite of the original sipXecs Auto-Attendant. The immediate result is significantly improved performance consuming fewer compute resources.

Click-to-dial support from the Directory in the User Portal

The directory on the user portal becomes interactive offering click-to-dial using Third Party Call Control (3PCC). The user can enter a phone number or SIP URI and initiate a call from any phone the user has currently registered with the system. The same click-to-dial capability is used to add conference participants to an already ongoing conference using outbound dialing.

Import / export contacts using vcards

The directory on the user portal now allows importing or exporting contacts in vcard format.

Plug & play management for Counterpath softphones

Counterpath softphones will be plug & play configured using a provisioning server as part of sipXecs. XCF-2022.

64-bit support

The 64-bit branch is going to be merged with main rendering a unified code base to support 32-bit and 64 bi architectures using Intel or PPC CPUs. XECS-480.

Source call routing

There are two areas where we are planning to enhance the flexibility of the dialplan: a) Gateway selection based on who is calling for outbound calls XECS-415, and b) Source routing attendant able to route calls based on incoming Caller IDXECS-1083. These capabilities aim at improving flexibility in multi-branch deployments of sipXecs.

Cluster management

sipXconfig will become able to centrally manage a distributed cluster of sipXecs components, including high-availability configurations XCF-2133. Ease of use for system installation and administration is the primary objective. A distributed system of sipXecs servers will allow very easy setups of multi-branch configurations. Also, sipXecs easily scales adding additional load-sharing call servers, or configuring separate servers for certain media services such as voicemail, ACD or conferencing.

Integrated advanced reporting

Jasper Reports, like Crystal Reports, is a powerful reporting application that we plan to integrate into sipXconfig XCF-2286. Reports can be customized and all reports are generated in several formats.

Updated plug & play support for Polycom phones w/ MoH support

Support for the Polycom 3.1.3 firmware and new phones SoundPoint IP 560 & 670, and SoundStation IP 6000 & 7000. The Polycom firmware 3.1 was developed in close cooperation with sipXecs and now fully supports Music on Hold (MoH). In addition, Polycom added specific fixes to the BLF functionality that resolved outstanding issues for certain call flows.

Updated plug & play support for Snom phones

Support for the Snom firmware 7.x was added. This required a change of the config file format to XML.

Plug & play management support for Aastra phones

We are adding a plugin to support the new Aastra 5-Series phones XCF-2193.

Updated plug & play support for Grandstream

The Grandstream plugin has been updated to support new phones and new firmware revisions. New phones include the full line of GXP phones.

Updated plug & play support for Linksys phones

The Linksys plugin has been updated to include support for new phones.

Updated plug & play support for Cisco phones

The Cisco plugin has been updated to include support for new phones.

New Alarm Server

This release adds a new alarm server that can be configured via sipXconfig. It collects system alarms of various severity levels and distributes these alarms to whoever needs to know.

Web Certificate management

sipXconfig is now able to manage Web certificates needed for secure (https) access to its admin and user portals. A Certificate Signing Request (CSR) can be easily generated and an official certificate can be uploaded using the Web interface. This gets rid of the security alert messages now seen in most browsers.

Time and DST management

To prevent glitches during daylight savings time changes, sipXconfig now provides the ability to manage time and DST changes as well as the way these parameters are updated in the phones. The result is always correct time.

Scheduled device (phone) reboot

Phones need to be rebooted for profile changes to become active. However, during the day they might be in use and a reboot is undesired. sipXconfig now allows these reboots to be scheduled for after-hours.

Improved backup & restore with FTP option

The backup and restore mechanism is enhanced. An FTP option is offered directly from the sipXconfig UI in addition to backups on the local machine or backups sent by email.