Release Notes
Summary
sipXcom New Features:
Several UniteWeb (new user portal) enhancements and fixes
- sipXdashboard installable from command line (Community Contribution)
- Send phone profiles with REST API
- Control user MoH from API
sipXcom Improvements:
Yealink plugin updates (Community Contribution)
- Polycom phone configuration updates (Community Contribution)
- Empty phonebook button added
- Search in Admin Portal now includes Fax Extension and Fax DID
Phone Software Supported:
- Polycom- 4.0.9 for SoundPoint IP, 5.2.5 for VVX
Who Should Install?
This release is recommended for all 4.6, 14.XX, 15.XX and 16.02 installations.
New Installs
A new ISO is available for 16.04 at: http://download.sipxcom.org/pub/sipXecs/ISO/
Update
To update please edit your /etc/yum.repos.d/sipxecs.repo file and reference the new download server (download.sipxcom.org). The repo should look as follows:
[sipXcom]
name=sipXecs software for CentOS $releasever - $basearch
baseurl=http://download.sipxcom.org/pub/sipXecs/16.04/CentOS_$releasever/$basearch
gpgcheck=0
To edit this file, login to your sipX server as root and then use either vi or nano (easier).
vi /etc/yum.repos.d/sipxecs.repo
or
nano /etc/yum.repos.d/sipxecs.repo
Once the repo file is modified, run:
yum clean all
yum update
SIPX-133 | Add Forward and Delete option for Unified Messaging to Unite User Portal | In User's Unified Messaging settings, add option to enable Forward and Delete voicemail from inbox after sent. | Enhancement | UniteWeb |
SIPX-214 | REST: MoH | Enhancement to allow user control of MoH through REST calls. Required for UW-133. | Enhancement | API |
SIPX-330 | Managing custom users in phonebooks | This enhancement is to add an "Empty phone book" button to phonebook page. Administrator can then update the phonebook by 1st downloading as a CSV file, 2nd update the CSV with a text editor, 3rd empty the phonebook in the Admin portal, 4ft import the new CSV file. | Enhancement | Config |
SIPX-397 | Polycom SPIP 4.0.8 & Later firmware | Enhancement because Polycom added some new parameters to firmware 4.0.8 and later firmware for the SoundPoint IP phones. One in particular causes the phone to close TCP socket connections which can break remote phone operation. Add the following new parameter and ensure phone is configured with the value set as 1. tcpIpApp.keepalive.tcp.sip.persistentConnection.enable 0 or 1 (0 = default) If 0, the TCP Socket connection is closed after 1 minute. When the phone sends a new SIP message, a new connection is opened. If 1, the TCP Socket connection remains open indefinitely. Large installations may want to be able to set the value to 0 to keep TCP socket connections lower. | Enhancement | Polycom |
SIPX-440 | REST API improvement | Ability to send profiles to the phones via Rest api | Enhancement | API |
SIPX-451 | Create sipXdashboard | Community contribution of sipXdashboard was added to project. Create sipXdashboard and make it installable. Added firewall rule for port. Use is documented here: http://wiki.sipxcom.org/display/sipXcom/Dashboard | Enhancement | Dashboard |
SIPX-454 | Increase number of processes allowed for sipx user | The sipx user sometimes requires more processes. This enhancement increases number of processes allowed as seen below. Workaround: Edit /etc/security/limits.d/97-sipx-nproc.conf and add in nprocs for the sipx user sipx soft nofile 4096 sipx hard nofile 10240 sipx soft nproc 4096 sipx hard nproc 10240 .. after saving please make this file immutable : chattr +i /etc/security/limits.d/97-sipx-nproc.conf | Enhancement | Config |
SIPX-460 | Yealink Config Protection Parameter and Phone Background | Added an option to store personal config of Yealink Phones - Proctect Mode to store custom config inside the phone - Sync Mode to store on TFTP in <mac>-local.cfg file (with write access) and reload the local.cfg after factory reset Config String to preselect and uploaded Background (depends on uploaded Wallpaper files) Tested with 16.04 on T48G with FW 8x Feature avaiable since Version 7. Full description inside Yealink Autoprovision Guide | Enhancement | Yealink |
SIPX-462 | Yealink PIN Lock and Volume Settings | Correction of PIN Mode for Yealink T2x, T4x Series Behaviour is different between series and inside 4x Series. Handling described in Yealink_SIP-T2_Series_T4_Series_IP_Phones_Auto_Provisioning_Guide_V73_40.pdf Yealink_SIP-T2 Series_T19(P) E2_T4 Series_IP_Phones_Auto_Provisioning_Guide_V80_60.pdf Insert Volume Settings and fixed description for Version 8x (out commented to don't overwrite personal phone settings, will be now possible with custom protect mode) Tested with 16.04 and T46G and T48G | Enhancement | Yealink |
SIPX-463 | Yealink Remote Control | Enhancement to add some additional Yealink features: Remote Control Enable Parameter (not documentated in Auto Provisioning Guide) Parameter is feature.action_uri.enable (from Admin Guide) Needed to perform Action URIs Allow SIP Trust Server only for FW 8x Parameter is sip.trust_ctrl Could maybe have an affect on HA behaviour so this is deactivated by default like from Yealink designed Tested with T46G, T48G and T49G | Enhancement | Yealink |
SIPX-466 | Polycom Site configration line-dialplan and forwarding | The Line Dialplan will not be configured. Issue is created by a definition of "lines" inside the site cfg. "lines" will mean Line Count in this case and not as in other cfg files the phone lines. Renamed this to linesCount and add the lines as in every other config file During this change the option to enable the local forwarding menu under Line > Call Handling (default disabled) | Enhancement | Polycom |
SIPX-478 | Add Portuguese lang pack | Community provided enhancement to Portuguese lang pack | Enhancement | Config |
SIPX-484 | Slow queries due to instrument field not indexed in registration db | There are bunch of slow queries in mongo logs like Sun Mar 9 01:03:45.779 [conn33033] query node.registrar query: { $readPreference: { mode: "primaryPreferred" }, query: { instrument: "0004f245d6a5", expirationTime: { $gt: 0 } } } ntoreturn:0 ntoskip:0 nscanned:4381 keyUpdates:0 numYields: 34 locks(micros) r:40511 nreturned:1 reslen:431 583ms Sun Mar 9 01:03:45.784 [conn33636] query node.registrar query: { $readPreference: { mode: "primaryPreferred" }, query: { instrument: "0004f23ec1d9", expirationTime: { $gt: 0 } } } ntoreturn:0 ntoskip:0 nscanned:4386 keyUpdates:0 numYields: 34 locks(micros) r:34357 nreturned:2 reslen:848 587ms The above messages says that on the query for instrument 0004f23ec1d9 that 4386 bojext had to be searched. Indexing will fix this. Added index for instrument field in Mongo. | Fix | Config |
UC-2056 | Fax ext/DID does not appear in search | Enhancement to have FAX ext and DID appear when a search is performed. Without this it makes it hard to account for those numbers. | Enhancement | Config |
UC-3853 | Feature request for Polycom RealPresence Trio template | Customer request to add web ui management for Polycom AV units. Specifically for RealPresence Trio. http://www.polycom.com/voice-conferencing-solutions/conference-phones/realpresence-trio.html RealPresence Trio utilizes VVX firmware. This should be not much different from a VVX 500 (camera is an option). Phone name is: RealPresence Trio | Enhancement | Polycom |
UC-3897 | CDR Reports must be able to be reported by time zone | Add an enhancement to allow CDR Reports and Downloads to have time reported by a particular time zone. In Diagnostics -> Call Detail -> Historic and Diagnostics -> Call Detail -> Reports be able to select (and remember) a Time Zone to display call records in. Download of CSV must also be in selected time zone. | Enhancement | CDR |
UC-3956 | Optionally allow users to subscribe to their own presence | A customer has built a 3pcc application that requires that a user be able to subscribe to their own presence. Add an option in the Admin Settings configuration page to allow subscription to user's own extension. This is disabled by default in the Admin GUI. | Enhancement | Config |
UW-133 | Enable MoH configuration at user level | Added the ability in Unite Web Portal for the User to be able to configure their MoH if the following permissions enabled at superadmin level: Configure Music on Hold (Default: checked) Configure Group Music on Hold (Default: unchecked) At user level, MoH can be configured on the old style user portal, but not on the new UniteWeb portal. | Enhancement | UniteWeb |
SIPX-102 | sipXexample plugin doesn't show border's title | Fixed an issue where sipXexample plugin doesn't show the border's title due to a wrong superclass of the page. Solution: don't use BasePage from tapestry but use SixpBasePage from sipx components | Fix | Config |
SIPX-132 | When using DID aliases, the registrar signs the 302 contact with the identity of the alias instead of the real user account resulting to authentication failure in the proxy | Fixed an issue with the proxy that was causing 407 errors when using DIDs and Aliases. Below is the issue log detail Contact: \"John Doe\"<sip:7826@sipxcom.domain;sipXecs-CallDest=AL?X-sipX-Authidentity=%3Csip%3A8126837826%40sipxcom.domain%3Bsignature%3D554A6344%253A0d1618ec31ce83d050666d7829110f64%3E&ROUTE=%3Csip%3Asipxcom.domain%3Blr%3E>\r The auth identity should have been sipX-authidentity=%3Csip%7826%40sipxcom.domain to signify to the proxy that 7826 account is responsible for authenticating this call and not 8126837826. There is another overlapping bug identified here. See the following proxy logs: "2015-05-06T18:53:56.240093Z":42417:ODBC:INFO:uc2.sipxcom.domain::7f166fca5700:sipxproxy:"EntityDB::findByIdentity - Unable to find entity record for 8126837826@sipxcom.domainfrom namespace imdb.entity" "2015-05-06T18:53:56.240116Z":42418:AUTH:WARNING:uc2.sipxcom.domain::7f166fca5700:sipxproxy:"EnforceAuthRules[400_authrules]::authorizeAndModify call '14ef1198-6ec4-1233-f4a8-005056b02b56' requires ''" "2015-05-06T18:53:56.240135Z":42419:AUTH:DEBUG:uc2.sipxcom.domain::7f166fca5700:sipxproxy:"SipProxy::proxyMessage plugin 400_authrules returned DENY for 14ef1198-6ec4-1233-f4a8-005056b02b56" 1. Proxy was unable to find account for 8126837826@sipxcom.domain 2. Authentication was denied because call required "" | Fix | Proxy |
SIPX-155 | Some log files not included in logrotate | Fixed an issue where the following log files were not included in /etc/logrotate.d/sipx : run_erl.log sipxsecurity.log snmp-fix-process-cron.log | Fix | Config |
SIPX-182 | Multiple prefixes are not working under dialplan | Fix help text on dial plan page to reflect the fact that ranges can not be specified. | Fix | Config |
SIPX-220 | Polycom Group configuration loses firmware | Fixed phone group firmware to not automatically change firmware when updated occur at phone level or if we change group position only if we manually change firmware at group level will forward the change to contained phones given group weight Phone Groups have now their own firmware setting and do not inherit phone members firmware the firmware is dependant on phone model saved in setting_value in the following form: group.version/firmware.version/ + modelId Example: group.version/firmware.version/polycomVVX500 Changing group firmware will change phone members firmware given group weight Changing phone firmware at phone level will be effective no matter on what group the phone is part of moving groups up and down will not modify phone firmware. | Fix | Config |
SIPX-247 | 15.06 restart media server causes error, freeswitch only restarts with send server profiles | Not all voicemail changes are restarting FS. Running restart FS from web UI returns error even if FS correctly restarted. Fixed the UI to report success. | Fix | Config |
SIPX-308 | Voicemail progress not showing in player | Fixed an issue in UniteWeb that caused the voicemail position indicator to not move as the message was played. Mac OS/X 10.10 Chrome 38.0.2125.122 | Fix | UniteWeb |
SIPX-390 | Authorization codes not working with location based gateways | Fixed an issue with Locations that caused Authorization codes to no longer function when upgrading a 15.08 production site to 15.10. SipXcom responds with 404 Not Found after the INVITE. There are two locations, with gateways reserved for each location. Workaround was to check shared flag in one of the gateways configuration page, authorization codes work again. Note: If Locations feature is used and Authorization codes are to be used, Auth Codes must have Location specified. | Fix | Config |
SIPX-394 | Inbound calls from ITSP Fail | Fixed an issue with IVR not accepting inbound calls. This was caused by the log4j library. We've updated the log4j library in the system to resolve this problem. SipXcom was responding with 480 Temporarily Unavailable on inbound calls. This affects 15.10 as well as 15.08. Workaround was to put IVR in debug. | Fix | Config |
SIPX-429 | Docker build for set of projects with dependencies | Fixed an issue that didn't allow for multiple projects to be completed at the same time. Issues with build_docker_rpm.sh when trying to the following case: 1. I have code changes for some bug in library (sipXcommserverLib) and 2 projects (sipXproxy and sipXregistry). 2. projects has that lib as dependency, so it should be compiled only after library build. Using current build_docker_rpm.sh it is not possible to build more than one component by one run and by one container. (--rm flag in docker call clears container every time). For the ability to not clear container you could edit build_docker_rpm.sh in sources and remove --rm flag. | Fix | Docker |
SIPX-436 | SIPXCDR: ERROR: duplicate key violates unique constraint \"cdrs_call_id_unique\"" error | Fixed an issue that lead to errors regarding duplicate call ID's. This was caused by certain records not being removed from memory. Eventually this would lead to crashing of the callresolver. SIPXCDR: ERROR: duplicate key violates unique constraint \"cdrs_call_id_unique\"" error seen in call resolver logs. This appears in case of forked calls where there are multiple CSEs in REQUEST state and multiple CSEs in END state. CDR is computed for the first call and then call id marked as retired so further CDRs with same call id are ignored. Retired call ids are kept in memory and cleared out so there's a good chance retired id not to be present when 2nd CDR processed. Solution would be to prevent insertion (in case we can say for sure first CDR computed is the answered call) or update existing one | Fix | CDR |
SIPX-438 | REST API bug when trying to delete second line | Fixed an issue with REST API used to delete lines from phones. The API would delete the first line when the second line was specified. | Fix | API |
SIPX-458 | Yealink Firmware T49G has wrong Name | Fix for firmware for Yealink T49G is configured as T49.rom Upload renames this to VP49.rom Fix is tested with current Version of 16.04 and commited in PR | Fix | Yealink |
SIPX-464 | Yealink T49G missing config | Fixed an issue that caused the Yealink T49G to only hav half the count of settings that it should have. All Regex matches looks for yealinkPhoneSIPT49G BeanID is yealinkPhoneVP49G Change BeanID to "yealinkPhoneSIPT49G" solves this issue. | Fix | Yealink |
SIPX-477 | Polycom does not show Custom Caller ID | Fixed an issue with Custom CallerID plugin and Polycom phones. External Number is entered in Custom CallerID PlugIn with Displayname Polycom Phone shows "Unknown" as Display Text. This occures because the Polycom uses the following header order to get the name: P-Asserted-Identity, Remote-Party-ID, From Custom CallerID only changes the From Header. Polycom Config allows to change the order of headers Paramter (from Polycom UC Admin Guide v3/v4/v5): voIpProt.SIP.CID.sourcePreference Description: Source of caller ID information. If Null, caller ID information comes from “P-Asserted-Identity, Remote-Party-ID, From”. For example, "From,P-Asserted-Identity, Remote-Party-ID" and "P-Asserted-Identity,From, Remote-Party-ID" are also valid. Added the parameter to Polycom config plugin with Polycom default value set. If someone use Customer CallerID he can change this to the first example to make it work | Fix | Polycom |
SIPX-479 | Live Attendant not updated in Mongo properly | Fixed an issue caused when a AA is defined as live AA and then disables the live AA. A new entry is added in MongoDB so registrar will look up routing information from there. When an existing live AA is disabled, MongoDB entry is removed and routing is done according to mappingrules.xml. In this case customer previously had 1900 configured as live AA, then disabled it. However it seems that in this version the mongo entry does not get cleaned up when doing this action and leaves inconsistent entries in mongo: { "_id" : "AttendantRule9", "ident" : "1900@domain.org", "uid" : false, "cnt" : "sip:1900@domain.org", "locations" : [], "vld" : true, "ent" : "attendantrule", "als" : [ { "id" : "1900", "cnt" : "<sip:1600@domain.org;sipx-noroute=Voicemail?expires=50>;q=0.933;sipx-ValidTime=\"88e:a8c:e2e:102c:13ce:15cc:196e:1b6c:1f0e:210c\"", "rln" : "userforward" }, { "id" : "9673", "cnt" : "sip:1900@domain.org", "rln" : "alias" } ] } (other ways for this bug to manifest is generating null contacts as in: "cnt" : "<sip:null@ctradu-ng.ezuce.ro;sipx-noroute=Voicemail;sipx-userforward=false?expires=0>;q=0.933",) Workaround: mongo use imdb db.entity.remove({"_id" : "AttendantRule9"}) Mind that the rule will get repopulated in Mongo when sending profiles to server | Fix | Config |
UC-3135 | Voicemail via Email - Wrong Portal | Fixed an issue with the new user portal such that when clicking the voicemail list button from within an email body while logged into openUC in the same browser session, the user is presented with the old unit portal instead of the default portal. The link in the email is below. This particular link is included in the "Full" email message from openUC. Here is the url: https://server.domain.org/service/home/~/?auth=co&id=128743&part=1.3 | Fix | UniteWeb |
UC-3453 | Firewall rules errors after restore | Fixed an issue with restore and restoring firewall rules. Steps to reproduce: 1.Create a config backup of openUC 14.10 2.Download it and restore it onto another 14.10 machine Result: Restore is completed successfully however in sipxconfig.log we can find these errors : "2014-12-17T10:13:32.024000Z":247:JAVA:ERR:primary.1410setup2.cristi.ezuce.ro:qtp249691566-21:00000000:FirewallManagerImpl:"Cannot find default firewall rule for address type adminApiAuth" "2014-12-17T10:13:32.025000Z":248:JAVA:ERR:primary.1410setup2.cristi.ezuce.ro:qtp249691566-21:00000000:FirewallManagerImpl:"Cannot find default firewall rule for address type imbotRestApi" | Fix | Config |
UC-3760 | Group Firmware Weight Incorrect | Fixed an issue where setting the group firmware does not follow tradition of weighted groups. Instead the group with the lightest weight has priority instead of the heaviest (i.e. the group higher in the list takes priority instead of the lower). | Fix | Config |
UC-3837 | Invalid entry in /etc/hosts | Fix for an invalid /etc/hosts entry is generated on 15.10 as shown on line two below .. : [root@uc ~]# cat /etc/hosts 192.168.10.15 uc.ezuce.mattkeys.net uc $(ips[$(host_servers).ezuce.mattkeys.net][1]) $(host_servers).ezuce.mattkeys.net $(host_servers) # sipXcom cluster 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 | Fix | Config |
UC-3866 | snmptrapd.conf is missing the webui snmp community string change | Fixed an issue with snmp configuration where as the snmptrapd.conf file is not being updated with changes to the snmp community string. | Fix | Config |
UC-3896 | Webui rejects .agency domain as invalid | Fixed an issue with Admin Portal email address validation that didn't allow administrators to enter domain names with a suffix larger than 3 characters. Customer was trying to set "user@company.agency" as the primary email address in unified messaging. This returns an error " Invalid email format for null. Format isuser@hostname. ", however this is a valid address. | Fix | Config |
UC-3934 | System Timezone changes not reflected under CDR page | Fixed an issue where if the Administrator changed the system timezone the changes were not reflected in the CDR page. Steps to reproduce : 1. Under System -> Date and Time -> Time Zone select a new Timezone from the dropdown list and hit Apply. 2. Implemented changes should be reflected under Call Detail Records page for all tabs : Active, Historic, Reports timezones. 3. Actual result : Whatever timezone was previously selected will still be present. Workaround: Log out of the system and then re-login. | Fix | CDR |
UC-3938 | Searching for external numbers in the call history often fails | Fixed an issue where searching for external incoming calls in the CDR doesn't return reliable results. The calls are listed in the CDRs, but it is sometimes not possible to search for specific numbers - the search either returns the correct results, or no results at all. The search results are consistent; when one number is entered into the search, it always appears while another number is never found even though it is also listed in the call history. | Fix | CDR |
UC-3939 | IVR needs to be at DEBUG verbosity to remain stable | Fixed an issue caused by the log4j third party library. Running IVR in debug masked the timing issue. Updated log4j to newer release to solve problem. | Fix | Config |
UC-3967 | E911 plugin breaks replication | Fixed an issue caused by E911 feature that caused sipXrls to not work because credentials were missing. | Fix | Config |
UW-252 | Safari: voicemails -> player is not loaded | Fixed an issue with the Unite Web Portal when running with Safari on Mac osX, the player is loaded, but it does not play the message. This is because Safari does not know how to play WAV files. If voicemail is set to WAV and user is from Safari the option to download the WAV will be displayed. | Fix | UniteWeb |
UW-318 | Internal linking | Fixed an issue with email sent to users because there was no direct link to access for instance Voicemail page in user portal Now the show message inbok link will directly jump to voicemail page in user portal. | Fix | UniteWeb |
UW-327 | UniteWeb User Save does indicate it's been clicked | Fixed an issue such that the save button at the bottom of the any page does not "gray out" after a change has been submitted. NO indication is given to the user that a change is made. The Save Button remains visibly colorful with no indication that the change was saved. | Fix | UniteWeb |
Jitsi | Jitsi support not installed by default | Jitsi provisioning support is not installed by default from ISO or if installing with 'yum install sipxcom'. To install login as root and run 'yum install sipxjitsi' | Known Issue | Jitsi |