We are excited to announce the general availability of sip:providerCE mr4.4.1 and sip:providerPRO mr4.4.1.
What’s the sip:provider platform?
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.4.1?
The most important changes for mr4.4.1 compared to mr4.3.x are:
- Stabilize the system for the upcoming mr4.5.1 LTS release
- New feature “SIP signaling loop detection”
- Upgrade Kamailio to version 4.4.0
- Switch Kamailio TLS transport from selfsigned certificate to ngcp-panel trusted certificate
- PRO: Implement the NGPC SNMP Agent to expose cluster-wide information from the Sipwise MIBs
- PRO: Merge PRO and Carrier codebase. iPXE based PRO nodes recovery is planned for mr4.5.1
- PRO: Elasticsearch is installed and disabled by default.
- PRO: Add Approx on PRO (ability to reinstall one node from another keeping the current active node state).
- IMPORTANT. PRO: ngcp-approx-cache-helper must be used before ‘apt-get update’ call to update apt meta data in Approx cache.
- Changed monitoring defaults to provide better monitoring quality:
- exim_check_enable = 1
- kamailio_check_concurrent_calls_enable = 1
- kamailio_check_dialog_early_enable = 1
- kamailio_check_usrloc_regdevices_enable = 1
- PRO: kamailio_check_dialog_incoming_enable = 1
- PRO: kamailio_check_dialog_local_enable = 1
- PRO: kamailio_check_dialog_outgoing_enable = 1
- PRO: kamailio_check_dialog_relay_enable = 1
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-370bcd5a
- AMI ID for region us-west-2: ami-9239fcf2
- AMI ID for region us-west-1: ami-58baff38
- AMI ID for region eu-central-1: ami-d041a8bf
- AMI ID for region eu-west-1: ami-13a33d60
- AMI ID for region ap-southeast-1: ami-5602d135
- AMI ID for region ap-southeast-2: ami-45b39a26
- AMI ID for region ap-northeast-1: ami-0fb6436e
- AMI ID for region sa-east-1: ami-2f6ee443
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.4.1 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.4.1 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#20493 Rtpengine module creates double newline in SDP after have extraced the SDP part from a multipart body
MT#20465 ngcp-approx-cache-helper works improperly if current folder has a file ends with ‘list’
MT#20349 kamailio LB doesn’t start on CE while works well on PRO
MT#20325 All jessie: ngcp-panel doesn’t start due to new perl version 5.20.2-3+deb8u5 (works well on 5.20.2-3+deb8u4)
MT#20315 API PATCH method for the customers is broken
MT#20247 Hardcoded RTP set on HPBX LIVE
MT#20235 Yealink devices not upgrading firmware on FW version >V80
MT#20207 Sound set sync during failover
MT#20197 CDR-Exporter doesnt do what it suposed to do
MT#20151 MYSQL error: Data too long for column ‘from_tag’
MT#20139 lock level 5 should disable register for subscriber
MT#20135 Callqueue resets P-headers
MT#20031 ngcp-approx-cache-helper: Option -n silently changed semantics
MT#20021 App cannot match vcard using E164 stored in alias number
MT#20011 Add elasticserach.enable support to start/stop on PRO
MT#20005 collective-check: Emits warnings when exim_queue.rrd has undefined values
MT#19987 Add documention for SIP-Signalling LOOP-Detection feature
MT#19985 Call Push fails for “Unknown caller in call from sbc”
MT#19963 approx public access limitation from #12171 doesn’t work
MT#19959 Documentation link not visible if you access as non super-user login
MT#19937 Not able to edit External ID for PBX Pilot Subscriber
MT#19915 Test ngcp-ngcpcfg-check failed after upgrade mr4.3->mr4.4
MT#19881 typo in german translation: “Sprachnachriten und Sprachbox” instead of “Sprachnachrichten und Sprachbox”
MT#19871 dnsmasq is restarted almost every apply on PRO trunk
MT#19829 Fix upgrade from ‘mr4.2.1’ to ‘mr4.2.2’
MT#19821 May Controller::SubscriberProfile::profile_edit delete cc for all customers
MT#19777 Move approx logs to /var/log/ngcp/approx.log
MT#19775 add coturn to rtcengine dependencies
MT#19763 rtcengine fix ice_config generation
MT#19751 sems-app and node.js is monitored on inactive noide which failed ngcp-collective-check
MT#19735 Disable ssl-client-auth for CSC
MT#19729 Error in Web SIP Call Flows if the Call-ID contains strange characters
MT#19713 Fix handbook path for the IOS certificates
MT#19697 API documentation: wrong description in “3.40 NcosPatterns” sub-chapter
MT#19673 kamailio: upgrade version to 4.4.1
MT#19663 RTCengine cannot connect to SIP accounts
MT#19661 Collectd populates files with empty values on DNS errors
MT#19651 Install captagent by default
MT#19631 LNP – default_lnp_prefix issue
MT#19629 No lookup in LNP table for incoming calls
MT#19627 The NCOS level with brackets in name causes error on a subscriber.
MT#19595 Upgrading from 4.2.1 to 4.3.1 ‘rewrite lnp dpid’ are not correctly added to existing domain RR
MT#19583 PRO/Carrier upgrade mr4.3->mr4.4 is broken due to kep package ngcp-service-pro
MT#19575 ability to set adm_ncos on customer level
MT#19571 config schema doesn’t match validation and mess in templates: rtcengine.sems-app VS rtcengine.sems_app
MT#19569 event-exporter gets stuck in a loop
MT#19565 Use index on kamailio.subscriber.uuid
MT#19541 Wrong handling of LNP prefix in LNP rewrite rules
MT#19537 documentation: List all role types
MT#19533 CE trunk/mr4.4.1 has wrong value in REDISCENTRALHOST=”ARRAY(0x34349a0):6379″ in /etc/ngcp-check-tools/check-tools.conf
MT#19503 ngcpcfg-ha: Syntax error in ha_features script
MT#19499 net-snmp: Make the perl agent bindings more tolerant of internal perl data representations
MT#19483 PRO has empty /etc/ngcp_mgm_node since mr3.6+ which affects upgrade mr4.3->mr4.4
MT#19449 ngcp-upgrade mixes STDOUT/STDERR output sometimes
MT#19445 Decrease shared memory on lb
MT#19443 Increase prosody telnet interface timeout
MT#19439 Consider refactoring dashboard widgets
MT#19419 http method override is not supported any more due to catalyst upgrades
MT#19401 allow_ips_grp id got screwed after upgrade from 3.4 to 3.5.1
MT#19369 Add the ability to activate Prosody “log stanzas from/to some specific jids” using config.yml file
MT#19363 In Carrier vTrunk on DB/Mgmt nodes missing RRD information
MT#19357 ngcp-bootenv-carrier should be renamed to ngcp-bootenv-pro in mr4.4+ (it is current ngcp-bootenv)
MT#19349 collectd-mod-redis is not installed after upgrade mr4.3.1->trunk(mr4.4.1)
MT#19345 Improve the Backup and Recovery section of the handbooks
MT#19329 On Carrier platform rate-o-mat doesn’t copy cdr LNP prefix field from proxy to database node
MT#19301 After upgrade to 3.8.4 BLF pickup doesnt work
MT#19267 Some platform software writes about 14G of logs in one night
MT#19261 Allow admin to put a pbx extension into a different domain than the pilot
MT#19251 ngcp-upgrade failed to upgrade glusterfs due to missing packages libc-bin libc6
MT#19241 rtcengine configuration
MT#19207 1 package with wrong version after upgrade to 4.3.1 from 4.2.1
MT#19199 use correct lbrtp_set id instead of default on call to voicemail&fax
MT#19135 documentation: Update git usage
MT#19129 ngcpcfg: Document how things work internally
MT#19113 call routing verification
MT#19095 ngcp-installer has some old/deprecated myserver SSL keys inside git repo
MT#19091 Added npm start script
MT#19089 introduce new type to avoid sip_ext duplicates in network.yml
MT#19081 comx/comxfs nginx configuration
MT#19075 Remove ability to provision 30 key on Yealink SIP-T48G
MT#19073 add via-branch=next feature
MT#19071 templatize the “ICE=force-relay” parameter in rtpengine
MT#19061 comx split public and binding address
MT#19057 ngcp-status reports annoying warning “Warning: Permanently added ‘…’ (ECDSA) to the list of known hosts.”
MT#19055 Kamailio 4.4.x doesn’t start in trunk due to missing certificate
MT#19053 kamailio-config-tests: support scenario groups
MT#19047 ngcp-status claims on missed /var/log/mysql/slow-queries2.log on Carrier proxy nodes
MT#19035 Billing fee edit breaks the billing fee functionality
MT#19031 comx make sipconnector port configurable
MT#19025 passwords are not replaced correctly
MT#19015 notopup interval discrepancy with constant billing intervals
MT#19009 upgrade kamailio to release 4.4.x
MT#18985 302 Moved Temporarily not working
MT#18977 Freezed screen and wrongly formatted page pushing Flash Dialogic button
MT#18965 Add abilty to ngcp-status check LVM
MT#18961 Update doc for new NGCP fax server
MT#18957 Local Debian repostory proxy does not support source packages
MT#18949 kamailio “latency” logging
MT#18947 use t_precheck_trans() to catch request duplicates
MT#18933 ngcp-insert-pbx-devices.pl stop with “Internal Server Error”
MT#18929 configuration for comx provisioning api
MT#18909 upgrade mr4.3->trunk failed to pass ngcp-check-status-integrity test
MT#18907 asterisk is not creating core dump
MT#18905 prosody: control push notifications
MT#18903 Simple URL enpoint for mobile app file sharing for Android/iOS app
MT#18883 templates callingcard: are broken
MT#18879 CDR Exporter exports 5000 cdrs in one file and only 1 cdr into another
MT#18865 Adapt GUI/API fax_journal to the new faxserver
MT#18847 Templetize the “strict source” parameter in rtpengine
MT#18843 wrong dispatcher ID is used for PBX MoH
MT#18841 ngcp-sync-db-wrapper for master slave replcation in carrier cluster
MT#18833 ngcpcfg: clarify option usage
MT#18821 Support time zone option when retrieving call list via API
MT#18819 PRO is a degraded CARRIER, stage 1 (merge packages)
MT#18815 unify templates packages
MT#18811 debug output used on stdout causing problems with branch detection
MT#18803 Glusterfs unmoung /mnt/glusterfs if second “start” action has been called.
MT#18797 acc_caller_domain is not set correctly on call to huntgroup member
MT#18777 When provisioning only a 2nd line on a Panasonic KX-UT113/KX-UT123, the line cannot be used to call
MT#18757 sending faxes from PBX users using ngcp-faxserver is broken
MT#18745 Move announce codes and reasons to config.yml
MT#18727 Upgrade mr4.2.1->mr4.3 failed due to ngcp-fraud-auto-lock.tt2 ovnership switch to ngcp-templates-ce-ngcp-billing-tools
MT#18725 Prosody log contains SQL errors on CE-trunk
MT#18723 collectd: Perl plugin segfaults when using Redis perl module
MT#18721 Carrier upgrade mr4.1.2 -> mr4.2.1 failed in case if /ets/sudoes.d/sipwise file has no header “managed by ngcp”
MT#18717 MySQL ALL_NON_LOSSY and slave_skip_errors are not pplied on Carrier DB nodes
MT#18715 sems-pbx ignores redis_database option
MT#18713 ngcp upgrade carrier fixed for jessie (+ when http proxy is involved)
MT#18703 On our freshly upgraded PRO we yield only grade “B” from ssl-labs qualys test
MT#18699 Billing Profiles table: error sorting for columns “Used (contracts)” or “Used (packages)”
MT#18683 Low success rate sending fax with spandsp/asterisk 11
MT#18679 Documentation improvement for HB 4.4.1
MT#18677 REST API test t/api-rest/api-cert-auth.t failed on PRO sp1 just after installation “400 Bad Request” from nginx
MT#18673 Does comx stores logs under /var/run/ ?
MT#18665 The collectd NGCP plugin handles redis errors incorrectly
MT#18659 Fox core ERRORs in kamailio-proxy.log
MT#18649 Fix app_lua [app_lua_sr.c:100]: lua_sr_log(): central:del[1:13] counter was -1
MT#18643 ssh process is not listening on ha_int shared IP
MT#18637 REST API call “customerzonecosts” not working
MT#18633 SQL warning messages in asterisk11 voicemail, when hangup while VM-message playback
MT#18625 Add T38 RE-INVITE options for linksys-spa3xx cloudpbx-device
MT#18621 Asterisk 11 voicemail execute /usr/bin/vmnotify with wrong parameter
MT#18619 Remove ossbss from Monit/nsservices.yml/monitoring-tools
MT#18601 Web pannel pbx groups shows wrongly the susbcribers that have CF enabled-cosmetic
MT#18599 Implement rtcp statistics reporting towards Homer in rtpengine
MT#18593 Implement emergency priorization
MT#18587 build comx-fileshare-service package
MT#18563 Panasonic does not send Register with Expires:0 when reprovisioned
MT#18547 Internal ticket to analyse issue 7 – LI Pine Testing: direct pickup does not deliver X3
MT#18499 Customer locations feature
MT#18443 ngcp-panel: Should switch from base module to parent
MT#18411 rework ngcp provisioning scripts for NGCP::API::Client
MT#18235 db_mysql [km_dbase.c:122]: db_mysql_submit_query(): driver error on query: Data too long for column ‘caller_contact’ at row 1
MT#18105 Ngcp-sems-pbx component is crashing
MT#18055 mod_sipwise_vjud: use proper fields for search by number
MT#18039 Voisniff-ng is running on inactive node (while monit expect on active only and HA knows nothing about switchover)”
MT#17909 NGCP LNP proxy/daemon
MT#17805 Panel (?) seems not able to correlate PCAP files with PBX calls
MT#17801 rest-api internal authentication for ngcp-* clients
MT#17795 CDR: balance_before/after and other new fields
MT#17771 Documentation improvement for HB 4.3.1
MT#17709 Redis counters issue in case of multiple call forwards
MT#17699 upgrade packages to Debian Policy 3.9.7.0
MT#17657 rate-o-mat should handle some errors internally without restart
MT#17461 ‘Max Subscribers’ field in Customer with Basic Account
MT#17443 Upgrade mr4.2->mr4.3/trunk failed on step ‘check_ngcp_status’
MT#17413 New added ‘Allowed CLIs for outbound calls’ not displayed correctly
MT#17405 ngcp-status check mounted root partition
MT#17347 IVR rounds to floor when speaking the contract balance amount
MT#17333 [FR] German law requires a RN-Parameter and call forward after a subscriber moves to another ISP
MT#17309 REST API call to get “Customer” -> “Contract Balance” -> “Spent this interval” missing?
MT#17041 Research and implement gaps towards SipConnect 1.1
MT#16777 Implement local LNP DB
MT#16491 calls query and index for group by
MT#16473 Update software license for a lot of components.
MT#16239 ngcp-network doesn’t care about duplicate IP records
MT#16183 ngcp-upgrade skips errors on apt-get update
MT#16079 New feature SIP-Signalling LOOP-Detection
MT#15883 Comx Implement into NGCP panel
MT#15269 Speed up rest-api test execution if possible, current 15 minutes is already too huge
MT#15227 _not_replicated DB statements never executed on LOCAL proxy mysql instance (127.0.0.1:3308)
MT#14675 ngcp-ossbss (SOAP interface) removal from NGCP
MT#13825 Carrier 3.x cannot start astetrisk on package upgrade if dnsmask is disabled (Debian bug #703805/#773170)
MT#12939 How to define the hutgroup order
MT#6969 ngcp-panel: trigger SPA device resync via SIP NOTIFY
MT#6565 kamailio-config-tests: fix problems on heavy load systems