Welcome to Avaya Contact Recorder 12.0, Build 1

These release notes contain the following:

·         New Features in this release

·         Available Documents

·         System Requirements

·         Fixed Issues

·         Known issues and Limitations

New and Changed Features in Avaya Contact Recorder 12.0

Major enhancements are summarized below. See Reference 1 below for a full feature description. Verint staff may refer to Reference 5 for details of recent changes.


·         Optional Replay authorization process

·         Recording Lock/Unlock

·         Interactive Layout Builder

·         Enhanced screen capture and replay

·         Integration with Avaya WFO V12.0 (Verint WFO V11.1 SP1) applications

·         Support for Avaya Proactive Contact 5.1 Dialer

·         Screen recording support for published applications on Citrix XenApp 6.5

·         Only supports 64bit Operating Systems. 

·         On Windows this version supports Windows 2008 R2 64bit SP1

·         On Linux this version supports RHEL 5 Update 6 64bit, RHEL 5 Update 7 64bit, RHEL 5 Update 8 64bit and support for RHEL 6 Update 2 64bit, RHEL 6 Update 3 64bit, RHEL 6 Update 4 64bit and RHEL 6 Update 5 64bit.

·         Support for VMWare ESXi 5.5 (VMotion and Snapshots are NOT supported).

·         Passive IP Resilience

·         Client support added for Internet Explorer 10.0 and 11.0



·         This release is not certified for use with CS2x00 switches at this time.

·         No support for 32bit Operating Systems refer to the Avaya Contact Recorder Migration documentation for details migrating from 32bit O/S to 64bit O/S.

·         Previous versions of Avaya Contact Recorder exported the call details to a "comma separated variable" (".csv") file. Re-enabling this output by setting viewerx.oldexport=true in the properties file is no longer supported, customers should move to the new html export format.

·         Please contact Avaya for latest information.

Available Documents

The following documents are available with the Avaya Contact Recorder 12.0 product:

  1. Planning, Installation and Administration Guide: for Systems Administrators.
  2. Search and Replay User Guide: for end users.
  3. Contact Recording and WFO: for Systems Administrators.
  4. Contact Recording and Screen Capture: for Installation Engineers.
  5. Contact Recording Migration: for Installation Engineers.
  6. Contact Recording Addendum: for Systems Administrators.
  7. Please check http://support.avaya.com for updates to this release note which may include issues found after release.
  8. ACR 12.0 Statement of Work (Verint internal only)

System Requirements

See Reference 1 for details of the server requirements. Client access is via Internet Explorer Version 7 or later.



·         Avaya Communication Manager 5.x or 6.x running the latest loads.  Does NOT support CM 3 or earlier.

o    C-LANs must be at Firmware revision 15 or later.

o    MedPros must be at Firmware revision 75 or later.

o    VOIP Module (MM760) must be at Firmware revision 43 or later.


·         CS1000 CC 6 or later to take advantage of all new features.

o    AACC SIP recording of inbound CDN calls

o    Record on Demand

o    Secure Call Recording

System Security

Note that PPP is required by Avaya’s Remote Access Tools and hence is installed. You may wish to disable this if such remote access is not to be used.

Upgrade Procedure – ALL SYSTEMS

Note the requirements (detailed in subsequent sections) to first upgrade to at least Avaya NES CRQM 7.0 or ACR 10.0 before upgrading beyond those points.


You MUST take a backup of your postgres database before upgrading. You are also advised to take screenshots or html copies of the configuration settings on all Operations tabs before upgrading.


After completing the upgrade you MUST check the recorder can record, replay and archive.


Screen Recording: If your system uses screen recording the default port number is now 29522. You can change the port number by setting the property screen.ieport=61123 to match the port number used by the older version of the screen capture agent software.


Custom Layouts: If you have added any custom layouts that extend the “browse” view or make use of any of its underlying database functions, you must take copies of these and remove them from the database before upgrading. Failure to do so will stop the database schema migration. Reapply them using the new Layout Builder and test against the new database schema after the upgrade.


Security: If you have applied the unlimited strength policy files to Java, be sure to reapply the correct versions once you’ve upgraded Java. If you have updated or installed any certificates e.g. KMS operation, be sure to back these up prior to upgrading and reapply once you’ve upgraded the recorder.


UNIFY INTERFACE CHANGES: If your system uses Unify integration (or any other external control application that integrates via this interface) you should carefully review the changes to this interface. Scripts will probably need to be modified (becoming simpler in most cases).


Service Observe Modes deprecated: Station Bulk and Station Executive recording modes are deprecated. Stations configured to be recorded via them will be recorded, instead using the new “bulk” mode with single-step conference.


System Configuration: This release merges three subtly different “bulk” recording modes. Although most settings are migrated automatically, there are some changes to configuration that cannot be inferred unambiguously. You should therefore use the screenshots taken before upgrade to check that ALL administration settings are as you require them following the upgrade. Pay particular attention to:

·         the recording rules on “Bulk” mode. If you previously used more than one of Conferenced, Station Bulk or Station Executive, you may need to re-apply any recording rules as these cannot always be merged into single rules automatically.

·         any archive filtering rules as these may need to be modified by hand to match the updated tagging.

·         External control of recordings (whether via Unify, Contact Recording Desktop, buttons on the phone or dialled digit strings) is now more tightly controlled. You must enable manual start, stop, delete and/or retain settings where these cannot be inferred from existing settings.


TSAPI: Previously, the TLINK name determined whether or not the TSAPI link was secure. This is now assumed to be secure unless altered via the properties file.


Master/Standby/Slave changes:

1.    Previously, in “Conferenced” recording mode, the recordings were made on slaves – and NOT normally on the master or standby. From 10.1SP2 onwards, the default is to balance recordings across master, standby and slaves. This allows N+1 fault tolerant systems of three servers (master + standby + slave) or higher. Previously five servers were needed (master + standby + 3 x slaves).

    1. Previously, softphones were configured on the slaves as well as the master. Now, all softphones should be entered on the Master recorder. If you need to assign them to specific slaves, this can be done using the Advanced settings for a range of softphones.


Licensing: When upgrading a system from any version prior to 100064, you will also have to enter a new Version 11 license key.  If your system does not have a Version 10 license already, apply this update first. The recorder will then show that it is running on a 30 day timed license. You can then enter the new license key to restore it to indefinite operation.


Upgrading CRS from NCR (any version)
The way in which the Central Replay Server (CRS) function is licensed changed from NCR (where it was treated as a “slave” to a particular “master” recorder) to 10.1 and beyond where it is licensed as a separate entity and does not maintain a master/slave communications link with any master (hence can serve many independent masters equally).

Having upgraded the servers you must first enter a CRS-specific license key on the CRS as well as the new license key on the Master. Until you do the latter, the CRS will appear to be an offline (un-contactable) slave and will raise an alarm. This is harmless and will clear once the new license is entered into the master.



Following an upgrade,

1.    if you have restricted any of your archive destinations to run on specific recorders, you must change the recorder numbers to the new 6 digit serial numbers on the Operations > Archive page.

2.    If you have any archive filtering rules set on the default or custom layouts you must remove these and the custom views from the database before the upgrade and add them back after the upgrade.


Skillset: Upgraded recordings with associated skillset information will be displayed in the parties column. Only new recordings will display skillset information in the new skillset column. The recorder previously did not distinguish which parties were skills so recordings made before the upgrade continue to show them as a normal party. To find recordings for a particular skillset across the upgrade boundary search across both fields.


Viewer and CAM: Avaya Contact Recorder as of version 12.0 no longer supports Viewer or Central Archive Manager (CAM). If you have used v7.8 of these components to archive recordings to one or

more NAS folders then you can import the details of these archives into the Avaya Contact Recorder database – allowing you to replay these recordings from their archive location without Viewer or CAM being present. Refer to the Migration and PIA Guides for further information.


