sipXecs 14.10

sipXecs 14.10 Release Notes

Overview

This section describes the sipXecs 14.10 software release, including:

  • Software Enhancements
  • Application, Hardware, and Documentation Requirements
  • Installation & Upgrade Instructions
  • Two attachments (PDF files) containing Fixes for internally-reported issues and for customer-reported issues

Software Release History

Starting with the April 2014 release, sipXecs will have a regular release cycle for new features and a new versioning schema which incorporates the Year and Month of release.

  • December release for 2014 is 14.10 (late due to 14.04.3 critical fixes)
  • April release for 2015 is 15.04

Release Level History

  • 14.04   - April 30, 2014
  • 14.04.1 - June 01, 2014
  • 14.04.2 - July 11, 2014
  • 14.04.3 - October 24, 2014
  • 14.10 - December 25, 2014

System Requirements

For a reasonably performing system we recommend the following configuration.

  • Minimum hardware requirements
    • Pentium 4 or Xeon processor @ 2.0 GHz Core 64bit or higher
    • Minimum 4 GB of RAM with sufficient swap space
    • 80 GB disk (75 users depending on usage patterns)
  • Operating System:
  • Devices:
    • Phones
      • Polycom VVX Devices with firmware 4.1.7 are recommended for new installations
      • Polycom SoundPoint Devices with firmware 4.0.7 are also recommended.
    • Gateways
      • AudioCodes Gateways are recommended for PSTN connectivity
    • SBCs
      • Sangoma, AudioCodes, Acme Packet and Ingate SBC's are recommended for SIP Trunking and Remote Worker connectivity (commonly referred to as sipXbridge and MediaRelay services respectively).
      • NOTE: The sipXecs - "Use built-in SIP Trunk SBC" found in Gateway Details for use with Trunking or Remote Worker solutions works out to about 50 concurrent sessions. sipXbridge does also not work with all ITSPs.

Documentation

Installation and Upgrade Notes

  • Installation note

After sipXecs 14.10 is downloaded and installed,the clusterId read tag is unique (same as locationId). Follow these steps to propagate the new read tags to the MongoDB replica set:

  1. In the sipXecs Admin GUI, click System>Database.
  2. Click the Add query metadata button.
  3. To verify that the MongoDB replica contains the unique read tags, run in the command line:
mongo rs.config();
  • Special MongoDB note
ulimit –a
-f (file size): unlimited
-t (cpu time): unlimited
-v (virtual memory): unlimited
-n (open files): 64000
-m (memory size): unlimited
-u (processes/threads): 32000

If you have a patch installed to your system a new patch may be required. Please contact sa@ezuce.com if think you may have a patch applied as that may be replaced during the update.

Installing from ISO image

Download sipXecs ISO

Install sipXecs

  • Boot from the DVD created with the sipXecs ISO image.
  • Press Enter at the boot screen below to begin the openUC installation.
  • Select Manual Configuration under Enable IPv4 support and select OK.
  • Set a static IPv4 address with the corresponding networking information and click OK.
  • In certain situations an warning of the use of indicated storage devices will be displayed.
  • Select the language to be used during the installation.
  • Select the keyboard layout to be used.
  • Select the timezone to be used.
  • Set a root password.
  • Login to the system as root with the password you provided earlier and continue on to the Configure of openUC.

Installing from Repository

sipXecs can be installed using the below procedure

  • Download and install CentOS 6.x minimal ISO
  • Run the following command:
yum update && reboot
  • Run the following commands to retrieve and run the sipXecs repo:
yum install wget

cd /etc/yum.repos.d

wget http://download.sipfoundry.org/pub/sipXecs/14.10/sipxecs-14.10.0-centos.repo
yum clean all
yum install sipxecs
sipxecs-setup
 

Upgrade from Previous Versions

Upgrade from sipXecs 4.6


Upgrade from sipXecs 4.6 is based on the next procedure:

  • Edit /etc/yum.repos.d/sipxecs.repo with your favorite text editor pointing to the correct download location of the new 14.04 version:

 

