We are excited to announce the general availability of sip:providerCE mr4.5.3 and sip:providerPRO mr4.5.3.

What’s the sip:provider platform?

sip:provider PRO Architecture Overview

The Sipwise sip:provider platform is a highly versatile open source based VoIP soft-switch for ISPs and ITSPs to serve large numbers of SIP subscribers. It leverages existing building blocks like Kamailio, Sems and Asterisk to create a feature-rich and high-performance system by glueing them together in a best-practice approach and implementing missing pieces on top of it.

Sipwise engineers have been working with Asterisk and Kamailio (and its predecessors SER and OpenSER) since 2004, and have roles on the management board of Kamailio and are contributing to these projects both in terms of patches and also financially by sponsoring development tasks. The sip:provider platform is available as a Community Edition (SPCE), which is fully free and open source, and as a commercial PRO appliance shipped turn-key in a high availability setup.

The SPCE provides secure and feature-rich voice and video communication to end customers (voice, video, instant messaging, presence, buddy lists, file transfer, screen sharing, remote desktop control) and connect them to other SIP-, Mobile- or traditional PSTN-networks. It can therefore act as open Skype replacement system, traditional PSTN replacement, Over-The-Top (OTT) platform and also as a Session Border Controller in front of existing VoIP services in order to enable signaling encryption, IPv6 support, fraud- and Denial-of-Service prevention. Another use-case is to act as a Class4 SIP concentrator to bundle multiple SIP peerings for other VoIP services.

What’s new in mr4.5?

The most important changes for mr4.5.3 compared to mr4.4.x are:

  • mr4.5 LTS release stabilization
  • kamailio: upgrade to latest stable 4.4.3
  • ngcp-panel: Since mr4.5.1 it’s only possible to create subscribers from within the Customer view. The global page Settings > Subscribers can be used for searching and viewing the subscribers and their preferences.
  • Stale nonce workaround for asterisk (see this mailing list thread).
  • Check for CLIR vertical service code (*31*) before applying callee-in rewrite rules. The code is stripped before rewriting callee in order to rewrite national number format to E.164 correctly, but as a consequence it’s not possible to re-map the *31* code via rewrite rule any more.
  • faxserver – full carrier support and remote faxes queuing, faxes retain and retrieval support, various fixes and improvements.
  • ngcp-sync-grants – internal ngcp component for mysql credentials and mysql grants synchronization rework.
  • emergency mapping to extend the emergency_prefix handling
  • configuration option for Admin Web-UI to add links to “Documentation” panel
  • [PRO/Carrier] RTCEngine has been migrated from mongodb to mysql
  • CDR cleanup mechanism is improved to prevent filling up the cdrexport file system
  • new lawful intercept mode via a loop over a peering server
  • [CE] mysql now listens on the loopback interface by default (it was socket)
  • ngcp-panel: password in logs are now masked by default
  • collectd: upgrade to 5.5.1-3~bpo8+1
  • sems: prevent crashes on shutdown
  • [Carrier] optional mysql-cluster support (ndb) for scaling registrations

Is mr4.5.3 LTS (long time supported) release?

Yes, the release mr4.5 is officially LTS release since mr4.5.2 is announced. It will be supported till Aug 26, 2019.

Is it possible to upgrade directly from mr3.8* LTS to mr4.5.3 LTS release?

Yes, it is possible to upgrade on mr4.5.3 from mr3.8.* for all CE/PRO and Carrier products.

Is it possible to upgrade directly from 2.8 LTS to mr4.5.3 LTS release?

No, it is not possible. It is not allowed to jump over LTS releases. Upgrade from 2.8 LTS must be performed on the latest build of release mr3.8 LTS first.

How do I test-drive the new version?