Where v7.7 or earlier of these components has been in use, follow the WFO v7.7 to v11.x migration process. This requires the introduction of a Consolidated Server hosting the AAWFO v12 Application

Framework components and will enable users to search for and replay previously archived recordings through the Portal application as opposed to ViewerX. Refer to the Verint V11.1 Upgrade and Migration Guide.


WARNING: When upgrading, several database schema changes are performed automatically as the new version starts for the first time. Further changes then continue in background to migrate existing recordings to the new schema. Most recent recordings are migrated first. These can take some considerable time on a system that has been heavily used for some time. Check that you have at least 30% free disk space on the partition into which the application is installed. This is to allow for temporary growth of the system database during these changes.

WARNING: Before starting the recorder service after an upgrade, you should apply the latest patch.


Upgrade Procedure – from Avaya NES CRQM 7.0 (Windows server)

If upgrading from an earlier version, you MUST first upgrade to Avaya NES CRQM 7.0 following the instructions in the release note for that version.

WARNING: When upgrading, several database schema changes are performed automatically as the new version starts for the first time. These can take some considerable time on a system that has been heavily used for some time. Check that you have at least 20% free disk space on the partition into which the application is installed. This is to allow for temporary growth of the system database during these changes.


You do not need to upgrade the operating system to Windows 2003 R2 SP2 if the recorder is already installed on SP1.


You can upgrade from Avaya NES CRQM 7.0 to this Build as follows.


    1. Log on as an administrator
    2. Insert the DVD
    3. Click the “Install Recorder” link
    4. Click “Run”
    5. Once upgrade is complete you MUST apply the latest patch before rebooting the server.


See reference 5 for further details.


TDM Recording

Recording calls via TDM trunks and extensions is now done within the ACR itself (rather than requiring a separate type of recorder). Make sure the recordings on the previous TDM recorder are archived and the TDM cards are removed from the configuration before upgrading the ACR. Note the TDM cards are now under direct control of the ACR and therefore need to be removed from the previous TDM recorder configuration.


Note the TDM calls partition is not managed by the ACR, therefore in co-res systems the old calls folder from the TDM recorder ought to be removed to make space available for the ACR to record which previously was not recording, note the old TDM calls partition is not managed by the ACR. Refer to the ACR Migration Documentation for further information.


SNMP Configuration

SNMP port previously defaulted to 4161 on Avaya NES CRQM 7.0 but defaults to 2161 on Avaya Contact Recorder 11.0.

Designated Recorder/Pool(s)

If you have used the Designated Recorder/Pool(s) advanced setting to specify a recorder by its four-digit number within your system, you must change this to the full six-digit serial number of the recorder. Named pools are not affected.

Disable Media Sensing

ATTENTION Windows contains a “Media Sensing” feature which can cause problems for recorders. Should all NIC cards in a server lose connectivity at the same time, this feature can lead to the recorder looping with 100% CPU usage. You must disable this feature by following the instructions in http://support.microsoft.com/default.aspx?scid=kb;en-us;239924


Upgrade Procedure – from ACR 10.0 (Linux server)

If upgrading from an earlier version, you MUST:

 a) Upgrade to ACR 10.0 following the instructions in the release note for that version.

 b) Upgrade your RedHat Operating System to at least RHEL 5.0 Update 6 (64bit only), following the instructions specified by RedHat.

Upgrading JDK and Avaya Contact Recorder

Once completing the pre-requisites above, you can upgrade Avaya Contact Recorder using the installation disk of the latest version. Two methods are described below – one directly from the DVD and the other from a copy of the rpm files.


In all cases you will need to upgrade the Java Virtual Machine and ACR using the two rpms supplied. The sequence of installing the two rpms is not important but both must be done according to the instructions below.


CAUTION: As the database schema is upgraded when a new version runs for the first time, it make take several minutes for the service to become available.


TIP: You can save many megabytes of disk space by erasing the old Java Virtual Machine after the installation. Use the rpm –e command, with the package name of the old Java Virtual Machine. Depending on the previous version of ACR, this will be either j2sdk , jdk or jre.


NOTE: When upgrading you may receive one or more of the following warning(s) which may safely be ignored:

·         systemPrefs files have been created as xxx.rpmnew

·         /opt/witness/properties/cscm.properties saved as /opt/witness/properties/cscm.properties.rpmsave

Using the Command Line (files on DVD)

  1. Log on at the terminal prompt as root
  2. Enter the command

service cscm stop

  1. Insert the ACR installation/upgrade DVD
  2. Mount the installation DVD (replace /dev/cdrom with your device name if different)
         mount –r –t iso9660 /dev/cdrom /mnt/cdrom

It may be necessary to create the /mnt/cdrom mount point using the command

     mkdir /mnt/cdrom

  1. Enter the command

cd /mnt/cdrom

  1. Upgrade the application by entering the command below – replacing xx with the build number as notified in the release notes.

On RedHat 6

     Determine the base version of libpcap.so (libpcap-1.0.0) installed on the system and copy it to /usr/lib64/libpcap.so.0.9.4

               locate libpcap

               cp /usr/lib64/libpcap.so.1.0.0 /usr/lib64/libpcap.so.0.9.4


rpmUvh ––nodeps cscm-12.0-xx.i586.rpm

  1. Upgrade the Java Virtual Machine by entering

rpm –Uvh jre-6u41-linux-amd64.rpm (64 bit)

  1. Enter the command

cd /root

  1. Eject and nmounts the DVD by entering the command


  1. Delete the folder /opt/witness/tomcat6* and /opt/witness/tomcat5* (if it exists)
  2. Enter the command

service cscm start

  1. Logoff

Using the Command Line (rpm file copied to server)

  1. Log on at the terminal prompt as root
  2. Copy the cscm rpm file to the server.
  3. cd to the folder into which you have copied the rpm file
  4. Enter the command
    service cscm stop

Upgrade the application by entering the command below – replacing xx with the build number as notified in the release notes (or just hit the tab key after typing cscm)
On RedHat 6

     Determine the base version of libpcap.so (libpcap-1.0.0) installed on the system and copy it to /usr/lib64/libpcap.so.0.9.4

               locate libpcap

               cp /usr/lib64/libpcap.so.1.0.0 /usr/lib64/libpcap.so.0.9.4


     rpmUvh ––nodeps cscm-12.0-xx.i586.rpm

  1. Upgrade the Java Virtual Machine by entering

rpm –Uvh jre-6u41-linux-amd64.rpm (64 bit)

  1. Delete the folder /opt/witness/tomcat6* and /opt/witness/tomcat5* (if it exists)
  2. Enter the commands
     service cscm start
  3. Logoff

Additional Information

Passive IP Resilience and Fallback

Passive IP (“PIP”) recording currently

a)   Relies on having seen an RTCP message from the phone to determine its IP address – meaning that the first call after startup cannot be recorded via Passive IP. Although having a master/standby pair overlapping by at least one call on each phone avoids this losing calls, that is not considered acceptable by some customers, who are concerned at loss of calls e.g. after a power failure affecting the whole system.

b)   Is “all or nothing” – hence requires comprehensive tapping and failure to record if, for any reason, the IP stream is not tapped.

c)   Does not provide support for multiple softphones reporting the same IP address.


Enhancements as of patch 12.0-sp0-41 will:

a)   Persist the knowledge of phones’ IP addresses to the postgres database, allowing a recorder to retain previous knowledge after a restart – and only phones that have changed IP address during its outage will be unknown or incorrect.

b)   Fall back to alternative recording modes should passive IP recording not be possible due to the following:

ACR does not know the Phone's IP Address
i.e. We've not got any IP address for any of the stations connected to a call (at the time we make the decision to record) - so we should drop straight through to try a TDM or DMCC port if we have one. This covers the following cases:
i) The first call from an IP phone that we are tapping
ii) It's an IP phone that we are not passive tapping - so have never picked up its address.
iii) It's a TDM phone (in fact, if there is a TDM tap on the station or trunk, this will have been selected in preference to passive IP)