[sipxecs]
............
............

 

  • Perform a backup of the entire system
  • Download backup from the server
  • SSH to the server and login as root (if you don't have root access to the server, login with your non-root account and enter sudo -s)
  • Run the command yum clean all. When that completes, run the command yum update. As long as your sipXecs instance has access to the Internet, your system should download and upgrade all necessary updates.

Special Note for sipXecs 4.6 versions older than Update 9

The pymongo package in our sipXecs repository is outdated and should be replaced with the differently named but newer version python-pymongo package from the EPEL repository. This allows pymongo to upgrade along with other OS packages from the upstream provider (EPEL) rather than sipXecs repository.


Not all Updates previous to Update 8 have pymongo installed. If upon running yum update you encounter a message similar to:

 

Error: Package: pymongo-2.4.2-1.el6.x86_64 (@openuc)
Requires: python-bson = 2.4.2-1.el6
Removing: python-bson-2.4.2-1.el6.x86_64 (@openuc)
python-bson = 2.4.2-1.el6
Updated By: python-bson-2.5.2-3.el6.x86_64 (epel)
python-bson = 2.5.2-3.el6
Available: python-bson-2.1.1-1.el6.x86_64 (epel)
python-bson = 2.1.1-1.el6
You could try using --skip-broken to work around the problem

 

 

DO NOT run yum update --skip-broken to proceed

 

As mentioned, the pymongo package in our openUC repository is outdated and should be replaced with the differently named but newer version python-pymongo package from the EPEL repository. This allows pymongo to upgrade along with other OS packages from the upstream provider (EPEL) rather than eZuce openUC repository.To do so, run the following commands:

Remove Outdated pymongo package

 

rpm -e --nodeps pymongo

 

Install newer python-pymongo package

 

yum install python-pymongo

 

Clear yum cache, update, and reboot

 

yum clean all
yum update -y
reboot

 

  • Run service sipxecs status to check if all services started correctly after upgrade
  • Login to Admin GUI, click on System -> Servers, Select all servers and click 'Send Profiles' button

 

Note:

When upgrading sipXecs from 4.6 Update 11 or 14.4.3 to 14.10 follow these steps to ensure the SEC service is correctly running:

  • 1. Upgrade from 4.6 Update 11 or 14.4.3 to 14.10.
  • 2. After the upgrade is complete, perform the usual restart.
  • 3. Once possible, connect via CLI and monitor processes using top. Notice that the SEC process is using a lot of CPU memory.
  • 4. Perform another restart OR restart only the Sipxlogwatcher service.

Issues

Enhancements:

JIRA IDJIRA nameRN Content
UC-1565sipx-servtestThe script sipx-servtest was removed in version 4.6. This script has been invaluable at sites where remote monitoring and notification are needed. Recommend restoring this script to production code so it can be maintained.
This was re-added with the re-add of sipXtools.
UC-2805Allow Reach Supervisor to log an agent outEnhancement to allow a Reach Supervisor to forcibly log an agent off. In 14.04 and earlier the agent manager widget and supervisor could change an agents status (release or idle) but they could not currently forcefully log the agent off.

A new option was added under the drop down that includes the release codes and the available option. This new item called "log off". When the supervisor selects this new option, Reach will forcefully log the agent off and the agent will receive a message indicating that in their agent portal (e.g. "You have been logged off by a supervisor")
UC-2904Adding personal language option to VM or conference menusEnhancement to add a personal language option for VoiceMail and Conference:
- VoiceMail the new option will be: User / Unified Message / Language. This will allow the user to set it's personal voicemail prompts language.
- Conference the new option will be: Conference / Configuration / Language. This option will specify the language used by the conference prompts menu.
UC-2950Changing user voicemail greeting is not reflected in sipxconfig-audit.log or sipxconfig.log.Enhancement to have any altered configuration item within the webui annotated at least with a timestamp and username in sipxconfig-audit.log is handled in new Audit feature.
UC-2959REST: Personal Attendant languagesEnhancement to have a new REST call for the personal attendant settings to contain a list of all server-defined languages.
Previously the JSON REST call for personal attendant settings produced the key "language" with the value "null" for default.

Request URL: http://openuc.ezuce.com/sipxconfig/rest/my/voicemail/attendant
Accept: application/json
UC-298Voicemail to email template should allow custom url that can direct to a user mailboxThe voicemail to email template now allows the administrator to include the user's inbox extension as part of the URL. For more information, see http://wiki.sipfoundry.org/display/sipXecs/Voicemail-Email+Custom+Notifications
UC-3008SAA - create SIP application and integration with configAdministrators can now enable the Shared Appearance Agent (SAA) service on one node. This service requires at least one network queue in the cluster.
To enable the SAA services follow these steps:
1. From the main menu, click System>Servers.
2. Under Servers and Roles, click Telephony services.
3. Select the check box corresponding to the Shared Appearance Agent service.
4. If Network Queue and Network Queue DB weren't previously enabled, this will be indicated as a dependency with a red highlight on the service. Enable them by selecting their corresponding check boxes.
UW-101Group 'My Profile' fields in a more logical wayEnhancement to group My Profile fields in a more logical fashion.
UW-124Groups should remain as they were leftEnhancement to have user groups in contacts remain open if left open and closed if left closed upon navigating away from Contacts.
UW-131Unable to search a contact by phone numberEnhancement to allow a user to search for a user based on their extension. In Unite Search bar enter an extension now to lookup a user.
UW-135Missing Personal Attendant settingsEnhancement to add the following missing functionality from the old user portal:
1. Override language - Check this box to override the default Auto-Attendant language chosen by the administrator.
2. Change language - The language used by the Auto-Attendant if the Override field is selected above.
3. Operator - Extension or SIP URI the caller is transferred to after pressing 0.
4. Play default voicemail option - If enabled default prompt 'When you are finished, press 1 for more options. To reach the operator. dial 0 at any time.' is played.
UW-143Roster does not get dynamically refreshed after an user add/removeEnhancement to allow roster to be dynamically refreshed in Unite and User Portal.
UW-148Ability to move speed-dial order from UW like in old portalEnhancement to allow the user to move speed dials up and down in GUI.
UW-151Move bottom bar functionality to top barEnhancement to move the bottom bar (menu, search, dialpad) to the top bar (profile bar) to be more inline with other mobile and desktop applications.
UW-99Add Editable Subject for a Conference RecordEnhancement to include a subject to a conference record;
With Old User Portal the user is able to edit the Conference Subject (this might give the option to add some info about the conference / participants - currently the user does not receive any info about the conference,this way, at least, he could add them)
With Unite / Unite Lite this is not possible.
XX-10097sipXevent (WebSocket) should listen for voicemail eventsEnhancement so that voicemail events are now generated by the IVR component, in order to avoid system pooling that clients have to perform in order to get real-time information . Now, the messages are sent through Wbsockets using the JSON standard.
XX-10099sipXevent (WebSocket) should listen for conference eventsEnhancement to allow sipXevent (WebSocket) to listen for conference events.
XX-10779Allow sipXcallqueue calls to agents to follow call forwardingEnhancement for a new feature for CallQueue that allows a call rining an agent to follow the user's call forwarding settings. When enabled, administrators can enable the feature by selecting the new Follow Call Forwarding option.
1. Click System>Servers in the main menu.
2. Under the Servers and Roles tab click Telephony Services.
3. Check the check box corresponding to the Call Queue (beta) feature and click Apply.
4. Click Features>Call Queue. Under the Call Queue tab, click Agents.
5. Click Add Agent.
6. Select the Follow Call Forwarding and other required details and click Apply.
XX-10914Port merge-logs and sipx-trace to 14.10Enhancement to bring back Merge-logs, sipx-trace and associated tools to 14.10.
XX-11083System Alarms for DNS Lookup ProblemsEnhancement to create system alarms for DNS Lookup Problems.

Alarm information should contain:
Service Trying to do Lookup
Date / Time
Type of failure (DNS server unavailable, no host / srv found, etc.)
What was trying to be looked up.
XX-11084Be able to customize DNS Views from UIEnhancement to make DNS more configurable. DNS Views were added in update 8, but you could not customize the values w/o java programming .
XX-11115Update Freeswitch to current stable releaseThe Freeswitch server has been upgraded to version 1.4.6. Previously, the supported version was 1.0.7 plus some additional patches
XX-11116Upgrade openfire and hazelcastThe Openfire server has been upgraded to version 3.9.3. Previously, the supported version was 1.2.0.
Also, Hazelcast was upgraded to version 3.1.5. Previously, the supported version was 2.5.0.
XX-11117Move openfire configuration to mongodbEnhancement to the Openfire Mongo Sync plugin, until now an eZuce proprietary feature, has been moved to the open source project sipXecs. This plugin allows Openfire to collect data directly from the underlying MongoDB database.
XX-11118Spring framework updateThe Spring Framework has been upgraded as follows:
-upgraded spring core, beans, context, AOP, expression to latest release 4.0.3,
-upgrad dspring security to version 3.2,
-added spring boot dependencies,
-upgraded Jackson to 2.3.3,
-upgraded Velocity to 1.7,
-added websocket dependencies,
-u pgraded Jetty for websocket support,
Notes:
-spring orm and jdbc remain at 3.1.4 due to major API change in version 4,
-spring web and javax.servlet remains at 3.1.4 due to Jetty 5 limitation to servlet spec 2.x
XX-11146Upgrade Java to 1.7Java has been updated to version 7 and servlet to version 3. The new versions allows you to create modern client web modules for sipXecs. Previously, the system used Java 6. Note that the Jetty dep 5.1.4 and servlet 2.0 have been kept for other projects that use Jetty container.
XX-11148Upgrade Jetty to latest (9.1.5)The Jetty server has been upgraded to version 9.1.5. In support of this upgrade, the following changes have been performed:
-upgraded jasper-compiler and the jasper-runtime to 5.5.23
-upgraded slf4j to 1.7.7
-updated sipxconfig and cmcprov to use the new Jetty version
-upgraded servlet 2.x spec to servlet 3.1
-update sipxconfig-jetty according to new jetty
-update sipxconfig startup script -fix precommit
Note that the existing Jetty dep and servlet 2.0 have been kept for other projects that use Jetty container.
Previously, the system used Jetty 5.1.4.
XX-11166Port Phones management API to RESTSee the API Guide for more info
XX-11171Expose Phone Model REST APISee the API Guide for more info
XX-11174Expose Server, Bundle, Feature & Jobs management via REST APISee the API Guide for more info
XX-11175Expose REST API for Registration managementSee the API Guide for more info
XX-11176Expose IVR Service REST API managementSee the API Guide for more info
XX-11193Expose Park Orbits REST APISee the API Guide for more info
XX-11199Expose REST API for Page groups managementSee the API Guide for more info
XX-11202Expose CDR, MyBuddy, Proxy, Registrar, SAA, REST server REST API services managementSee the API Guide for more info
XX-11204Expose DNS and MWI management REST APISee the API Guide for more info
XX-11205Upgrade hibernate from 3.2.7 to 3.6.10The Hibernate FLush strategy has been upgraded from 3.2.7 to 3.6.10. This upgrade has been performed to expose postFlush event handling mechanism (org.hibernate.EmptyInterceptor).
XX-11206Expose MoH management REST API{{For info see the API Guide}}
XX-11218Integrate Yealink pluginAdd Yealink plugin from work created by siplabs.ru.

Adjust plugin for e911 work that may cause issues with it.

There are still a number of issues with plugin identified by QA. See linked issues in Jira
XX-11221Be able to map LDAP item to Employee ID field.Administrators can now add information from LDAP to the existing Employee ID field, under the User>identification tab and LDAP / AD Configuration section.
XX-11222Create 3 new user record fieldsThree new fields named Custom1, Custom2 and Custom3 have been added to allow administrators to add any additional data about the user. The values are mapped to the LDAP fields and are kept in the userProfile MongoDB. Also, they can be exported and imported in the CSV format.
To view the fields, follow these steps:
- Click Users>Users on the main menu. Click on a user name. The new fields are under the Identification section.
or
-Click System>LDAP AP in the main menu. Under the Configuration section, the fields are displayed when a LDAP configuration is being set up.
XX-11228Expose Phone Group via REST APISee the API Guide for more info
XX-11231Expose Gateways via REST APISee the API Guide for more info
XX-11250Admin REST Api for Schedule (General, User, Group)See the API Guide for more info
XX-11255DialPlan REST APSee the API Guide for more info
XX-11265Proxy should normalize GRUU uri locallyFor higher performance, the sipXproxy now normalizes the Globally Routable User Agent URI (GRUU) requests by querying the Registration DB in the proxy. Previously, the sipXproxy evaluated forwarding rules which in turn routed all GRUU URI through the registrar.
XX-11294DNS advisor should know about RegionsA new parameter named Region has been for the DNS Advisor added to allow administrators to validate and view the DNS for any specific region. Note that the field is not displayed if the environment does not have any regions.
XX-11321Under Type drop-down menu options are not sorted alphabeticallyThe Type drop down under the History section of the System Audit page has been improved and now displays the options in alphabetical order, to help users improve productivity. To review the changes, click Diagnosis>System Audit>History and click the arrow next to the Type drop down.
XX-11329Remove Encrypted Communication serviceEnhancement to remove the Encrypted Communication service has become obsolete and has been removed from the user interface. Starting with 14.10, the Secure Shell (SSH) cryptographic network protocol is used to communicate between nodes.
XX-11347Features that should be enabled by default on Yealink phonesEnhancement to make the MWI (Meassage Wainting Indicator) and Call Waiting features are available by default on Yealink phone models.
XX-11434New 14.10 alarms needs to be moved in dedicated alarm log filesNew alarms are now logged in the /var/log/sipxpbx/sipxbridge-alarms.log. This ensures that new alarms are displayed int the log history, snmptrapd.log or sent through email.
XX-11511Add support for Polycom firmware 4.1.7, 4.1.8, 5.1.1, 5.1.2, 5.1.3, 5.2.0Add in device files, group firmware selection, device firmware selection and default firmware for auto provisioning.
XX-4830RedirectServer should not add Contact for voicemail to non-INVITE requestsMade an improvement to not add contact for voicemail to non-INVITE requests. This caused the system to generate a 501 Not implemented error message when a SIP request of the non-invite type was sent to a user that was not logged in the system. Now, the system correctly sends the 404 user not found error message. For example, sending an IM to a non-registered user would have been redirected to the IVR.
XX-8473FreeSWITCH parkingThe Parking service has been reimplemented in order to be integrated with FreeSwitch. All the previous features are still available. You can now configure the Parking service on multiple nodes.
XX-9535Request to track config changesEnhancement to allow the ability to track config changes on the system.Following info should be stored by the system & made available on a page with filtering capabilities:

- Date & time
- User
- IP Address
- Type of Process
- Process
- Value Before Process
- Value After Process

Process type can be
- Login / logout
- User config
- Device config
- Features config
- System config
- Diagnostics config
- License config

Filtering based on start & end dates, user, user group, type of process, process & IP address should be possible on this page.

This page will replace the Login History page already available in the system.

 

Fixes

UC-1563Proxy should discard short non-SIP messagesFixed an issue that caused the proxy to attempt to respond to non SIP-messages. Now, these non SIP messages sent by some devices as NAT keep-alive messages are ignored. Previously, the following error and error messages were generated by the proxy:
2013-09-04T17:54:27.346293Z:3034745:INCOMING:INFO:sipx01.rdu2.redhat.com:SipClientUdp-10:7fb2c8ffe700:SipXProxy:Read SIP message:
----Local Host:18.11.100.245---- Port: 5060----
----Remote Host:18.36.44.232---- Port: 5060----
jaK
2013-09-04T17:54:27.346551Z:3034746:SIP:WARNING:sipx01.rdu2.client.com:SipClientUdp-10:7fb2c8ffe700:SipXProxy:SipMessage::getResponseSendAddress No VIA address, using From address

2013-09-04T17:54:27.346598Z:3034747:SIP:ERR:sipx01.rdu2.client.com:SipClientUdp-10:7fb2c8ffe700:SipXProxy:SipMessage::convertProtocolStringToEnum unrecognized protocol:
2013-09-04T17:54:27.346624Z:3034748:SIP:ERR:sipx01.rdu2.client.com:SipClientUdp-10:7fb2c8ffe700:SipXProxy:SipTransaction::doFirstSend protocol not explicitly set - using UDP
2013-09-04T17:54:27.346734Z:3034749:OUTGOING:INFO:sipx01.rdu2.client.com:SipClientUdp-10:7fb2c8ffe700:SipXProxy:No send address
SIP/2.0 484 Address Incomplete
From:
To: ;tag=VWYG_S
Call-Id:
Warning: 399 10.11.634.245 \"Missing one or more of To, From, or request URI\"
Content-Type: message/sipfrag
Server: sipXecs/4.6.0 sipXecs/sipXproxy (Linux)
Content-Length: 64
UC-1743Investigate DST updates in schedules, voicemails, cdrs, etc.AA/IVR schedules have not updated with the DST change. Phone and server times seem to be correct.
UC-1753MyBuddy not working for newly created groupsFixed an issue that caused My Buddy to be non-responsive for newly created IM groups. Now, when users type "Help" in the chat window with My Buddy, it correctly replies with the message "Commands: call, find, missed, listen, pickup, conference, who, mute, unmute, disconnect, lock, unlock or any short forms"
UC-1957Repeated add/remove of an user to the same group, requires an openfire restart to workFixed an issue with the Openfire system that prevented users that were repeatedly added and removed from a group in OpenUC to see other users in the user group, and also prevented other users from viewing the user. Now, the user can not just log in his IM client, but he can correctly see other users in the group and they can view the user.
UC-2007DNS Advisor reports incorrect resultsFixed an issue that caused the DNS Advisor to generate incorrect results.
UC-2097Send profiles required for user changesFixed an issue that caused a send profiles to be performed to pick up user changes.

Problem setup:
Created schedule Weekend from 9:00 AM to 6:00 PM, replicated OK in mongo (mind the sipx-ValidTime)
<sip:4455@ezuce.ro;sipx-noroute=Voicemail?expires=30>;q=0.9;sipx-ValidTime="2364:2580:1a4:3c0"

What was occuring:
Changed schedule, it didn't trigger user regeneration in mongo so sipx-ValidTime in contact remained the same. Workaround is to go to call forwarding page and hit apply in case schedule changed (no need for sending profiles)
<sip:4455@ezuce.ro;sipx-noroute=Voicemail?expires=30>;q=0.9;sipx-ValidTime="2634:2670:474:4b0"
UC-2306Delay when trying to place calls after server reboot/shutdown in a partitioned regionFixed an issue that caused the system to place calls with a 5-10 seconds delay. This occurred in a HA environment, and using a partition that has been previously restarted. Now, the delay decreased from almost 10 to maximum 2-3 seconds for the first call and no delay for the rest of the calls.
UC-2355500 Error returned ,with no other explanation, when configuring databases (intermitent)Fixed an issue that was displayed while a database operation was in progress that showed a 500 Error is returned with no other explanation of what went wrong.

This was happening when removing databases, clicking Add to Config, or Start buttons.
UC-2362Calls downtime in a partitioned region after a 30 minutes server idle timeFixed an issue where after a region was partitioned from the global system for 30 minutes calls between phones in the partitioned region would be delayed for 5 minutes. Reverted a mongo driver change to resolve the problem. There is still a delay of 10 to 13 seconds while the driver tries to contact the global database. Recommend waiting on use of Regions until Mongo and Mongo drivers are updated to Mongo 4.6.
UC-2404Music on Hold rule present twice in mappingrules.xmlFixed an issue where Music on Hold rule was present twice in /etc/sipxpbx/mappingrules.xml
UC-2484Stunnel service prevents server profile pushFixed an issue where if an Administrator enabled Encrypted Communication (System -> Servers -> Core Services -> Encrypted Communication) it prevented the successful server profile push to other nodes in the cluster.
Removed Encrypted Communication service as its use is no longer required.
UC-2755MWI service losses Mongo master resulting in apparent message queue overflowFixed an issue where the MWI service claimed that there was "no master found" for MongoDB, the MWI service crashed, refused connections from the proxy and never attempted to reconnect to MongoDB. The proxy would then continue to pile up SUBSCRIBE messages destined for the MWI service. sipXproxy's internal queues would eventually overflow and sipXproxy started taking longer than 1 minute to process any inbound or outbound calls. Restarting the servers resolved the issue.

Resolution is for MWI service to more gracefully handle MongoDB outages by issuing a 500 Internal Server Error when there is a MongoDB issue, and try to reconnect in the event of being disconnected from MongoDB
UC-2796Different e911 locations in UI and mongo for a phone coming from a deleted phone groupFixed an issue where that if in the Admin GUI the phone location value was set correctly by a group, if that group was deleted the phone group location was retained for the Polycom phone.
UC-2799Reach reports exported to Excel have additional columns and rowsFixed an issue with the exported Reach report to Excel format. There were a lot of extra columns and the header line is in the exported file multiple times. We export this now in "raw" format since this will likely be used to create reports and/or source the data into a DB.
UC-2842Multi-Level Admin (MLA): some tabs are not disabledFixed an issue with Mult-Level Admin such that when an admin user belonging to a role with ZERO permissions logs in, he could still see 3 tabs he shouldn't: System-->Regions, Database, and SSS.
UC-2845proxy crashes on invite using tel:schemeFixed an issue with sipXproxy so that if it receives an INVITE using tel:scheme it won't crash.
The fix will:
1. On receipt of a new request, the transport layer detects whether any of the R-URI, From-URI and To-URI is in tel-uri format. This now gets converted to a sip-uri assuming that the local domain is known.
2. Transport layer will add a new request property to the request with tel-uri headers. FROM-TEL-URI and TO-TEL-URI respectively.
3. When responses are received, Transaction::handleOutgoing will check if the transaction request has any of these parameters and rewrite the sip-uri to its tel-uri form.
UC-2876After user deletion,his folder in mediaserver/data is not removed impacting new users with the same extensionFixed an issue where if a user is successfully removed from GUI his folder from mediaserver/data/mailstore did not get deleted.
UC-2921With regions, phones lose registrations for a short time intermittentlyFixed an issue with regional server where the phones would lose registration for a very short time at random times.
The Polycom phone display will show the line is not registered, but the line actually just looses the registration for a very short time. It just takes the Polycom longer to refresh.
Note: Recommend setting Polycom phones to TCP signaling and shorten registration interval to 300 seconds to shorten the Polycom refresh.
UC-2999SFTP purge old backups is not executedFixed an issue where SFTP backups were not purged as new backups were added (according to the number of backups to be retained).
UC-3049Dial-By-URI can bypass authentication rulesFixed an issue where a phone with its outbound proxy pointed at sipXecs could bypass authentication rules when dialing with a SIP URI.
UC-3066Linksys ATA: e911/location setting not foundFixed an issue that caused replication to fail and sipxconfig would not start if a system had Linksys ATA phones defined.
UC-3117Forwarded voicemails cannot be listen in old portalFix an issue where a forwarded voicemail with comment the old user portal would play only the comment and not the entire message. This was due to the content length that is not correctly calculated as sum of comment length + original voicemail length.
UC-3177Dial plan for handling blind transfers from FS incorrectFix to freeswitch dial plan to properly handle blind transfers coming from freeswitch. Related to XX-10900
UC-3178Wrongly raised alarm in nodes without mongoFixed an issue that caused a MONGO_MEMBER_DOWN alarm if a snapshot was taken from a node that does not have postgres.
UC-3253Automatically save lowercase no matter if in LDAP is with upercase letters or notFixed an issue caused by customers using mixed case in Active Directory for usernames. For auth purposes in openUC we should only store auth account name as lower case.
UC-3300sipX can get into an infinite keep-alive loopFix for sipXtackLib sends back a PONG if any length form of keep-alive packets inluding sending a PONG when it receives a PONG. This would incorrectly result to an infinite PONG-PONG hand shake. RFC 5626 specification below corrects this behavior by differentiating between a PING (crlf/crlf) and a PONG (crlf)

3.5.1. CRLF Keep-Alive Technique

This approach can only be used with connection-oriented transports
such as TCP or SCTP. The client periodically sends a double-CRLF
(the "ping") then waits to receive a single CRLF (the "pong"). If
the client does not receive a "pong" within an appropriate amount of
time, it considers the flow failed.

Note: Sending a CRLF over a connection-oriented transport is
backwards compatible (because of requirements in Section 7.5 of
[RFC3261]), but only implementations which support this
specification will respond to a "ping" with a "pong".
UC-33114.4 standard greeting migrated twice, out of office greeting not migratedFixed an issue when migrating from 4.4 to later versions the migrate logic uploaded standard.wav twice and out of office not at all.
UC-3312SSLv3 POODLE vulnerability mitigationAddress all instances of where SSLv3 was utilized and disable SSLv3 to mitigate POODLE vulnerability.
UC-3313Hotelling slows down importFixed an issue where if hotelling feature was enabled, then on EVERY user save a user directory generation was performed.
UC-3324When named is down, incoming trasactions are stuck in 100 tryingFixed an issue caused by shutting down named on a node, then placing call through that proxy. The phone would get back 100 Trying from proxy then proxy cannot locate a registrar to send invite to. This would cause the transaction to hang there in Proxy queue.

Proxy should not send back 100 Trying in such case but a 408 Request Timeout error so phone would know to try another proxy in HA

(in 14.10 there are alarms for such failed lookups)

Upon failure of DNS lookups, recurseDnsChildren should start a timer that fire immediately to mimic a transaction timeout.
UC-432Remove port number from sample Bria provisioning URLIn the admin screen for a user account, Registrations tab contains this note : "Use http://servername:12000/cmcprov/login as a provisioning server for Bria 3.x softphone." This issue is to simply remove the reference to :1200 on this screen
UW-161Voicemail filenames with preceding zeros are truncatedFixed an issue with voicemails migrated from a 4.4 system that have preceding zeros in the filenames. These were getting truncated by the Unite Web application. This results in a file not found error.
UW-162Audio bar is not refreshed when deleting a VMFixed an issue that was caused by deleting a message while it is being played, the next message takes the place of the deleted one, but the audio bar is still playing

Steps to reproduce:
Click to play a voice message.
While the message is still playing, press the delete button.
UW-176User Password Change does not allow for all characters allowed by openUCFix to allow user password change in Settings to allow user to utilize symbols in password.

Input field should match what is allowed by openUC.
UW-26User should be able to use Unite & Unite Lite on a mobile device (tablet, smartphone, etc.)Fixes to minimize differences in interaction using the webchat between desktop, mobile and tablet browsers.
XX-10811openUC in a bad state after primary node rebootDHCP scenario:
1. openUC Primary reboots
2. /etc/resolv.conf is rewritten by DHCP
3. Mongo cannot resolve peers and cannot establish connections to other hosts in the cluster
4. Time passes and the configuration cannot be generated as Mongo is read only
5. CFEngine rerwrites /etc/resolv.conf with the openUC DNS servers
6. Mongo resolves peers and connects ok
* Screenshots attached with the results of this scenario

Static IP scenario
1. openUC Primary reboots
2. /etc/resolv.conf is rewritten by the network scripts with the DNS from /etc/sysconfig/network-scripts/ifcfg-eth0
(the DNS in ifcfg-eth0 is the one used to setup the box so that openUC can be installed)

* This has a lower chance of happening than the first one

These scenarios happened to both Customers, QA and Dev and they were a pain to debug.
Both scenarios are the result of the network interface config not being managed by openUC.
The proposed fixes were:
1. Add PEERDNS=no in /etc/sysconfig/network-scripts/ifcfg-eth0, which will prevent rewriting /etc/resolv.conf by the network scripts
2. Manage DNS servers in /etc/sysconfig/network-scripts/ifcfg-eth0

For the purpose of this description, /etc/sysconfig/network-scripts/ifcfg-eth0 = network interface where openUC listens and can be different from setup to setup.
Another thing that needs to be taken into consideration is that this is related to Un/Managed DNS and has to be enabled/disabled based on that

I used the PEERDNS approach during this time as a workaround ad worked as expected. My recommendation would be to take this approach.

-------------- Additional Clarification -------------------------------

If DNS is set to managed:
Ensure in ifcfg-ethX interfaces that peerdns=no and that nm_controlled=no
No DNS servers should be entered in ifcfg-ethX files
All DNS servers should be in /etc/resolv.conf
These settings should be verified before system services start... each time.

If DNS is set to unmanaged:
ifcfg-ethX interface files should not be changed
end user is free to put DNS entries into ifcfg-ethX files
the system should not modify /etc/resolv.conf
the system should not modify /etc/named.conf
the system should not modify any bind zone files in /var/named
XX-10834DST change did not trigger a "send profiles"Fix to help address reports that the DST change did not trigger a full rebuild of the mongo database and schedules were off by 1 hour.
We need to investigate why this happened.
Added some logging to code
XX-10877User ~~id~media (freeswitch) has exposed password in snapshotFixed an issue hat caused the Freeswith server to expose the password of the user media in the snapshot. Now, the password is no longer displayed in the sipX_profile.xml.
XX-10899OpenFire restarts on nearly every configuration changeFixed an issue that caused the Openfire server to restart each time the administrator performed changes to the configuration This issue caused the incoming calls to be rejected. Now, Openfire no longer automatically restarts when configurations are modified.
XX-10916When saving a phone onSave() is triggered twiceFix to address when saving a phone either on create or on edit, the method onSave() is called twice.
XX-10917When saving a phone which is part of a group or groups, there will be multiple calls to onSave()Fixed an issue that caused the system to send multiple requests to the onSave()event when administrators saved or edited a phone that was part of a group, or multiple groups. This issue prevented the Alarms->History page log any events. Now, the snmp trap is sent correctly and alarms over the email are sent accordingly.
XX-11082Internal error when accessing Licensing tab after Restore on a different domainFixed an issue that prevented the Licensing page from displaying the content and caused the system to generate an internal error. This issue occurred when the licence used by the system was incorrect. Now, a job status error is still generated, but the Licensing page is correctly displayed.
XX-11111Polycom SIP Servers transport settings not appliedFix to address SIP Server transport settings not being applied to configuration files.

Administrators can set transfer on a phone using three pages:
1. SIP Servers > Outbound proxy > transport
2. Line > Registration > Outbound proxy transport
3. Line >Registration > Primary/Second registration server > transport

However, it is recommended to use an outbound proxy only if administrators want to redirect SIP traffic through a server other than the registration server. You can set the outbound proxy globally on the phone and particularly on each line. The value set on the line will override the value set globally.
For example, for a phone with 4 lines and an outbound proxy set on the SIP server setting globally, but on line 4 there is a different outbound proxy, the first 3 lines will use the globally defined outbound proxy and the fourth line will use its own setting.
XX-11122Up and down arrows not working when adding new call forwarding entriesFixed an issue with the Unite User Portal that prevented the up and down arrows next to the options on the Call Forwarding tab from being displayed. Now, the arrows are correctly displayed and allow users to add entries for the call forwarding options and or to change their order.
XX-11125Phone Outbound Proxy does not override Line Outbound proxyFixed an issue where setting the value of the Server on the Phone>SIP server page for a Polycom phone or phone group, did not override the value of address for the Primary and Secondary Registration servers on the Line>Registration page. Now, the phone value always overrides the line value.
XX-11133Cannot access Conferencing page after deleting a server from clusterFixed an issue that prevented access to the conferencing page when in an HA environment the administrator deleted from the cluster a server that had a conference bridge.
XX-11141Scroll bar is missing in the Voicemails windowFixed an issue with the Unite User Portal that caused the Voicemails tab to be displayed without the scroll bar.
XX-11170FreeSwitch uses some CPU when idleFix for freeswitch performance problems. FreeSwich performance has been dramatically improved, as it now requires 1 to 2% of CPU usage when it is in idle mode and only Media Services are running. Previously, FreeSwitch required approximately 7% of CPU.
The assessment was performed on a virtual machine with a 3.4 GHz processor assigned with 2 cores with x1.7GHz and 3 GB of RAM.
XX-11182Default serial fork expiration and user call forwarding interfere with call queue/agent settingsFixed an issue with CallQueue so that the agent setup timers would work independent of system default serial fork expiration.

By default the openUC system will have SIP Proxy -> Default Serial Fork Expiration set to "20".
Also under Users -> Users -> User X -> Call forwarding value is set to 20

These settings will have an impact on how the call queue agent No Answer Delay Time and Max No Answer (count) UC-2055 , probably over other settings as well.
XX-11190Offline messages transmitted with every new loginFixed an issue that caused the IM client to send users off-line messages from another user, each time the user logs in and logs out the IM client. Now, the off-line message is only displayed only ince, when the user logs in the system.
XX-11192Users members of multiple groups can only see the first group in their contacts listFixed an issue where users members of multiple groups can only see the first group in their contacts list, if the administrator previously changed the user groups. This issue occurred in a HA environment with Pidgin and Unite2 clients running on Ubuntu.
XX-11196Setting a custom status no longer worksFixed an issue with the Open Fire service that prevented users from viewing custom messages set by another user in the Pidgin IM client.
XX-11197Changing User Group name several times in a row not visible until openfire restartFixed an issue with the Open Fire service that prevented the administrator from updating user group names in the IM client. Thi sissue has been fixed by implementing a mechanism for HA where only one node processes MongoDB events. Now,group name is succesfully changed in admin UI as well as in IM Client.
XX-11213Overwriting users table through Import ".csv" file damage mongoDBHA - 3 nodes cluster: primary, secondary, arbiter.
steps to reproduce:
1. Import "5000users.csv" file
all users will be created without any errors.
2. Import for the 2'nd time the same file . This should overwrite the users table.

Expected result:
overwriting the users table should be done without errors.

Actual result:
Mongo damaged, primary server and secondary become UNAVAILABLE.

ps:
tested for 1 node on 14.04 and 14.10
tested for HA in 14.04
this bug is reproduced only for HA in 14.10

Downer you can find the errors from sipxconfig.log:

[root@p151 ~]# tail -f /var/log/sipxpbx/sipxconfig.log
"2014-06-26T08:23:52.440000Z":747:JAVA:ERR:p151.dluca.ezuce.ro:qtp2090424299-26: 00000000:UserDecorator:"failed to retrieve user profile Read operation to server s152.dluca.ezuce.ro/10.5.0.152:27017 failed on database profiles; nested except ion is com.mongodb.MongoException$Network: Read operation to server s152.dluca.e zuce.ro/10.5.0.152:27017 failed on database profiles"

Thu Jul 10 14:20:35.598 [initandlisten] connection refused because too many open connections: 819

Snapshots attached for primary, secondary and arbiter.

workaround:
# nano /etc/security/limits.d/99-mongodb-nproc.conf
mongodb - nproc 655350
# service mongod restart
# service mongod status \\to find mongod <pid>
# cat /proc/<pid>/limits
XX-11225CPU_THRESHOLD_EXCEEDED Alarm - isn't generatedFixed an issue that prevented the system from generating the CPU_THRESHOLD_EXCEEDED when the CPU usage was higher than the one determined by the administrator. Now, the alarm is correctly generated in Alarms>History, the snmptrapd.log and it is sent by email.
XX-11226CPU_THRESHOLD_RECOVERED Alarm - isn't generatedFixed an issue that prevented the system from generating the CPU_THRESHOLD_RECOVERED when the CPU usage was higher than the one determined by the administrator. Now, the alarm is correctly generated in Alarms>History, the snmptrapd.log and it is sent by email.
XX-11230The proxy MUST remove the user-provided P-Preferred-Identity header from any message it forwards.The proxy now removes the user-provided P-Preferred-Identity header from any message it forwards.
XX-11232STUN binding requests interpreted by SIP transport as EOF readsSTUN (Session Traversal Utilities for NAT) binding requests are now treated by ports (port 5060 by default) as NOOPs. Previously they were processed as zero length reads and caused the SIP transport protocol to generate assertions if they the number of packets was higher than 20.
XX-11240Grandstream phones are unable to disable NAT TRAVERSAL featureFixed an issue that prevented administrators from disabling NAT traversal features for Grandstream phones.
XX-11252Extra LF in dhcpd.conf file causing restart problemsFixed an issue with the dhcpd.conf file that prevented the Dynamic Host Configuration Protocol (DHCP) server from running. This issue occurred because of an extra line feed in the file.
XX-11261DNS advisor - A records missingFixed an issue that caused the DNS Advisor to erroneously generate errors regarding missing A records, even though they were present in the default view.
XX-11296Remove Outbound Proxy Auto-fill from Polycom and Audiocodes PluginsFixed an issue that caused the system to auto fill the outbound proxy setting for Polycom and Audiocodes Plugins with the SIP domain. Now, the Outbound proxy transport field on the Line > Registration is blank by default.
XX-11302User cannot add comments to forwarded voicemail when mp3 usedFixed an issue that prevented users from adding comments to a forwarded voicemail when the system was set to MP3 encoding. Now, then message is correctly forwarded with both the mp3 file and the new message added by the user.
XX-11305Create SSL connector in Jetty for web socketA SSL connector and a firewall rule have been added to the Jetty HTTP server on port 8076 for web sockets. This has been implemented because we cannot proxy wss packets over httpd port 443 with the current version of apache httpd server.
XX-11308Changing avatar will cause a lot of log messages to be sentThe following changes have been performed to prevent the system from generating an unnecessary large number of log messages when users changed the avatar:
-re-enabled avatar operations log listener,
-removed unused caches,
-removed Delete Avatar job,
-removed MD5 verification of old and new avatar,
-used VCardEventDispatcher.dispatchVCardUpdated in VcardUpdateJob to clear caches then broadcast presence.
XX-11311Multiple groups of users can cause problems when EN / DIS IM servicesFixed an issue where multiple IM groups of users could cause problems with enabling or disabling IM services.

Steps to reproduce:
- Enable for each group all IM services and MyBuddy services
- Login via Pidgin with "200" and "201" users accounts
(expected results: users logged successfully, they can see both "MyGroup" and "MySndGroup" )
- For "MyGroup" go to Users->User Groups->Instant Messaging and uncheck / disable "Enable IM account" , "Add user group as IM group" and "Add MyBuddy to the IM group"
- For safety even if i'm not sure this is the correct practice, go to Pidgin and logout/login "200" and "201" users

Expected results: "MyGroup" should disappear from contact list
Actual results: "MyGroup" still present in contact list.

If is not reproducible with first try insist many times (2 times of enable/disable IM services)

Additional testing: Delete users 200 and 201 from MyGroup - after this practice the group will disappear from Pidgin

Workaround:
disable IM services for the second group also - both groups will not appear anymore in Pidgin list as expected
XX-11315removing regions left shardId != 0, registrations are lostFixed an issue that caused the Mongo registrardatabase to display two contacts with different expires for the same registration. This issue occurred in the Mongo registrar database when there was one registration for the same phone on two different regions, and consequently two different shard Ids. Now, the phone refreshes registration on the same shardId (0) in order not to lose registrations.
XX-11317Push-To-Talk and Paging Groups" page crashes upon editFixed an issue that caused the Push-To-Talk and Paging Groups section to generate a server related error when applying changes to Polycom phones.
To replicate this issue in your environment, follow these steps:
1. In the main menu, click Devices>Phones.
2. Click on a Polycom phone in the Phone column.
3. Click the Push-To-Talk and Paging Groups option under the Identification section.
4. Perform one or several changes on the page an d then click the Apply button. The following error was generated:
javax.servlet.ServletException: java.lang.IllegalStateException: Form too many keys
XX-11320Permission for retired feature still on the available list - System : SBC (Cisco Integration)The System : SBC (Cisco Integration) Read permission has been removed from the user interface of the administrator, as it is no longer supported.
To review the changes follow these steps:
1.Go to Users>Admin Roles
2.Click the Add new role button.
3.Under the Permission section, notice that the System : SBC (Cisco Integration)Read permission is no longer available under the Available column.
XX-11327Config does not start due to PolycomPhone null pointer exception when replicatingFixed an issue that caused the Phones page to fail and generate a Polycom Phone null pointer exception when performing the Send Profile action when the phone list contained a Polycom phone.
XX-11328Location delete fails with internal error if no conference role enabled on that locationFixed an issue that caused the system to generate internal error messages when users deleted a location that did not have an enabled conference role. Now no errors are generated and locations are succesfully deleted.
XX-11356Apache regular expressions break Grandstream config downloadThe regular expression "AliasMatch" parameters located in the /etc/httpd/conf.d/sipxconfig.conf path caused files that begin with "cfg" to return a "404 not found" error message when requested through HTTP from an OpenUC server. This issue has been fixed by replacing
AliasMatch /(.*).cfg "/var/sipxdata/configserver/phone/profile/tftproot/$1.cfg"
with
AliasMatch /.*cfg.* "/var/sipxdata/configserver/phone/profile/tftproot/$0" .
Also, two new matches were added:
AliasMatch /gs_config/.* "/var/sipxdata/configserver/phone/profile/tftproot/gs_config/$0"
AliasMatch /gs_phonebook/.* "/var/sipxdata/configserver/phone/profile/tftproot/gs_phonebook/$0"
XX-11359Import csv does not ignore empty vociemail pinThe Import CSV functionality no longer ignores empty fields when performing updates. If a value is missing, it does not updates the user properties and the value already defined in siXecs is displayed. For example, if a voice mail pin is empty in CSV, the pin is not updated after CSV import.
XX-11371Resource list (speed dials) not updated on extension removalFixed an issue affecting the SSS service that prevented the speed dial list from correctly updating when the administrator deleted a system extension that was part of a resource list (speed dials) of a user. Now, when a user extension, conference room, park extension, or others are deleted, the speed dial list correctly contains with up to date information.
XX-11374sipXcallqueue selects random FS Server in clusterFixed an issue that caused the sipXcallqueue server to select a random FreeSwitch instance in the cluster when a call queue is added to the system. Now, the call queue is automatically redirected to the local FreeSwitch.
XX-11395Sipxrecording running on server where it is not enabledFixed an issue that caused the sipxrecording process to start and use memory even though the process was stopped on the server. This issue occurred when running a sipp subscribe load test on one server part of a three nodes cluster.Now, the sipxrecording process only runs on the server where it's enabled.
XX-11402Registrar should preserve callgroup param in contactsWhen the the HTTP INVITE request contains the parameter named "callgroup" set to "user", the registrar adds it to every contact returned in a 302.
XX-11404sipXconfig should add hunt group extension as a param to all its contactFixed an issue that caused the system to store hunt groups in the IM database as aliases. Now, the system correctly stores hunt group extensions to the contact URI as a parameter using a new parameter called "callgroup".
For example, the aliases previously existed in the MongoDB as:
{ "id" : "300", "cnt" : "<sip:206@dev-ezuce.ro;sipx-noroute=Voicemail?expires=30>;q=0.95", "rln" : "userforward" },
{ "id" : "300", "cnt" : "<sip:207@dev-ezuce.ro;sipx-noroute=Voicemail?expires=30>;q=0.95", "rln" : "userforward" }
Now, they are stored as:
{ "id" : "300", "cnt" : "<sip:206@dev-ezuce.ro;callgroup=300;sipx-noroute=Voicemail?expires=30>;q=0.95", "rln" : "userforward" },
{ "id" : "300", "cnt" : "<sip:207@dev-ezuce.ro;callgroup=300;sipx-noroute=Voicemail?expires=30>;q=0.95", "rln" : "userforward" }
XX-11405Unable to set TCP transport method for Bria MobileFixed an issue that prevented the system from sending the TCP transport method for Bria Mobile. This issue occurred because the transport setting set in UI by the administrator was not correctly translated from .ini to .xml.
XX-11425empty mp3 file created when voicemail set to mp3 and call hanged up before leaving messageFixed an issue that caused an exception to be generated when the mp3 file was set to Mp3 and the caller hanged up before leaving the message, thus preventing users from determining the call duration. The issue occurred because the system was not performing disk clean up, thus the temporary messages were still kept on the disk. Now, in case of an empty file, the duration is set to 0 instead of throwing exception. The system generated the following exception:
"2014-10-22T10:40:22.357000Z":6:sipXivr:ERR:openuctest.ezuce.ro:Thread-16:00000000:sipxivr:"SipXivr::run"
java.lang.RuntimeException: Message::getDuration Problem determining duration of /var/sipxdata/mediaserver/data/mailstore/201/deleted/temp_recording_5288578795931161421.mp3
at org.sipfoundry.commons.util.AudioUtil.extractMp3Duration(AudioUtil.java:48)
at org.sipfoundry.voicemail.mailbox.TempMessage.getDuration(TempMessage.java:89)
at org.sipfoundry.voicemail.Deposit.clearChannelUUID(Deposit.java:266)
at org.sipfoundry.voicemail.Deposit.runAction(Deposit.java:220)
at org.sipfoundry.voicemail.VoiceMail.voicemail(VoiceMail.java:53)
at org.sipfoundry.voicemail.VoiceMail.run(VoiceMail.java:42)
at org.sipfoundry.sipxivr.SipxIvrApp.run(SipxIvrApp.java:31)
at org.sipfoundry.sipxivr.SipXivr.runEslRequest(SipXivr.java:61)
at org.sipfoundry.sipxivr.eslrequest.EslRequestScopeRunnable.run(EslRequestScopeRunnable.java:24)
at java.lang.Thread.run(Thread.java:701)
Caused by: org.jaudiotagger.audio.exceptions.InvalidAudioFrameException: No audio header found withintemp_recording_5288578795931161421.mp3
at org.jaudiotagger.audio.mp3.MP3AudioHeader.<init>(MP3AudioHeader.java:138)
at org.jaudiotagger.audio.mp3.MP3File.<init>(MP3File.java:379)
at org.jaudiotagger.audio.mp3.MP3FileReader.read(MP3FileReader.java:39)
at org.jaudiotagger.audio.AudioFileIO.readFile(AudioFileIO.java:286)
at org.jaudiotagger.audio.AudioFileIO.read(AudioFileIO.java:150)
at org.sipfoundry.commons.util.AudioUtil.extractMp3Duration(AudioUtil.java:44
XX-11446Call does not roll to voicemailFixed an issue that prevented the IVR from sending a call to the voicemail when the callee rejected the call. Previously, the busy tone was sent to the caller.
To replicate this issue in your environment, follow these steps:
1. In OpenUC, perform a call from an internal line to another internal line.
2. Reject the call and notice that the busy tone is sent to the caller.
XX-11462Bring back old log rotate behavior where log file gets recreated every 5 secondsFixed an issue with the sipXportLib library that caused the snapshots to generate 0 bytes log files. Now, the log file is rotated on a daily basis and snapshots are correctly generated.
XX-11486Obsolete sipxevent (event notifier) service should be removedThe sipxevent (event notifier) service has been removed.
XX-11494Sec service using a lot of CPU after update to 14.10 until sipxlogwatcher restartWhen upgrading OpenUC from 4.6 Update 11 or 14.4.3 to 14.10 follow these steps to ensure the SEC service is correctly running:
1. Upgrade from 4.6 Update 11 or 14.4.3 to 14.10.
2. After the upgrade is complete, perform the usual restart.
3. Once possible, connect via CLI and monitor processes using top. Notice that the SEC process is using a lot of CPU memory.
4. Perform another restart OR restart only the Sipxlogwatcher service.
XX-11506OPTIONS messages not being sent to remote phonesFixed an issue that prevented the NatMaintainer service from sending OPTION type messages to remote phones.
XX-11514myBuddy does not connect after rebootThe real issue here is when imbot is enabled and system is rebooted, mybuddy won't connect, unless service sipximbot restart is executed after system is rebooted.
This is because JAVA DNS lookup does not return correctly on reboot. After a reasonable delay after reboot JAVA DNS lookup performs correctly. There is a DNS lookup cache in JVM, but on false results should expire by default in 10 seconds. However, it still does not perform correct lookup, because Java does not react when /etc/resolv.conf is updated with correct data: https://community.oracle.com/thread/1148912?start=0&tstart=0
XX-11530Upgrade to 14.10 fails due to old dependencyErlang version was changed and obsolete openacd package still use old Erlang version

Error: Package: openacd-2.0.0-67.60c2b.x86_64 (@sipXecs)
Requires: erlang = R15B
Removing: erlang-R15B-03.2.el6.x86_64 (@sipXecs)
erlang = R15B-03.2.el6
Updated By: erlang-R16B-03.9.el6.x86_64 (sipXecs)
erlang = R16B-03.9.el6

see https://www.sipfoundry.org/topic/14-10-update-errors-erlang/

Marked openacd as obsolete
XX-6791Park server leaving MOH sessions and parking slots "stuck"Fixed an issue that caused the Park server to drop from MOH sessions and the parking slots to become unresponsive for Polycom 550 and 650 phones. This issue has been fixed by porting the Park Server to the Free Switch server.
XX-9341SIPXConfig Phonebook/PagedPhonebook REST API returns IM Passwords of Other UsersFixed an issue that caused the /my/pagedphonebook and /my/phonebook URIs to generate the IM passwords of other users in the system when using the GET HTTP request. Now, passwords belonging to other users passwords are not returned any more.
XX-9355Voicemail is blank when forwarded a second timeWhen a voicemail is forwarded a second time using IVR, the final recipient receives a blank voicemail.
Call in -> User A VM - forward to -> User B VM - forward to - > User C VM
User C will have a blank VM. There is a wav file, but it has no sound. It is the same if you listen to it on the web interface or through a handset. If the recipient has their VM set to forward to their email, the attached wav file is 0 bytes. The email notice and the info in the users web gui show 47 seconds (in my example) so it seems to to think the message is there, but it is not.
XX-9394Remove bria port from FirewallBria provisioning port 12000 is not used any longer, remove this port from Firewall configuration.
XX-9504After Modifying the Scheduling Period,It is not getting updated to the Dial PlanFix for schedule periods not being updated in the dial plan after being modified.
Steps to reproduce
1.Add Scheduling say Testing for Everydays from 9 am to 5 pm in Dial Plan scheduling page
2.Enable the International Dial Plan with Scheduling Testing and Long distance Prefix =00 External no =Any digit
3.Between 9Am to 5pm Dial 009199862527263 from user(which International dialing Enabled)
4.The Call will Go through
5.Navigate to Scheduling page and modify the Testing scheduling Period from 9am to 6pm
6.wait for few minutes and Between 5.15pm to 6pm Dial 009199862527263 from user(which International dialing Enabled)

Expected Results
1.Either it should display warning message to restart of services when changes made in Scheduling page OR
2.Should get automatically updated to International Dial Plan and call should go through

Actual Results
1.There is no warning Message for Restart of Services
2.Not getting update automatically to International Dial Plan and call is not going through

Observation:
Each time after modifying the Scheduling Period and want to navigate to Particular Dial Plan(for that scheduling) Click on OK button and Restart the services and then the changes made in Scheduling page is updated to the this Dial Plan

 

Known Issues

UC-3306Bria MAC users cannot see other users's XMPP presence after openfire restart

If Bria for Mac is used with XMPP enabled users cannot see other users's XMPP presence after openfire restart

The following entry can be seen in openfire db, if dropping this record and restarting openfire issue gets solved.

UC-3379Document that SAA works only on TCP w/ phones registered over TCPThe Shared Appearance Agent (SAA) service has the following limitations:
- listens only on TCP;
- requires that all phones that have shared lines to be registered over TCP.
UC-3420Retrieving a shared line from a held call stops rendering for both participantsKnown issue with odd hold handling with Polycom phones in 5.1.1 and 5.2.0 firmware.

Polycom firmware 5.1.1:

Setup:
201 and 202 shared lines
phone 1 : 201
phone 2: 201 and 202
phone 3 : 202 (3 lineKeys)

1. Call established between 201 (phone1) and 202 (phone3)
2. Press hold on both phone1 and phone2; on phone2 the lines are shown as being able to be picked up (rendering)
3. Resume call from 202 phone3, on phone2 the lines are both shown as busy, although 201 on phone1 is still holding the call

Polycom firmware 5.2.0:

a) 201 calls 202
b) 202 holds the call then retrieves it
c) 202 holds again the call
d) 201 holds the call also
e) 202 retrieves the call : both shown as busy although 201 is still holding the call
Leave the call ongoing:
after 270 seconds (subscribe keep-alive expires:300 - 30) line 201 is shown as holding
to reproduce in the same call repeat d) and e), otherwise, for new call, start from a)
UC-3436Polycom DND does not work for shared linesKnown issue with Do Not Disturb and Polycom phones with shared lines.