As usual, we’re providing a VMWare Image, a Virtualbox Image and a Vagrant Box for quick evaluation testing. For those of you using Amazon Cloud we provide the EC2 AMIs in the following regions:

  • AMI ID for region us-east-1: ami-a51509b2
  • AMI ID for region us-west-2: ami-8bd465eb
  • AMI ID for region us-west-1: ami-d81141b8
  • AMI ID for region eu-central-1: ami-e76dae88
  • AMI ID for region eu-west-1: ami-ceb19cbd
  • AMI ID for region ap-southeast-1: ami-a58e27c6
  • AMI ID for region ap-southeast-2: ami-25eed446
  • AMI ID for region ap-northeast-1: ami-b76017d0
  • AMI ID for region sa-east-1: ami-e5970c89

Check the relevant section in SPCE Handbook for detailed instructions.

How do I install the new version or upgrade from an older one?

For new users, please follow the Installation Instructions in the Handbook to set up the SPCE mr4.5.3 from scratch.

For the users of the previous version of the SPCE, please follow the upgrade procedure outlined in the Handbook. If you have customized your configurations using customtt.tt2 files, you must migrate your changes to the new configuration files after the upgrade, otherwise all your calls will most certainly fail.

How can I contribute to the project?

Over the last months we’ve started to publish our software components at github.com/sipwise. This is still an on-going effort, which is done on a component-per-component basis. Please check back regularly for new projects to appear there, and feel free to fork them and send us pull requests. For development related questions, please subscribe to our SPCE-Dev Mailing-List at lists.sipwise.com/listinfo/spce-dev.

Acknowledgements

We want to thank our PRO customers and the SPCE community for their feedback, bug reports and feature suggestions to make this release happen. We hope you enjoy using the mr4.5.3 build and keep your input coming. A big thank you also to all the developers of Kamailio, Sems and Prosody, who make it possible for us to provide an innovative and future-proof SIP/XMPP engine as the core of our platform! And last but not least a HUGE thank you to the Sipwise development team, who worked insanely hard to create this release. You are awesome!

Full Changelog of Bugfixes and Enhancements

MT#23018 Blind transfer to a subscriber with force_inbound_calls_to_peer enabled using extension dialing does not reach the subscriber
MT#22992 API journal returns 404 Not Found
MT#22435 Caller anonymity lost with AA
MT#22291 Two MySQL instances were started on system boot after upgrade
MT#22243 EDR for transferred call legs
MT#22163 Update Italian localization on ngcp-panel
MT#21879 upgrade mr3.8.7->…->mr4.4.1 doesn’t pass the tests after upgrade to mr4.4.1
MT#21789 CDR records in daily folders
MT#21775 Interception REST API call should write a regex in the sip_username DB field
MT#21751 MCID not working as expected for trunk subscribers
MT#21477 Add ability to playback audio announcement for non ported LNP number
MT#21081 Sems-pbx replies with 491 for Replaces of transferred call
MT#20959 Discussion on how to deal with slow REST queries
MT#20639 Contact still visible in GUI after Contract is terminated
MT#20591 Easy way where to fetch NGCP default tt2
MT#20007 Cookie injection vulnerability on web server
MT#19981 dashboard customer count different from listed customer count
MT#19579 prosody: pushd error
MT#17655 Enhancement for Kamailio readability and patching customization
MT#17373 wrong extra_socket selected for replies
MT#16547 /var/lib/asterisk/sounds/de/vm-login.wav is very different than /var/lib/asterisk/sounds/en/vm-login.wav
MT#16333 Add documentation for new Billing profile packages feature