Aren't Tapping the Stream for a call
i.e. We've got an IP address for one or more stations on the call but no ACR sees the RTP stream when we ask who can see it
This will cause a slight (normally sub-second) delay at the start of recording as ACR falls back to a DMCC port if one exists. It covers the use cases:
i) DHCP has just given the phone a new address and we've not seen a call to let us updated the address. (During this recording, ACR should catch the new address and hence record the next call via PIP).
ii) We learned the IP address when tapping the medpro or far end of a call from this station but don't have a tap on the station itself - so some calls, including this one, are not tappable.
iii) We are meant to be tapping this phone's calls but it has direct-ip-ip so we can't tap all the calls.

If the call is internal, there is a good chance that the problem is due to direct-IP-IP being set true and the call not traversing a tapped segment. In the case of an external call, however, failure to tap is most likely due to the phone having changed its IP address and the one used being obsolete. To avoid repeated failures, the existing IP address will (by default) be wiped at this time. If the call is actually being tapped (on a different IP address) the RTCP within it should ensure that this new address is learned and available for the next recording.

These changes allow for a partial passive IP recording solution – which will use TDM or DMCC recording ports if it cannot record via passive IP taps. However,  there is a ~500ms (default) delay in recording if ACR attempts to make a passive IP recording (as will happen if the IP address of a phone on the call has been noted previously but this call is not being tapped by any ACR).

It is anticipated that customers will vary in their approach to partial tapping. Hence the properties below are available to tailor how failure to IP record is handled.

Property Setting

Default Value





a) is not aware of the IP address of any station connected to the call to be recorded, or

bwas aware of the IP address of at least one station on the call but could not observe the RTP traffic within the first 500ms (default) of the attempted recording.

then a WARNING level alarm will be raised – identifying the station(s) connected to the call  and, in the latter case, their IP addresses e.g.

“Call cannot be passive tapped as IP address not known for station(s) 1234, 1235” (case a above)

“External call on station(s) 1234 could not be passive tapped via IP address(es)” (case b external call)

“Internal call between stations 1234, 12345 could not be passive tapped via IP address(es)” (case b internal call)

To suppress these alarms (leaving just INFO level log messages instead), set this property to “true”.

Regardless of this property setting, the recorder will attempt to use other means of recording the call if available. If no other means is available a MINOR alarm will be raised.



If the passive IP taps only tap the voice processing resources (and not the LAN segments to which stations are connected) internal calls between such stations will not be recordable if direct-IP-IP is enabled.

By default, a WARNING level alarm will be raised if an internal call (for which the IP address of one or more stations is known) cannot be tapped. This alarm will list the stations and IP addresses on the call to aid diagnostics.

To suppress this alarm (leaving just an INFO level log message), set this property to “true”.

In either case, the recorder will (after timing out) attempt to use other means of recording the call if available. If no other means is available a MINOR alarm will be raised.

Note: If internal calls do not need to be recorded and you do not wish to have DMCC resources used for those that are not tapped, configure the recorder to not attempt to record them at all.



If ACR attempts to passive IP tap an external call but fails, this can be due to

a) Inadequate tap points (in which case other stations are likely to be affected and multiple alarms will be raised) or

b) the IP address for the station is incorrect or out of date, having just changed and the new one not having been spotted yet.

It is likely that the new address will picked up during the call that just started but it is likely that the currently held address is incorrect.

By default the address noted for the station will be deleted. This will be apparent from the CTI status page.

To leave addresses untouched, set this property to “false”. This may be appropriate if the passive IP tap points are now to exclude some gateways.



This (existing) setting determines how many milliseconds ACR waits for one or more servers to report that they can record the RTP stream to or from the required IP address.


Archive and NAS destinations

Intermittent connection to NAS archive Destinations

The underlying JCIFS jar appears to have a problem with some network configurations which is usually intermittent. It attempts to check Distributed Files System (DFS) and crashes - even though DFS is not actually being used. This can be corrected by forcing it to ignore DFS as follows:

Add an additional JVM parameter to cscml.conf (linux recorder) or cscmw.conf (windows recorder)

