We are excited to announce the general availability of sip:providerCE mr4.0.1 and sip:providerPRO mr4.0.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.0.1?
The most important changes for mr4.0.1 compared to mr3.8.x are:
- Migration of Debian Jessie is in progress and planned for upcoming mr4.1/mr4.2 releases.
- Switch APT sources.list to HTTPS by default
- Allow setting multiple billing profiles for difefrent networks (e.g. WiFi and 4G)
- Implement API provisioning journaling
- Update kamailio to version 4.3
- Add variance to expiry time of registrations
- CloudPBX: Add openldap address book
- Dynamic balance interval duration and start (including topup)
- Add new command “ngcpcfg values”
- Add Romanian voice prompts to ngcp-prompts
- Add link to API and handbook on ngcp-panel WEB inreface
- Add sngrep utility to NGCP platform
- Speedup PRO upgrade by sharing distfiles between sp1 and sp2
- Improve ngcp-status tool to provide general status in one command
- Update motd usage, now it provide more information and looks better
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-5d9f3b36
- AMI ID for region us-west-2: ami-79e7e949
- AMI ID for region us-west-1: ami-1bd5295f
- AMI ID for region eu-central-1: ami-a66064bb
- AMI ID for region eu-west-1: ami-b80354cf
- AMI ID for region ap-southeast-1: ami-90a5a8c2
- AMI ID for region ap-southeast-2: ami-d1fdbceb
- AMI ID for region ap-northeast-1: ami-8871c388
- AMI ID for region sa-east-1: ami-3169e72c
Check the relevant section in the 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.0.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.0.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#14281 Prosody pushd module uses urlencode now
MT#14243 Implement libswrate for balance underrun
MT#14067 /usr/share/perl5/NGCP/CDR/Transfer.pm fails if spaces in dir name
MT#14055 Fix cisco CA for autoprov client auth
MT#13971 Remove debug output for ngcp-db-schema/db_scripts/diff/15167.up
MT#13969 Various Yealink provisioning fixes
MT#13957 Dispatchers errors in log on start
MT#13949 Default ssl files can’t be read by slapd service
MT#13929 Implement voucher and cash topup in API
MT#13919 CloudPBX: Add openldap address book
MT#13917 Improve calls push notification stability
MT#13909 Cleanup/remove section www_csc from config.yml
MT#13903 Dynamic balance interval duration and start (including topup)
MT#13895 Prevent ngcp-iaxmodem listens all IP addresses by default
MT#13891 Add new command “ngcpcfg values”
MT#13875 Add libanyevent-perl to ngcp-approx-cache-helper
MT#13873 CloudPBX: Fix Innovaphone BLF pickup
MT#13847 API Callists preserve number after rewrite rules
MT#13827 Carrier 3.x upgrade should have faildack to /usr/share/ngcp-system-tools-carrier/ngcp.inc instead of PRO
MT#13825 Carrier 3.x cannot start astetrisk on package upgrade if dnsmask is disabled (Debian bug #703805/#773170)
MT#13823 Check/warn/rename custom.tt2 for sems during upgrade 2.8->mr3.8
MT#13821 Prevent Asterisk start on all Carrier 3.x nodes
MT#13815 Split IMG2020 MGM and SIP interface
MT#13789 Fix Nginx config for pushd if enabled in /etc/nginx/sites-enabled
MT#13777 Max upload size csv file for billing fees increased to 64MB for csv
MT#13771 Sems-pbx is not considering node type and trying to start on all nodes in Carrier 3.x
MT#13769 Pass rtp_interface of original caller in case of CF
MT#13743 Sems (libswrate) is writing prepaid_cost table on db01 but rate-o-mat is checking that table on localhost (prx)
MT#13737 RTPengine add SDP attribute ‘rtcp’ even on T.38 Re-INVITE
MT#13733 Use src_ip in rate-o-mat and libswrate to determine correct billing profile
MT#13717 ngcp-panel nigtly tests failed in trunk (selenium-ruby contact search problems + 13 errors on REST API)
MT#13711 Occasional “Hash Sum mismatch” errors during apt-get runs on Debian/squeeze with haproxy
MT#13701 Prevent resurrection of the terminated subscribers which caused 500 Internal server error
MT#13661 app_voicemail.c doesn’t retain the umask value that is read upon
MT#13659 Number Range for Pilot subscriber cannot be used during extension creation
MT#13657 Administrative flag, can be changed for CloudPBX pilot subscribers
MT#13655 Remove annoying variable $VERSION from upgrade scripts/steps
MT#13639 Drop apt-get’s “–force-yes” option, possibly causing insecure downloads
MT#13637 apt/sources.list: use HTTPS by default
MT#13617 Yealink config template doesn’t enable not default lines for the Yealink T41P & T42G devices
MT#13599 If I set CF to VM via VSC I get wrong audio prompt
MT#13597 playbalance played in loop and call cannot be CANCELED
MT#13595 add new mode to preference bypass_rtpproxy
MT#13587 Drop corosync/HA features we don’t use
MT#13583 handbook 3.8.2: Images are shift out of the document
MT#13573 CallList incorrect for records of terminated subscriber
MT#13543 SAT_3.15- SLA (Shared Line) not working
MT#13531 Cannot terminate reseller in trunk/mr4.0 (Can’t locate object method “email_templates”)
MT#13529 Fix problems with suppressed numbers
MT#13487 Fix glusterfs migration error when upgrading PRO 2.8->mr3.8.2
MT#13471 Call Lists – Caller displayed as anonymous
MT#13459 Add Romanian voice prompts to ngcp-prompts
MT#13447 FritzBox Voicemail call detecttion need to be improved
MT#13435 Rewrite Rules fehlerhaft
MT#13421 Create package for “ngcp-inventory” in repository
MT#13409 Vagrant PRO-trunk is failed to start since we enabled sudo logging
MT#13393 Änderungen am outbound_from_user beim Peer mit Remote Authentication
MT#13389 HPBX Syslog Details
MT#13373 Remove warning messages of ngcp-panel + cfg-schema in wheezy-trunk builds
MT#13369 Inconsistent background color of device Front Images
MT#13363 Auto attendant destination not working if destination has PBX Call Queue enabled
MT#13343 Nightly upgrade test failed due to unnecessary MySQL restart
MT#13329 kamailio dialplan rules changed from ‘$avp(whatever)[*]’ to ‘$avp(whatever)[+]’
MT#13325 Enable logging of UA and UAIP in the kamailio.log always
MT#13297 kamailio-config-tests sometimes failed because doesn’t detect PID modifications when sems last in list and core dumped
MT#13269 NGPC Panel and APIs return 500 – internal server error after a POST to the api/pbxdevices
MT#13249 Fixed acc time_hires precision issue
MT#13243 ComX filter subscribers by webuser, -password
MT#13241 Fixed cdr-export.pl warning “Exiting subroutine via next at /usr/sbin/cdr-exporter line 65”
MT#13237 Fixed wrong owner of billing directorys after upgrade to 3.8.1
MT#13231 Fixed collectd regusers rrd is 0
MT#13213 Voicemail does not work if advertised_ip is set
MT#13207 Upgrade sudo to latest version to allow for command tracing in sudo shell
MT#13203 Add link to API and handbook to ngcp-panel
MT#13201 Enhance voucher handling
MT#13067 RTP timeout timer seems to start after the first INVITE instead after the 200Ok
MT#13019 sems: enable transcoding
MT#13015 Vagrant provisioning migrated to REST API
MT#13011 Fix accounting on calls to AA target
MT#13009 Fix PBX and voicemail caller lookup if same username exists in different domains
MT#13007 PBX sounds reload in System sound set is not handled correctly
MT#13001 The format of the CDR and EDRs needs to be the origninal delimtations.
MT#12987 update kamailio to latest version on 4.1 series
MT#12977 Backport sngrep to ngcp platform
MT#12975 ngcp-ppa tool should support multiple PPA repositories
MT#12969 Speedup PRO upgrade by sharing distfiles
MT#12953 Fix pushd messgaes delievering to offline Android application
MT#12943 Voicemail language is not set when leaving a message
MT#12939 CloudPBX: preserve groups order while edit subscriber
MT#12937 CloudPBX: add order of huntgroup member in API call
MT#12927 ngcp-panel: set charset to API response
MT#12923 /usr/bin/ngcp-api-tools is not a executable
MT#12921 Force user to run ngcp-upgrade under GNU screen
MT#12911 CFB hunting. Busy announcement is played before the CFB
MT#12905 Voicemail failed if voicemail_echo_number & VM enabled via VSC
MT#12903 CloudPBX: Only play AA menu prompt if a destination is set for index
MT#12901 Read API creds from ~/.ngcp-api for ngcp-api-* tools
MT#12897 Improve selenium ngcp-panel test stability for case “thisshouldnotexist”
MT#12895 Carrier 3.x: fix upgrade which produces wrong /etc/apt/sources.list.d/*.list
MT#12879 Add petter packages dependencies for rtpengine <-> rtpengine-redis (ensure servions in sync are installed)
MT#12873 CloudPBX: fix varipus bugs found during PBX Call Queue tests
MT#12865 DELL OMSA mirror is now available for CE users on Dell hardware
MT#12857 Fix RTPengine start with wrong rtpengine-redis version
MT#12847 CloudPBX: fix pilot creation and use first range number as primary number
MT#12819 Fixed FAX which received as TIFF. TIFF was not readable on Windows
MT#12813 API REST: calllists return ERROR 500 if only customer_id is specified
MT#12771 update Panasonic firmware to 01.292
MT#12761 add COLP for inter-PBX calls
MT#12725 During the upgrade diva cards drivers fail to compile, improve stability here
MT#12713 Add support for jessie deployments in deployment ISO
MT#12701 Show cf ncos levels in API
MT#12691 Fixed one-way audio after mobile push
MT#12673 Display ncos and rwr prefs in API description
MT#12669 support services to not fork/daemonize away
MT#12667 improve block_out/block_in checks logging
MT#12643 Allow setting multiple billing profiles
MT#12615 Don’t filter call_id in CallLists API call
MT#12591 Fix /etc/ngcp-config/ssl/myserver.crt ‘Permission denied’ at /usr/share/perl5/NGCP/Panel/Model/CA.pm
MT#12565 mandatory constraint of “description” form inputs do not correspond to db schema
MT#12559 Prevent listeting all interfaces for SNMPd and ngcp-iaxmodem
MT#12555 ngcp-panel: impossible to specify port in URI
MT#12547 ngcp build failed to start tt2-daemon (Error: IO::Socket::INET: Address already in use)
MT#12537 GRUB failed to boot on Proxmox dev01 installed from latest GRML 2014.11 Install CD
MT#12521 Corrupted /etc/ngcp-rtpengine-daemon/interfaces.yml is generated for SPCE
MT#12519 RTPengine kernel module is not installed if kernel has been upgraded 2.8->mr3.8.2 during upgrade
MT#12513 ngcpcfg commit failed in case if /etc/ngcp-rtpengine-daemon/interfaces.yml not yet created
MT#12507 Prepare and release 2.8-mr3.8 direct upgrade
MT#12503 Drop ngcp.cfg_schema since it has been moved to sqlite in /etc/ngcp-config
MT#12499 Email templates aren’t created for the newly created reseller
MT#12489 Improve bootenv-unit-test stability
MT#12483 cleanup Datatables.pm
MT#12479 support Grml 2014.11 as default deployment ISO
MT#12467 Calling hunt group with *31* (VSC for CLIR) shows CLI of caller
MT#12465 route local calls to the upstream peers if caller is from another Customer
MT#12453 CloudPBX: Show reseller name in device model table
MT#12449 Move opt script ngcp-sync-db-wrapper from wiki to Git
MT#12427 Shared line on Panasonic rejects incoming calls
MT#12385 Split EDR export per reseller
MT#12381 event-exporter always connects to localhost
MT#12373 prosody: add prosody.debug_level config option
MT#12369 sp1 has no db or rtp role asigned
MT#12365 Add leastused distribution policy for Carrier 2.x
MT#12355 ngcp-pushd: activate pushd does not activate the nginx config
MT#12343 We do not decrement values in REDIS db 3 for number of calls
MT#12319 upgrade klish deb to latest release 2.0.3
MT#12317 Wrong invoice generation location script
MT#12307 CloudPBX: e164_to_ruri option doesn’t work for PBX users
MT#12303 Dialogic IMG 2020 configuration as SIP/SS7 and Optical
MT#12281 Use common filesize upload limit for the mysql and nginx
MT#12275 Fix system-tools-binaries Jenkins job failing lintian test “dir-or-file-in-opt”
MT#12273 Force option of Data::HAL ‘link’ and ’embedded’ fields
MT#12271 ngcp-dumps-upload-to-sipwise failing in recent runs
MT#12267 Fix sip:phone app prosody/xmpp issues
MT#12261 CloudPBX: fix provision numbers where area code begins with zero
MT#12245 CloudPBX: set picked up party in response to BLF pickup request
MT#12241 Adjust/reduce cdr archive/backup default values
MT#12221 rrd files are not created
MT#12217 302 redirect creates excessive branches
MT#12215 account/accountout are not set for outbound call to PEER
MT#12213 CloudPBX: “Unknown caller in call from PBX” after blind transfer
MT#12205 Add sems.debug to config.yml
MT#12195 dispatcher_id=50 not present in dispatcher table
MT#12191 Rename “Add more” button to “Add destination sets” to avoid misunderstanding
MT#12167 Add initial version of NGCP SNMP MIBs
MT#12059 Detecting Fritzbox special numbers
MT#12035 /etc/motd not displaying correct after active/passive switchover in case of power failuare
MT#11941 Wrong email address on the 500 Internal Server Error web page
MT#11921 Clean various tap-test errors/warnings (ongoing project)
MT#11917 Implement API provisioning journaling
MT#11897 Get rid of *-builddeps repositories
MT#11871 Modify codec precedence on Cisco ATA for get MOH feature working
MT#11859 Enable sca module for Panasonic shared line
MT#11827 CF destination in the CSC accept brackets
MT#11791 more decimals for the cost columns
MT#11789 CloudPBX: Fix Panasonic BLF handling
MT#11779 Administrative flag can’t be deactivated
MT#11777 CSC Panel: Subscribers can see the Cloud PBX section in the Subscriber’s Preferences even if pbx is not installed
MT#11775 CSC Panel: Web fax fails to send fax, no info message appears
MT#11773 CSC panel: Subscriber Settings page fails to load when you go there from Customer Settings
MT#11769 Add documentation about Email Templates and Invoices
MT#11713 Disable/remove/archive unused Git repositories
MT#11709 Rename off-peaktimes button from “peaktimes” to “Off-Peaktimes”
MT#11667 Add additional information on call list log page.
MT#11663 CloudPBX: add huntgroup ext to hunt display indicator
MT#11651 issues with CFT for cloud PBX subscribers
MT#11637 API call with Reseller user
MT#11631 MOH doesnt work on Park the call feature on A side
MT#11583 Last activity fixed on prosody
MT#11549 Search and find subscriber by Alias number
MT#11509 fraud-lock query creates slow-query when cdr entry are high
MT#11501 Dialogic IMG 2020 configuration as SIP-SIP transcoding
MT#11375 Skipped CDR from mediator process on CFT
MT#11325 Redis listens all interafces on DB node and required db_ext network type in Carrier 3.x
MT#11239 dsm/mod_utils: rename the prompts for single digits after the tens
MT#11225 Correlate billing profiles for resellers and their respective customers for fraud handling
MT#11219 Load default sound files from file system and provide fallback from customer to system
MT#11147 Establish predefined line sets as special type of the device models – extension
MT#11063 Carrier 3.x: move PXE boot configuration to ngcp templates framework
MT#11027 Cleanup SSL certificate handling (ongoing project)
MT#10879 Primary number can not be set to null if it has been already set
MT#10869 Disable certain Jitsi autoprov features
MT#10697 Move REST certificats ‘api_ca’ generation from templates.postint to installer
MT#10537 Implement calllists as simplified way to fetch call history for a subscriber
MT#10535 Add variance to expiry time of registrations
MT#10405 Add Spanish ngcp-prompts translation
MT#10403 Add Italian ngcp-prompts translation
MT#10401 Add Russian ngcp-prompts translation
MT#10399 Add German ngcp-prompts translation
MT#10339 upgrade kamailio to 4.3.0
MT#10337 Add update/override to cloudpbx-devices tool
MT#10175 duplicate CDR in case of fallback on 404
MT#10159 vmnotify it is not triggered if you read/delete VM from NGCP Panel
MT#10125 configure the NGCP push notification for calls
MT#10093 be able to install the same set of packages on CARRIER nodes
MT#9963 Tools to get concurrent dialogs from REDIS: ngcp-redis-helper
MT#9759 Add various system checks to ngcp-status
MT#9557 Add timestamp to ngcpcfg output for better debug
MT#9377 Carrier 3.x: fixed MWI
MT#8951 Add numbers and names to prosody sipwise-vcard module
MT#8759 aliases for connecting to specific mysql instance in Carrier
MT#8705 Prosody doesn’t listen 5582 (ngcp-panel: Failed to create domain. A service could not be reached, “127.0.0.1”, port 5582)
MT#7615 Fix upgrade 2.8->3.0 sometimes failed with error: Column 32 of table ‘mysql.user’ cannot be converted from type ‘enum’ to type ‘blob
MT#7371 Fix “ngcp-kamctl fifo” process which stuck sometimes
MT#7227 Prevent billing fee entry combination {source, destination, direction} to be entered twice
MT#7141 upgrade packaging style to 3.0 (ongoing project)
MT#6565 kamailio-config-tests: complete redesign to be much faster and more usable
MT#6483 Fix REST API on fetching billing profiles with lots of fees causes gateway timeout
MT#6235 Fix FAX orientation is wrong on TIFF (sending portrait but received landscape on email)
MT#5899 Only allow private key access between sp1 and sp2