To reproduce:
1. Add a shared line on a Polycom phone(vvx500, vvx400)
2. Enable DND for that line
3. Make a call, the line will ring, and it should not.

Looks like DND is broken if line is shared. DND works fine if line is not shared. This has been reproduced with Firmware 4.1.7.
UC-3445Wrong Polycom phone behaviour when adding the same shared line twice compared with 1 line with 2 num-line-keysKnown Issue where if only one line is added with line-keys set to value 2, the phone display shows two lines, and it works as expected - both lines attempt line seize before a call.

If the same line is added twice (by using the openuc interface -> click on the phone -> Lines -> add line) on a Polycom phone and line-keys is set to value 1, only 1st line (the first shown on phone display) will perform line seize NOTIFIES before a call and, also, only that line will generate NOTIFY messages to SAA. The 2nd line will act as if is not a shared line at all.
XX-11287Records requiring updateSeveral system audit related records are not automatically updated after data has been changed. This issue currently occurs because because the property name includes information taken from code and not from the web interface.
XX-11401Forcing primary database when not a majority, rewrites replica set configurationWhen only one node remains operational in a HA environment, it becomes by default Secondary as there are no other servers to vote a Primary one. If users forced that remaining node to become Primary, the system creates a new replica configuration set that only contains that node and ignores the ones that are not functioning. It is recommended not to force a node to become Primary.
XX-11436Recreating a region with phones registred results in doubled registrations for same phone (one of them expired)Fixed an issue where deleting a local database with registered phones resulted in doubled registrations for the same phone , out of which one of them is expired.
This issue occurred in a HA environment with multiple nodes with regions and local databases, in the following scenario:
1. Register a new phone with a new line in a region.
2. Delete all local databases in that region.
3. Click Diagnostics>Registrations in the main menu. Notice that the same registration is doubled: one available and another one expired. This occurres because when sipXconfig changes the shard IDs to when cfengine clears the local mongo registration db, the sipXconfig thread picked up the registrations again from the local database and replicated them into the global cluster resulting in the doubling of registrations in the global cluster.
XX-11458Openfire certificate not corectly deployedThe Openfire certificate is incorrectly deployed by the system with ssl-web.crt + ssl-web.key as a keystore in /opt/openfire/resources/security/keystore . You must manually deploy ssl-web.crt+server-chain.crt(any intermediate certificates)+ssl-web.key. Note: the trusted authority needs to be added under System/Certificates/Certificate Authority tab, in order to be validated by Openfire.
XX-11487If a user changes their password in User Portal config services should re-send profilesIf users changed their password in Unite Web, the configuration services do not check for users having Bria or Unite Mobile phones and do not re-send those profiles to get new password into XMPP configuration for the devices. The current workaround is for users to send the phone profiles using the Speed Dials page.
XX-11498Apply needed on Gateways page to disable SIP Trunking service (server cluster related)Known issue that prevents the calls from being connected when disabling SIP Trunk,Proxy and Registrar for a node in a HA environment. Currently, the workaround is to go to Gateways>Your sip trunk and click Apply in order for the incoming calls to be able to connect.
XX-11502Local region only 100% / All other regions 100% fail over plan results in failed calls / unregistered phonesSeveral performance issues affect the system when using HA environment because of the MongoDB system. We need to next move to upgrading MongoDB is updated to version 2.6 to make Regions work as envisioned.
XX-11513Openfire single node - failing scenarioKnown issue that causes the system to fail to correclty enable an IM account when the following steps are performed by the administrator when OpenFire is running on a singe node:
1. Change IM group name. Notice that the IM clients successfully updated with new group name, roster and presence.
2. On the Instant Messaging tab, deselect the Enable IM Account check box. Notice that the IM users from that group are disabled.
3. On the Instant Messaging tab select the Enable IM Account check box. Notice that the system is not successful in performing the operation: users have IM enabled back again, but their roster is either missing or not complete.