(replace 9 with 1 more than previous "additional.n" line if that's not ".8")


Restart recorder to have this take effect


Central Replay Servers and replay from NAS Archive

The feature by which a CRS will forward a request that it cannot service (because the required media is not visible to it) to a recorder that can see the media is only appropriate for DVD archives. That is the DVD can be inserted into the original recorder on which they were made OR the CRS for replay.


This feature is not available for NAS archive. For NAS archive the CRS must be configured to directly access the NAS archive destination. This approach is the only option for NAS replay, it is also preferred as it removes replay load from the recording ACRs.


Supporting the unusual use case where a CRS is NOT be configured to access the NAS archive directly is not recommended.

Linux based recorders on Virtual Machines using KMS

In some environments where a Linux based recorder is hosted in a Virtual Machine using KMS it has been noticed that recorder startup is significantly slower.

This can be improved as follows.


Add an additional JVM parameter to cscml.conf

(replace 9 with 1 more than previous "additional.n" line if that's not ".8")


Restart recorder to have this take effect

Windows based recorders and secure PCS Dialer

In windows environments the recorder will not connect to the PCS Dialer in secure mode, because the path used to access the keystore is incorrect.

This can be resolved by creating a new "simply named" folder – e.g. create D:\keystore and copy the appropriate avaya pcs keystore there (depending on the PCS version v4 or v5) from the existing keystore folder.

Then add a new property to the acr.properties file

Note the use of / which is valid for a java filename even when running on windows (and saves trying to use escape chars).


Antivirus and Application Backup Software

Antivirus Software, Application Backup and PostgreSQL reporting software should NOT be installed on the recorder.

Antivirus software can interfere with PostgreSQL's operation, because PostgreSQL requires file access commands to behave exactly as documented by the underlying operating system, and many antivirus programs contain errors or accidental behavior changes that cause these commands to misbehave subtly. Most programs do not care because they access files in fairly simple ways. Because PostgreSQL is continuously reading from and writing to the same set of files from multiple processes, it tends to trigger programming and design mistakes in antivirus software, particularly problems related to concurrency. Such problems can cause random and unpredictable errors, or even data corruption.

Antivirus software is also likely to dramatically slow down PostgreSQL's operation. For that reason, you should NOT install Antivirus software on the recorder.

Due to the huge volume of files created by the recorder traditional backup software which looks for deltas between backups is not appropriate on the recorder.

Please refer to the Planning, Installation and Administration Guide for recommendations regarding backing up the recorder.



Fixed Issues




 This issue list starts from 12.0 Build 1. For earlier fixes, see the release notes for that build.

Patch #



(CS1K only) Provided screen when live monitoring by agent id with fixed seating associated with posID or DN.


1. Now audit Live Monitor attempts.

2. 1AM thread now purges the correct tomcat log directory.


Before applying this patch check if alarms are being raised about unarchived calls first – and confirm that all archives are running correctly and are not backlogged prior to patching. A manual database operation should be performed to flush out old arcpending records.

“update recordings set arcpending=false where arcpending=true;”


1. Live Monitor now shows the current state of the monitored party, so if the call has ended it shows just the monitored party (plus any agent or workstation we’ve seen that agent at).

2. Added translation strings for Live Monitor and IP Office.

3. Place dialler agents into correct dialler domain, allowing the same agent id number to be used from both the cm and the dialler.

4. Improve session logout when Live Monitor in use.

5. Avoid deadlock that could occur in bulk recording on start-up.

6. Handle the rare case where bulk recording is changed to target by CoR.

7. Ignore any RTP DTMF Events.
8. Resolve garbled audio as a result of inserting double beep mask tone.

9. (CS1K only) Where a call is transferred TO a recorded DN/posID FROM a non-recorded DN/posID the resultant call was not recorded correctly, fixed for both DMS and TDM trunk-side taps.

10. Ensure post call tag can flow from active standby to master.

11. Improved replay icons shown on the search and replay screen.

12. PIA and User guide updated to Issue 3.

13. (CM Only) Correctly remove station from CoR list.
14. (CS1K Only) Correct decoding of MLS address type 0x0d.
15. (CS1K DMS only) Correctly handles codec changes while RTP is paused e.g. on far end unobserved transfer.

16. Live Monitor now receives the masked audio and screen.

17. Allow live monitor of agent’s screen while no active call.

18. Support external control of WFO only recordings.

19. Support post-call tagging with WFO.

20. Support WFO business rule after call work fixed time setting.

21. Now mark incoming records from other recorders as arcpending=false immediately (so they never get selected by the hourly unarchived recording query at all, regardless of their inum) – so there should only ever be the genuine local backlog with arcpending true.

22. Optimise the SQL query used to determine the hourly check for oldest unarchived recordings.

23. Hourly check for unarchived recordings can now be turned off with archive.blockcheck=true.

24. (CM CoR based bulk recording only) When ALL stations are removed from a recorded CoR, the list of stations on the recorder was not cleared out but would retain the set of stations present on the last refresh done when there was at least one station in the CoR.

25. Fix timestamp shown on WFO event annotations.

26. (CS1K Only) Add cc.v6skills=true for cc.v6=true environments to request skillset information in the application registration message.


1. (POM) Don’t assume every CallID is a DiallerCallID, POM diallers use the underlying CM CallID.

2. DPA integration now supports screen only recording. Set eqc.1.screenonly=true to enable this mode so DPA events relate to the screen only recording and not the voice recording.

3. Spoof an empty audio file on replay of screen only recordings, to suppress benign warning indicating audio file not available.

4. (CM) Improve start-up race condition where agents are already logged on to stations.

5. (POM) Support extended variants of agentExtn provided in dialler messages.

6. Search and Replay API now only available when feature is enabled in the license.

7. Set cs1k.spoofdialerhold=true to have ACR infer that dialer calls are held when their underlying CS1K call is held. Avoids “notap” alarms on TDM based systems and potential mistagging on DMS systems.

8. Don’t send sessions to WFO unless active.

9. Live monitor now supports the case where the AACC Agent ID matches the station or DN.

10. Live monitor now only reports on the dominant call details, previously submissive calls details were also reported resulting in duplicate information appearing in the live monitor active call information and incorrect audio sent to monitor client.

11. Bulk Recording by CoR more resilient to rapid changes to targets and to which stations CoRs are in.

12. Now spilt the post-call tag queue into two. Those which are tagging with the contact info go back to the 1s delay. While those which are tagging with Unify tags apply the (worst after call work + 10 secs) delay.

13. Live monitoring now stops if the monitor window is cleared and the monitor button pressed.

14. The active controller now updates WFO with postcalltag info before passing tags and new contactxml on to the server holding the XML.

15. Correct the Russian translation of the days of the week the in Search and Replay calendar popup.

16. Do not raise “No suitable port available” alarms for failure to record dialer calls when the reason is that the underlying nailed-up call has terminated.

17. Live Monitor now correctly masks content if recording is masked before live monitor is started.

18. (CM Only) Refine the internal/external decision handling of device types.

19. Postcall tagging now works in a hybrid AACC environment.

20. External Control applications now notified with ONLINE messages when recorder started while calls active.

21. Handle the fact that IP Office does not support advanced archive filter settings.

22. Now the screen recording for WFO will be done on the same server as the voice.

23. Refresh the call direction state before testing the wfo business rules.

24. Add Held/Retrieved to call state history and include call state change events to tagging.

25. (CS1K TDM trunkside only) When a 3-way conference call involving two external parties drops to two-way, the trunk tap point was not being correctly identified for the remaining external party.

26. Correct the icon shown against CDN numbers on the Live Monitor display header.

27. (CM only) Live Monitor did not reflect held/retrieved status correctly.

28. SNMP trap messages now report the correct OIDs for bound variables.

29. Session start time on postcalltag refresh now brought in line with original insert i.e. first inum start time.

30. Bring Slaves in line with change made in 12 above.

31. A split can now infer that a number is a station.

32. Avoid a Null Pointer Exception if the recording rules are not set when check activity code.

33. CallDirection now “Unknown” until at least 2 parties are on the call.

34. POM dialler calls using UCIDs instead of the more normal DialerCallID now correctly check the trunk groups assigned to diallers.

35. Session now remembers the start time of the first inum which is used to update WFO.

36. WindowsLogin devices all get lowercase names to avoid case sensitivity when matching later.

37. Call teardown code could loop indefinitely while using “follow the call” bulk recording – leaving ports unusable.

38. Improve exception handling on shutdown of EMAInterface.

39. Screen Recordings made on 10.1 were not migrated fully.

40. Now call disconnect on Live Monitor proxy socket pair to handle occasional case of port unreachable.

41. Refresh CoR button now visible on standby recorders.

42. Bulk recording page now provides sorting of recording target rows.

43. Remote Administration API now handles additions and deletions from a style while running.

44. Remote Administration API now allows for the removal of all targets from a style which then allows the style to be removed.

45. Only tag parties with recordable connections, previously if a call was connected to two stations and queued to a split at the same time, the recording would be incorrectly tagged with all the agents logged into the split

46. Ensure screen ports can be reused when After Call Work has been enabled in the WFO business rule.

47. DPA screen only recordings now correctly indicate if they are bulk recordings i.e. a DPA Start message was explicitly sent, or business rule recordings, also allows percentage rules to be set on DPA screen only business only recordings.

48. Details Servlet now filters out recordings that have no UCID set as this can block the upload, record will log an error with the inum indicating recordings that have been blocked.

49. CTI Monitors page now brought in-line with WFO so that it now marks the first party even if that’s an internal party as an ANI.

50. Standby port status page was previously out of sync with master, dmcc softphone is now moved from the ending call to the one that persists only if the dmcc softphone has not already been disconnected.

51. Avoid NPE if WFO has an invalid identifier in private data attributes.

52. Remote Administration API now infers deletion from other styles when adding a station to a style.

53. Party statistics now available through usage reporting, enable with usage.partystats=true.

54. Passive IP recording no longer filters out UDP packets with VLAN tags.

55. No longer throw an NPE when attempting to Passive IP record.

56. Support multiple WFO LAN data sources.

57. ANI was getting confused by trunk connection.

58. If no viable server found fallback to this one.

59. (IP Office) Now tolerate no locked file path.

60. Synchronize user replay rights to avoid retries entering duplicate information.

61. Improve the mechanism to ignore inband DTMF events.


POM integration now correctly checks for “hold”


Dialler: Only tear down the existing call if it is a spoofed half-call.


POM Dialer – convert agent info relating to other agents on the call into appropriate station info rather than filtering it out completely.

A problem using CoR targeted recording combined with designated pools of recorders has been resolved.


POM Dialer – correct error in 12.0-sp0-007’s determination of where a POM agent is logged on.


1. The ANI reported on the CTI Status page was incorrect on some calls, showing the called instead of calling party.

2. If local accounts were barred, the Manage Users page was not showing Kerberos accounts either.

3. On outbound calls where the trunk does not provide a DeliveredEvent, the order of parties should now be correct, with calling (internal) party showing first.
4. POM Dialer – when used with blockagentids=true was not mapping agent ids to stations correctly.


POM Dialer – now tolerant of reuse of the callid from the original call on the consult call.


POM Dialer – when using a connected call to record a dialer call, make sure that the call is still present when needed later.


1. QM – Attribute names with spaces now replaced with underbars in the XML, if you need underbars use wfo.spacetounderbar=false (note you can’t then have spaces in the names.)

2. DPA – Now ignore DPA requests if the recorder is not active.

3. Dialer – Dummy call ids created for dialer calls now include a timestamp and unique element.

4. Standby recorder gradually gets state of DMCC softphones stuck in “connected” where these have been used for follow the call recording on transfer/conference or a 4-way conference without follow-the-call recording.

5. Workstation rules now correctly default to not record.


1. Now support EMC archive destinations in systems with standby and central replay servers.

2. Removed dependency on deprecated jre security classes.

3. Support the export of commingled audio recordings.

4. Searching for recordings now supports strings that include the following characters, underbar, percent and backslash.  


1. Now includes support for AIM.

2. POM Dialer – Now remove any pre-existing dialer half call on agent logon.

3. Search and Replay API search filter containing an invalid call set id now flags an error.


1. Improved security.

2. DPA – Now use the appropriate switch once having found the agent id.


1. POM – Now ensure the wfo session contains the final segment after the first agent goes back the original party after a consult or conference call. POM MediaCompleteEvent implies just this party has left the call, but there may still be other parties still on it.

2. Downgrade benign “Softphonemanager hungup” WARN message to DEBUG if recorder is not active.

3. Central Replay Server redirected replay requests use the dotted IP Address in the URL, as a result the SSL certificate is not valid because the server name in the certificate does not match the IP Address in the URL. Use fqdn.xxxxxx=serversfqdn to override the use of dotted IP address in the URL with the servers fully qualified domain name, where xxxxxx is the serial number of the remote server and serversfqdn is the remote servers fully qualified domain name.


1. A CRS with CM replay ports connected to WFO no longer raises alarms that the datasource is not present in WFO.

2. When Call Set was included as a column in a custom layout, the column erroneously showed membership of system callsets e.g. “%LOCKED” etc

3. Initial Connection timeout is now only starts counting after the service startup sequence has completed. This will avoids any problems in starting up. E.g. accidentally making a standby go active when it could have made contact with the master if it had only waited a little longer.

4. Resolved a database upgrade with the audit trail.

5. Resolved a database upgrade issue where it tried to use an internationalization function they it should not have.

6. Designated recorder setting may now include a priority (lower number is higher priority) by adding a FORWARD slash then the relative priority. Where no priority is specified this defaults to very low (1000). Only useful where multiple recording rules fire on a single call.

7. DMCC Monitor Start syntax changed for terminal unregistered event.


1. If ACR was shut down as recordings were being considered for archiving, the resultant archive jobs could be mis-tagged resulting in those calls not being archived – and hence an alarm being raised 48 hours later.

2. Now accept 16 digits for Agent ID entry on user entry dialog.

3. AIM and DPA commands now act on either the position ID or the DN.

4. AIM and DPA commands now act on the held call if there is no active call.

5. Live Monitor support for encrypted media streams.

6. Don’t throw a Null Pointer Exception if the agent is assigned a supervisor who has left the company i.e. supervisor leaving date is in the past.

7. POM  - MediaCompleteEvent implies just this party has left the call, but there may still be other parties still on it. Now also return any “held” connections on that call to “established” at the same time.

8. Now send time zone offset on the Contact and Session to WFO based on the Datasource Local Time Tagging Mode. If set to Datasource then offset based on Datasource time zone, if set to Organisation then offset based organisation time zone of the employee on the call.


1. If tsapi.tryimplicit=true set, then devices of type implicitPrivate will be checked against TSAPI and determined to be internal or external according to tsapi response – as they used to prior to patch 110059.

2. Live Monitor of CS1K encrypted media streams previously introduced noise.

3. Further change to handle AIM and DPA commands on either the position ID or the DN and to allow agent id and workstation to be used for voice+video commands.

4. AIM commands now check for a null employee when checking the switch mappings.

5. POM dialer on CS1K can now record using Duplicate Media Streaming.

6. Tagging via AIM on multi-segment calls now reaches WFO.

7. IP Office supports 9.0.2 enhancements.

8. Dialer calls tagged with jobnumber and name have this added as a “Campaign” – will show in “Services” column in default layout. To show in its own column, create a layout showing parties of type 403 in a separate column. VDN is type 104 and CDN type 201 in case these need to be separated out from it.

9. When changing a password setting that previously contained a vertical pipe character, the new string was stored incorrectly.


1. (CS1000) Now extracts the DNIS from devicetype 0x11 when a voice port call is transferred to a position.
2. The “TAG” command from an external controller/Unify (which typically contains a specific INUM reference) is now checked against not only the active call on the device but also any held calls. The Inum is then compared against not only the current (if any) but also all Inums recorded as part of that contact. If a match is found, the implication is that the contact is still open and hence the tag is applied to the current call (and thus on to the session and contact for WFO). This avoids the need for the external controller to track the original Inum of the session as was previously the case.
3. Where multiple calls on underlying switch (CM or CS1K) are connected to common overlay call (dialer, POM, AACC..) both underlying calls are now considered “connected” and hence potential recording targets.

4. Remote desktop screen recording supported – where multiple IP addresses are present on the client PC.


1. (POM only) When dialer call is held and another call is made via the underlying switch, the second call was not recorded.

2. (WFO only) If the final recording in a contact was too short to be worth retaining, and no further CTI is received, the recordings were not uploaded to WFO.

3. If a customer abandoned a POM or an AACC call while on hold, a stale connection was left behind. This could prevent the recordings from being uploaded to WFO until several hours later when the calls are marked as stale and purged.

4. Resolved a deadlock condition that could block MDL uploads to WFO under load.


1. Resolved a further deadlock condition by improving synchronization.

2. The snapshot from TSAPI when an observer on a station is first established was used to remove any stale calls – these could have been present from earlier CTI events prior to establishing the observer on this device – now ONLY tears down other TSAPI calls – not all calls including dialer calls as it previously did.


Further rework needed to resolve the deadlock from patch 021.


1. Where a dialer is used on AACC, the dialer call is recorded by tapping the underlying switch call – not attempting to tap the AACC call. This could intermittently affect attempts to live monitor dialer calls as well as their recordings.
2. AIM user accounts now checked case insensitively against the local ACR account names.
3. (POM only) A redundant call segment break at the point of “change of ownership” is avoided.


1. Correct Unify BREAK command to force a split in the recording.

2. (CM only) If a Split is reported to be in “csNone” connection state on a TSAPI call snapshot, treat it as queued not other.


(CS1000) On handling an status change event don’t assume there is already a contact created for the call.


1. Alarms on failing to passive tap a call were not appearing in the Alarms table – only showing as exceptions in the log.

2. Refinement added to 12.0-sp0-025 item 2.


1. AIM integration now uses case insensitive windows user names.

2. When live monitoring calls involving overlay systems (dialer and/or AACC) the details of the current call were not always reflected in the live monitor client as they changed.

3. AIM integration now checks the configured device against the appropriate switch.

4. Ignore connection to a Split when deciding if a new call is connected to other calls (and hence part of the same contact) or not.

5. (Passive IP) Don’t throw Null Pointer Exception if no source description in RTCP packet.


If replay authorization is not enabled, do bulk export the old v11.0 way which is not limited by length of url to 250 inums.


Delete and Retain inband digits now acted on correctly.


Rework of 12.0-sp0-30


1. Post call tagging queue is now delayed by 30s by default (or maximum after call work if that is greater). This ensures that dialer completion codes do not reach WFO before the contact itself has been uploaded.

2. MDL return code 500 no longer stalls the job queue. Instead, it reports the erroneous message to the log file at ERROR level.


1. (CM only) Delete and retain inband digits now applied to all internal parties on the call – so when multiple internal parties are on a call, the delete or retain command acts correctly. Note that ACR cannot determine which party dialled the digits so must apply them to all controllable parties.

2. Dual login now works when the user requiring additional authorization is logged in under a Windows account.


1. Export control now passes through the Avaya ALCH wav header untouched.

2. CS1K, WFO ANI now correctly displays external number and not CDN

3. DPA disconnect message now only applied to the screen-only recordings, previously it was applied to all contacts the device was connected to and hence would incorrectly stop all contacts.


1. Avoid a NPE if merging with a call that has no contact yet.

2. Moved to ostools 1_4 which provides the ability to control the command used to eject archive dvd media.


1. External stop (from AIM, DPA or unify) now stops a contact recording regardless of any previous start commands from any parties on the call.

2. External commands act at contact level rather than call level and persist as long as the party issuing the command remains on the call.

3. External start can be sent for stations that are not bulk recording targets (but for these recordings to be uploaded to WFO if core.consolidateall=false, the station must be configured in WFO as RecordAlways rather than StartAtBusinessRule.

4. Index.htm created by export now correctly sets content type meta tag to utf-8


Still under test for Passive IP - do not use on Passive IP systems

1. Do not track sessions for CDNs on call (applies to AACC on CS1000 only)

2. Contacts including AACC calls could show the ANI from the underlying CM or CS1000 call rather than that of the AACC call if the Tsapi event arrived significantly before the CCT event.

3. Call direction now populated for simple calls when WFO is present.


Still under test for Passive IP - do not use on Passive IP systems

1. Moved to ostools 1_5 which provides the ability to control the command used to eject archive dvd media.
2. Further change required to populate call direction correctly when WFO is present.


Still under test for Passive IP - do not use on Passive IP systems

Recorder now infers from DPA mediatype parameter whether the voice or screen only call is acted on. Note this removes the previous limitation requiring the recorder to be configured in DPA screen only mode using eqc.1.screenonly=true. This property is no longer used. To start a screen only call send a connect event, followed by a start with the mediatype=video, followed by a stop and disconnect.


Still under test for Passive IP - do not use on Passive IP systems

Avoid recursion when dialer calls are joined to each other.


1. Correctly fill gaps in the RTP stream with silence.

2. Persist the knowledge of phones’ IP addresses to the postgres database, allowing a recorder to retain previous knowledge after a restart – and only phones that have changed IP address during its outage will be unknown or incorrect.

3. Passive IP now falls back to alternative recording modes should passive IP recording not be possible due to the recorder not knowing the phone’s IP address or isn’t tapping the stream for the call.

4. Improved synchronization to call object previously could lead to corruptions of the map and excessive use of memory.


1. Ensure softphones are reused in the order they were freed not made bus.

2. Avoid possible benign NullPointerExceptions

3. Resolve AIM external control messages in a CSIK environment.


(IPO Only) Correctly tag the direction field.


(IPO Only) Now handles new location of fields within IPO provided wav files.


(Dialer Only) Dialer calls are now correctly recorded when using the dialer1name.trunkranges property.


1. CS1KCalls can be linked to DialerCalls via the dialer's dialer1name.trunkranges property, thus duplicating existing mechanism for TsapiCalls on CS1K.
2. Handle the POM "viaUCID" field allowing the joining of a TsapiCall with that UCID to the DialerCall reporting it this is done via a TrunkMember in the defined TrunkRanges (i.e. you must configure the
dialer1name.trunkranges property for POM now).


1. POM dialer now provides the property dialer1name.zone to support zones.

2. Archive now writes the tar to the destination when the pending files age regardless of the size of the tar.


1. Live Monitor now supports clients with jre 1.7 update 51 installed, don’t use any jre between 1.7 update 45 and 1.7 update 51.

2. POM dialer should not be used with the property dialer1name.trunkranges.


POM only – tentative change - which should now replace the VDN with the answering party on transfers thus allowing recording rules on stations/agents to work following the transfer.


1. POM dialer on CM: consult calls now tracked via their UCID to avoid duplicate recording.

2. CM only. Where bulk recording is targeted by Skill, (and the Advanced setting for owner is not used), the owner of recordings is now set to the the number of the skill itself. Additional owners are assigned to each agent that is connected to the call. Note that where calls are transferred on to stations with no agent present, you will need replay rights over the skill itself to search for and replay these segments. Also, where calls are transferred on to or conferenced with agents that are not members of the skill, those agents are still given ownership of the segment(s) of the call to which they were connected. If this is not appropriate, use the “Owner” setting to assign a single, specific owner instead.

3. Where WFO is present, the mappings of employees to phone agents and Windows logons may enable bulk recording to identify a workstation screen that is associated with a phone recording. By default, this will be recorded. To stop this, set property value bulk.usewfoscreenmappings=false – in which case screen recordings will only occur where (a) a WFO business rule specifies voice+screen (b) if agentids have been mapped to Windows domain accounts via ACR user accounts or specific workstations have been assigned using bulk recording’s Advanced settings.


1. Stopping recording within 1s of starting it could lead to occasional failure to hang up the allocated softphone - resulting in resourceBusy exceptions if that port is reused before the previous call ends.

2. The special postcalltag that updates the contact info to match what is sent to MDL is delayed by 1s. This can be overridden if we find it's not working (nnnn is in ms) using property setting tag.immediatems=nnnnn

3. MDLThread now pushes the database inserts for MDL jobs off to a background thread (at lower priority than normal) as these are non-time critical.

4. Current activity count for recording could gradually fall below actual activity.

5. Persistent alarms that are raised frequently now correctly filtered, no longer incorrectly cleared causing them to be raised every minute and hiding other alarms.


1. Further tweak to current activity count for active recording.

2. Resolve a race condition that could occur if attempting to tag a recording just as it ended.


1. The "Trigger on Alerting" option was incorrectly recording calls where the targeted party was on hold. This could lead to failed attempts to record where multiple external parties were established but the internal party was on hold.

2. Import from CAM now handles malformed tar files that could have been created historically by CAM.


Where an archive was built on a Layout that contained any "fixed" fields, the required values of those fields were not being included in the archive's query.


1. (CSIPO) Now supports recording originator from the WAV header as the owner.

2. Further subtle difference in malformed tar files created by CAM now handled by the CAM Import process.

3. When changing archive filter settings from a date range to no date range (meaning archive from now on only), an incorrect historic check was done, retesting all calls not already archived to that destination.


ANI and DNIS reported to WFO were sometimes those of the underlying switch call rather than taken from the overlay dialer or AACC.


1. Archive thread now reports any XML files that cannot be parsed as warnings, archives them and then continues archiving.

2. MDL thread to allows these parameters to be set the batch size, mdl.batchsize=nn (default 25) and the pause between batches mdl.minbatchintervalms=nnnn


If a recording was cancelled before the single-step conference completed, a softphone would not always hang up as required.


New property setting - replay.preferorigrecorder (default true) - will make a CRS (or master/standby acting as CRS) pass a request for a recording that it knows has been archived on to the recorder that made the recording rather than first attempt to service it itself from the archive. It will only forward the request if that recorder is also currently able to access the media required.

This allows faster replay of calls that are still present on the call buffer of the recorder that made the recording while allowing it to fall back to reading it from the archive if necessary. Override the default if you want to avoid loading the original recorders or if a lot of the replays do have to be satisfied from  archive.

This change also corrects a previous problem whereby a CRS that did not itself have access to a required archive (e.g. had not been explicitly configured to run an archive) would forward the request to any other ACR that did have access to that media - running the risk that although it could access the media, it did not have the necessary tar information in its postgres database.


(CM TDM only) Where a trunk group that is to be TDM tapped spans multiple E1 or T1 connections, tap it with consecutively numbered taps on the recorder. Add property setting tgsize.n=mm where n is the trunkgroup number (e.g. 4) and mm is the number of members in the trunkgroup (e.g. 72 if 3 x 24 channel T1s used). Enter the first of the tap points on the TDM interface page and the number of consecutive media channels should reflect the property setting. Restart recorder as always after any TDM tappoint change.


Resolved a race condition where an inactive standby incorrectly tears down the softphone from the call because the TSAPI events arrived after its DMCC events.


(Passive IP only) When phones changed IP address, the next phone to reuse their IP address could clear the new address details.


1. Dual sign-in when the party requiring additional authentication was a Windows account (SSO) - now exactly in line with code in 12.1 where this was fixed.
2. Where a party leaves and then rejoins a contact, its session now ends and a new one begins - in line with how WFO expects this to work. Most noticeable in A to B back to A transfers.
3. Where DPA is controlling a screen only recording, the call stops when disconnected event is received - even if the employee associated with the workstation/windows login is also logged in to a phone with an agentid that is linked to the employee.
4. External control to STOP recording may force a new contact or a new session:
    - AIM, EQC (DPA), CRD, CS1K record button all make a new session not a new contact.
    - Unify defaults to new contact on start, stop and break (override these with unify.newcontactonstart, unify.newcontactonstop and unify.newcontactonbreak respectively).
5. Agent Name attribute correctly reported to WFO when configured as a custom data field.
6. WFO Custom Attribute names are now case insensitive.
7. Dialer and AAACC calls should report the Dialer or AACC agent respectively as the session owner in WFO - even if the user is also logged onto the underlying CM/CS1K as an agent.
8. Start time of a session as reported to WFO was previously incremented by 100ms x the session number. This could cause problems uploading contact details to WFO if the overall session was less than a few 100ms long.
9. (CM only) Hold, transfer and conference counts were not updating correctly.
10. Screen recording of terminal server sessions supported - including recording, live monitoring and DPA control.
11. AIM supports fixed workstation to employee mapping in addition to Windows Logon to Employee mapping. (NB. Live Monitor will not support the fixed workstation mode till 12.1)

12. AIM can be used in AACC standalone mode (no underlying CM or CS1K) for control of AACC recordable calls.
13. External TAG via AIM, DPA or Unify on any segment of a call should tag the whole contact in WFO (but may only show as a UDF in ViewerX on the specific segment that was tagged).
14. Avoids exception if WFO attribute map is invalid or not present.
15. Screen recording client log file pollution on once a minute refresh of logon id reduced.
16. Pause and Resume will pause voice and screen only contacts if both are present at device.
17. Screen ports appeared to stay busy after recording had completed.
18. Contact/Session attributes (e.g. Hold, Transfer and Conference count) were not saved at end of call unless the recording was destined for WFO.
19. External control (via AIM, DPA, Unify etc) can be done via any internal party on the call and the action will affect the whole call even if that party then leaves the call (except in the case of CM, DMCC bulk recording where this must be explicitly set via "Follow the Call" option if the party). This makes the old "segment", "device" and "call" persistmode settings obsolete.

20. Correctly clear live monitors when the call is cleared.

21. Add support for Internet Explorer 10.0 and 11.0.

22. A recording with screen only is now not queued for an archive that only wants audio - and vice versa.

23. If reusing call information for a call that ACR lost sight of, ensure the call cannot be purged immediately.

24. Improved synchronization around the unify socket which previously could lead to deadlock.

25. A call that alerts on a VDN now has that alerting connection noted - so as to avoid erroneously seeing calls as torn down when they are alerting on a VDN. (To restore previous behaviour set vdn.addalerting=false).

26. To have business rules (and many call attributes) apply to the current session only, rather than the contact as a whole, set property bre.actiontosessiononly=true. Not recommended for general use.

POM Specific
1. (CS1K+POM) Supports new property mls.unknownmaybeinternal (default false) - which, if set true, will make ACR check devices MLS reports as "unknown" type against already known internal devices.
2. (CM+POM) Supports new property tsapi.ePUmaybeinternal (default false) - which, if set true will make ACR check devices TSAPI reports as explicitPrivateUnknown type against already known internal devices.
3. (CM+POM) Supports new POM CTI field identifying the consult call thus avoiding duplicate recording of consult calls.


1. (CM+AACC) Calls to a CDN that are subsequently transferred to a station are now tagged correctly.

2. (Passive IP only) Improved recovery from total isolation of slave, after recovery slave now records tapped stations.

3. (PCS) Dialer calls no longer tagged with the customer during consult calls.

4. (CM/CS1K +AACC) Ensure AACC calls that are SIP recordable take priority over the underlying CM/CS1K call.

5. Remote standby with shared DMCC ports did not resolve conflicts correctly, leaving some softphones failing to register.

6. (PCS) Correct DNIS and direction tagging on dialer calls. Add dialername.ignoreani property (default true) to control if the ANI from the dialer is used.

7. (CM) Clear logged on CM agents when TSAPI link goes down, previously could causes problems when the link is re-established.


1. (CM) Now request a further snapshot if current snapshot shows only 1 party.

2. (CM) Calls in which all parties are in "OTHER" rather than "ESTABLISHED" state will still attempt to record via DMCC.


1. (POM) Ensure successive calls on the same trunkmember are not under the impression that the transfer had completed. If the transfer completed, the dialer call is torn down as the CM call to the second agent tears down - but not if the original agent hung onto the call.

2. Record the screens of both agents if they are connected on a consult call.

3. Support call direction metadata field for old recordings, sets the direction for all the parties as the direction for the call as a whole, and provides the direction of the first party if there is no contactid present.


1. Reworked 12.0-sp0-66 item 2.

2. (CM) Avoid a NullPointerException when refreshing the CTI.

3. (CM) Clear any stalled call updates when the contact completes.

4. Now perform a case insensitive check on the poolname to match possible the upper/mixed case poolnames entered against the forced lowercase poolnames reported via the inter-server messages.

5. Reworked 12.0-sp0-63 item 25 – Now don’t create sessions for VDNs alerting and don’t consider calls alerting on the same VDN as being linked (To restore previous behavior set vdn.ignoresession=false), which resolves a memory leak.

6. (CS1K) No longer (by default) infers teardown of CS1K calll should the connections drop to a single party.


1. Resolved an NPE which could occur on snapshots with single party present.

2. Switch Call ID missing in WFO when after call work is enabled

3. (CS1K only) Correct hold counts reported in ACR.

4. Prevent collisions between end of recording and post-recording updates to XML files.

5. Resolved an IOException caused by sessions that don’t need to go to WFO attempting to update the incorrect parent inum.


1. CAM Import now supports the “Days to retain” option on the advanced setting of archive destinations setup for CAM Import, deleting both the tar file and the xml file previously created by CAM.

2. CAM Import now supports CAM 7.7 based archive locations.

3. Avoid spurious no packet alarms if no listening when listening stops.

4. Avoid Null Pointer Exceptions if unarchived recordings have wrapped off the disk buffer already.


1. (CS1K) Now handle no-consult transfer call scenario.

2. (CS1K-POM) Transfer to a non POM party now recorded, although it should be noted that call details for the final segment will not include the dialer details – however the contactid remains the same and that contact goes up to WFO at end of the call.

3. (CS1K-POM) POM transfer to an AACC CDN now records via SIP in preference to DMCC, as above call details for the final segment will not include the dialer details but the contactid remains the same and will be on the contact as a whole.

4. Screen live monitor now handles partial updates that may arrive before the full screen update.


1. (CS1K-POM) Retrieved event now matches the hold and treats POM linked calls in the same way as PDS dialer.

2. (CS1K-POM) Improve mechanism for joining the CM call to the dialer call – no longer join to dialer call if it is not recordable.

3. (Passive IP) Added support for OneXAgent version 2.5.5

4. (Passive IP) PassiveIPLocal now flushes through a mapping refresh just after the timeout has fired on a "WhoCanSee" message. Previously repeated failures of RTP not tapped were wiping the mapping but the PIP server end did not know that it ought to refresh the mapping if it started seeing RTCP again.


1. (CS1K-POM) Once a call has been transferred off the dialer, it can’t be joined to other calls while on hold.

2. (CS1K-POM) Improved mechanism for joining the CM call to the dialer call.

3. (WFO) Don’t allow the session end time to be less than the start time.

4. (WFO) Session state now starts in Unknown to avoid a potential race condition as the session is created.

5. (POM) Improved the viaUCID linkage between the CM call and the dialer call.


1. (Dialer) Reset stale timer on nailup after each dialer call.

2. (Dialer) Interference between dialer and TSAPI CTI could lead to ports failing to report end of call and hence stopping contact details from reaching WFO. And stops nailups from being seen as stale so long as dialer events continue to occur on them. (Could lead to deadlock as nailup calls details are purged during dialer call CTI).


1. (External Control) Avoid a Null Pointer Exception that can occur when unmasking a recording that has just ended.

2. (CM) If unknown logged on during startup, find out details even though tsapi link not fully up yet.

3. (POM) The "which calls are connected to this call" algorithm wasn't going recursive like it should when the calls were connected through the "viaUCID" mechanism.

4. Prevent DetailsAPIServlet collisions on access to the XML file.

5. (Live Monitor) Now cope with terminal service session id which may be present.

6. Corrected a problem where the skill being used for business rules and tagging was the skill the agent logged on to rather than the skill the call went through. The skill tagged on a session is always the one that was present at the start of that session. Once the rule is trigged this rolls on to all sessions for that contact unless, unless using the property to have the business rule apply to the current session only.

7. Improved on the solution to stop the session end time to be less than the start time which results in the contact not appearing in WFO.


1. (CM) Bulk recording targeting agentIDs would not record if the agent was already logged on when the recorder is started, this is now addressed, problem was introduced by a recent change.


1. (POM) Further improvement to the “which calls are connected to the call” algorithm.

2. (DPA-WFO) Support multiple AgentIDs assigned to employee via the same data source.


Internal only.


1. Network socket recovery could block itself and other sockets.

2. Very occasional blockage when inserting records into local database could stop XML files being written. Each operation now times out in 10s (override with db.inserttimeout=nn where nn is timeout in seconds)

3. Passive IP systems could generate many alarms per phone that was to be recorded but whose IP address could not be determined.

4. Avoid duplicate archival attempts of recordings that have no record in postgres db. Caused MB pending to drift on archive status page. Instead, archive additional XML files as part of archive job for the main recording (which already archives the WAV files).

5. (CS1K only) When live monitoring by agent id the screen content could be corrupted if other screen recordable agents were logged onto the same ACDDN as that of the agent being monitored.


If all recorders bar the active master/standby failed and that remaining server was loaded above rated capacity, port allocation could loop indefinitely. (Rated capacity is 1000 unless overridden by farendcapacity.nnnnnn=ccccc. Each recording counts 1 x scaling factor towards load – where scaling factor is 1 unless overridden by farendscale.nnnnnn=sssss).


1. Non-active recorders now respond to DPA messages, previously this could lead to sockets remaining in the CLOSE_WAIT state for a length of time.

2. Archive MB pending now reports the correct value when archiving voice but not screen.

3. Concurrent screen recording count climbing if last alerting call on shift is not answered.

4. (POM) Avoid a NullPointerException which could trip the link to the dialer.

5. (CS1K-POM) Handle the case where MLS reports the POM number as type 00 which implies it is not an internal number.

6. Layout now supports fixed direction values, with an integer value of one the following; 1=Incoming only, 2=Outgoing only
3=External only, 4=Internal only, 5=Not Outgoing, 6=Not Incoming. The Search filter now correctly shows the appropriate direction, previously
e.g. "Incl 3" but now shows "External Only"


1. (CS1K-POM) Live Monitor now supports the case where the POM agent ID and CS1K agent ID are the same.

2. (External Control CS1K-POM/AACC) External Control (AIM/DPA) commands now support CS1K-POM/AACC configuration.

3. Layout filters now treat Contact ID field as numeric.


1. Generic Archive Thread now logs the full stack trace in the event of an exception while processing the job.


1. (CS1K+POM only) Associates inbound consult call with dialer call allowing tagging through transfer/conference avoiding redundant recordings.

2. (WFO + Screen) Screen token now correctly released on stopping screen recording for WFO.

3. (CS1K + POM) Consult calls matched with dialer calls via DN of original agent.

4. Only send WFO internal sessions, previously external sessions could be set if the recording was pot call tagged.

5. Optionally delay CheckActive mechanism using property setting checkactive.delay=nn where nn is in seconds.


Designated recording setting for bulk recording targets now correctly falls back to the next prioritized pool. If multiple pools/recorders are specified you should specify the priority. To specify one or more backup pools/recorders to use should the first be unavailable, add further identifiers separated by semi-colons and give each a priority e.g. london/1;paris/2;800004/3 will use a recorder from the london pool if available before falling back to paris then 800004.


1. Avoid StackOverflow as can happen when splitting dialer calls.

2. Monthly reindex can be moved to any day of the month using property reindex.dayofmonth=nn (set nn to 0 to disable). (Can be set via mtce page without needing a restart).


1. POM client implements heartbeat to detect failed link.
2. POM client supports messages > 9999 bytes long (requires latest POM version or set pom.prefixlength=4 for compatibility with older POM versions)
3. POM consult calls and subsequent transfers/conferences tracked and tagged as POM calls.


1. Backed out the database timeout mechanism, in some instances it is better not to timeout and rather let the operation complete.

2. Added database watchdog mechanism, recorder will now exit if database does not respond. To ensure the recorder restarts add a new line wrapper.on_exit.default=RESTART to the wrapper configuration file; Linux opt\witness\tomcat7\wrapper\cscml.conf or Windows  ../Avaya/ContactRecorder/tomcat7/wrapper/cscmw.conf.


Designated recording setting for bulk recording targets now correctly falls back to any server if no preference is specified.



Known Issues and Limitations

The following features are not fully implemented and/or tested and are planned to be included in subsequent builds:

“Progra~1”, in-line with the short name reference for the 64bit “Program Files” directory.



Incident #






All stations to be recorded must be given a name in the Communication Manager as it is currently not possible to determine the device type or other details of these via TSAPI. See Avaya Meastro case 15747804.


When adding new CoRs in a Master/Standby system, the standby will refresh the list of stations any time a new CoR is added. This is in addition to 1am scheduled refresh. Also, if changing between CoR and normal address targeting, you should FIRST remove all targeted addresses, then change the type of targeting and then add the new addresses. Failure to do so will leave the previous recording targets active until the next reset.


CS2K and CS1K if running CC6 or earlier, the recorder can only determine the location of an agent when that agent logs in. There is therefore a risk that, if the recorder restarts, it will not be aware of the locations of all agents until they have logged off and on again.


Incorrect TSAPI information provided in snapshot when call is parked and picked up by subsequent agent. Therefore the recorder has incorrect information of who in on the call. When the call in un-parked the snapshot indicates that the two agents are on the call rather than the second agent and the original caller.


Informational messages reported by the DVD burning component are reported on stderr. As result they are reported in the recorder log file as ERROR messages, when they really ought to be INFO or DEBUG. Customers who are forwarding the log file to a syslog server should be informed these are not ERRORs but could mask a real issue if ignored, unfortunately it is not possible to distinguish the difference.


When applying HFR2 or HFR3 to the WFO 12.0 SP1 solution the "SessionTagsMetadataTransform.xslt" will be overwritten, make sure you apply the latest update for this file as provided in the most recent Avaya Contact Recorder patch to the WFO server running the content server.


External Stop Start commands are designed to not override WFO rule triggers.


The Avaya Contact Recorder does not allow for DPA to control the screen recording for "audio"  and "screen only" contacts ( eqc.1.screenonly=true) at the same time. These options cannot be used at the same time. Make certain your voice based CTI business rules don’t conflict with the DPA screen only rules.


Export only supports exporting of the AUDIO content of a recording. There is no standalone player for ".scn" files. Unfortunately, the only way the ActiveX control can play a screen recording is to use the audio file to determine the duration of the accompanying screen recording. So although in a "screen only" recording, there is no real audio recorded, the ACR still has to present a (silent) audio file to the ActiveX. The manual says export doesn't work for screen recordings - and that's correct. You happen to get a wav file that contains the appropriate amount of silence.




© 2006-14 Verint Systems, Inc. All rights reserved.