TT#8272 Error when creating a customer with invoice template
TT#8007 extend dialog RPC to list dialogs with callID as parameter only
TT#7930 formhandler inflate/deflate for /api/rewriterules seem to not work any more
TT#7927 acc-cleanup.pl dies in mysql drop table
TT#7761 voisniff-ng coredumps
TT#7760 mysql setup improvements
TT#7506 Malicious call add filters by parameters (call_id, caller, callee, start_time)
TT#7338 Kamailio 4.4.4 crash in serial forking with CANCEL scenario
TT#7331 Using tabs in /etc/hosts causing problems on upgrade
TT#7325 lval_assign(): assignment failed at pos
TT#7190 manage stuck callids
TT#7189 Upgrade from 3.8.5 to 4.5.2 fails due to package ngcp-templates-pro-monitoring-tools-dell-omsa
TT#7169 Customer locked caused of wrong monthly cost calculation
TT#7154 Issue in /var/cache/apt/archives/ngcp-templates-pro_4.5.2.16+0~mr4.5.2.16_all.deb during upgrade from 3.8.5 to 4.5.2
TT#7034 National number shown as CLI for a particular subscriber for an intra customer call
TT#6800 change model name of device models with expansion module from ‘two ‘ to ‘2x
TT#6638 Emergency mode activation on destination domain do not drop call
TT#6610 Emergency Mode: Calls to emergency number is rejected by proxy
TT#6605 prosody-modules: error in pushd module
TT#6472 non existing right pvar
TT#6426 Re-structure Cloud PBX chapter in Handbook
TT#6250 REST API test failed: /api/customerpreferences/ Column ‘status’ in where clause is ambiguous
TT#6226 Out Of Office announcement is not playing for AA
TT#6221 lnp_api.cfg: typo in processing lnp.api.invalid_lnp_routing_codes
TT#6217 LOAD_LCR_RATE is defined twice in proxy kamailio.cfg mr4.5.2
TT#6216 Find and return some lost paragraphs to the handbook
TT#5812 calllist API: add post-processing step to change call type depending on the direction
TT#5559 EDR information – missing records and missing information
TT#5554 Improve routing verification tool to handle LNP prefixes
TT#5550 Sourcedomain information in the CDR is not the user domain
TT#5549 [HPBX] Numbers in fax journal should be normalized
TT#5513 [HPBX] Unwanted second announcement after office hours playback
TT#5499 If call came from peer and 302 redirect involved inbound rules are not applied
TT#5478 CDR has wrong destination_user_in field if the call was declined (403 – max concurrent calls reached)
TT#5473 In route[ROUTE_EARLY_REJECT] a t_check_trans() should be !t_lookup_request()
TT#5472 Missing msg_apply_changes() in LB after exclude_hf_value(“Allow”, “INFO”)
TT#5431 RTP interface broken in CE Vagrant VM mr4.5+
TT#5415 Change subscriber profile also change HG priority
TT#5411 Issue with DELETE a contact associated to a subscriber
TT#5204 Occasional 500 internal server error accessing to security bans in panel
TT#5104 /etc/percona-toolkit/percona-version-check produces fake alarm for etckeeper->ngcpcfg status->ngcp-status”
TT#5034 fix mocks/pv.lua: avp:clean() logic
TT#5022 Add capability to use vector graphics images in Handbook”
TT#5007 If CFU is enabled and peering sends sendonly RTP is broken”
TT#4875 Update DELL server images and description in the handbook
TT#4826 Rewrite ROUTE_ADD_CALLINFO_CALLE[RE]_ALIASES in Lua
TT#4753 kamailio-config-tests fixed for scenarios/invite_allowip
TT#4659 Add missing config files description to Handbook Appendix B
TT#4657 add redis support for kamailio-config-tests”
TT#4640 Bind voisniff-ng x2/x3 delivery to specific ip”
TT#4638 Add allowed_ips handling to domain preferences
TT#4617 CLI not restricted with AA call
TT#4616 No MoH after BLF call pickup when original caller put the call on hold
TT#4592 add mr3.8 LTS -> mr4.5 LTS upgrade to documentation mr4.5.2+”
TT#4563 possible side effects of subst_hf on To header we are doing before sca_call_info_update()
TT#4476 Customer Self-Care does now work just right after the login
TT#4000 BLF call pickup not working when caller calls via an Auto Attendant
TT#3991 NCOS level that blocks/allows extension dialing
TT#3936 EC2 AMIs and disk space
TT#3881 make loop detection in rtpengine configurable
TT#3699 Amend documentation: SIP peers are excluded from DoS attack bans
TT#3654 MCID improvement to support SIP Connect 1.1 behavior with calls within a single subscriber
TT#3010 add server_id to sca_subscriptions table
TT#2764 Document rtcengine in handbook
TT#2206 Add documentation of voice prompts to handbook
TT#2102 Refactoring Handbook Chapters