CTArchitect 10.3.3
Fixed wrong TaskID in statistics when using transfer. After transfer of call A to call B, TaskID of call B is stored in both calls A and B. Zendesk #26686.
Bug introduced in 10.3.3.26 / 10.3.5.17 / 10.4.0.1, when adding this fix:Fixed an issue with transfering an inbound call to an inbound number, which is put directly into a queue. The destination agent got the task associated with the original inbound number, instead of the transfer inbound number.
- Fixed crash when stripping '*' or '#' from IVR user input, but the original input was empty.
- Fixed crash when opening IP Registration table during startup of CTArchitect.
- Fixed crash in GUI mode when (re)connecting to CTArchitect-service.
- Fixed issues with sound broadcast (when the play sound was already finished and a PLSEND was received, the error code '2' was incorrectly sent to CCA.
- Fixed crash in WaitForSingleObjectAndPumpMessages when calling thread is not an AFX thread. This fixes at least crashes when run in service mode.
- Eliminated use of AfxGetThread(), since it returns a NULL pointer when the current thread is not a MFC thread. This fixes at least crashes when run in service mode.
- Fixed deadlock during close of Gui-only CTArchitect.
- Fixed a problem in GUI-only mode: the same message box was shown again and again (i.c. every time a message was received on the GUI Socket).
- Added more logging about ReleaseCall
- Added logging when a ThreadedMessageBox/MessageBox is shown/confirmed. Added logging of ServiceControl event STOP.
- Fixed possible crash due to incorrect internal handling of strings (CChar).
- Fixed crash when running as service when a message box is shown from certain threads. The crash was originally seen every midnight when showing the time bomb warning message box.
- Added explicit "unlisten" when putting call on-hold, and no music channel is configured. This prevents the client being able to hear the agent while on-hold.
- Added extra logging when no recording will be moved after QREEND (OnSendEndQuestionRecording).
- Added logging about license expiration time (for operations scripts). Updated frequency (once an hour, every minute when expiration date within one month). Updated datetime format to ISO8601.
- Changed selection of InterHW client connections to circular.
- Fixed crash during ReloadWebBox (after receiving RELWEB or RELSKI), when the webbox ID is not found.
- Fixed no audio due to early disconnect of InterHW Connections by maximum call duration in board settings. The connect time is now "reset" to now when the InterHW Connection is taken in use (extending the maximum call duration up to twice the board setting). This message is shown in logging: "Resetting connect time to now, to prevent early disconnect by maxcallduration from board settings. Current call duration was <seconds> s"
- Fixed a problem with no audio when a port was previous used in a listen-in.
- Fixed a possible crash due to concurrent access of the (global or LimitTable) limit state from multiple threads. Bug introduced in 10.3.3.22.
- Updated handling of PRA alarms, to leave voice channels connected to ISDN channels when a PRA comes up again. Previously, by disconnecting the voice channels from the ISDN-channels after clearing a remote alarm, recordings were not stopped when receiving a REJCAL.
- Reverted erroneous fix
Fixed a problem with complete interview recording not being terminated correctly after a REJCAL (Reject call) is received.Bug introduced in 10.3.3.15.
- Fixed error and taskfail with gc_MakeCall when using CLI PresentationIndicator Restricted or Unavailable, when setting anonymized headers fail after succeeded gc_MakeCall. Bug introduced in 10.3.3.28.
- Added support for RFC3325 "SIP Private Extensions". The new behavior is controlled with the "Presentation Indicator" in the RoutingTable. Make sure that all existing customers getting this change are configured with the correct default presentation indicator "Allowed".
** Set Presentation Indicator to "Restricted", to get the behavior described in RFC 3325 (From: anonymous@anonymous.invalid, Contact: anonymous@<ip-address>, Privacy: id, P-Asserted-Identity: <cli-to-use>@<ip-address>).
** Special request for BVA: set Presentation Indicator to "NotAllowed", to get the behavior described in RFC 3325 except for P-Asserted-Identity, which is set to anonymous@anonymous.invalid.
- Changed which agents are included when counting the current number of agents assigned to inbound: agents in status
Selecting(Preview) are no longer included. This solves some unwanted behavior when recovering agents.
- Fixed an issue with inbound calls that were left in queue forever when using blending. After an agent, assigned to inbound, was unpauzed, he was automatically assigned to outbound even when there were calls in queue and no other agents were assigned to inbound.
- Fixed an issue when recovering an agent: when selecting the agent to assign to inbound, the agent that was most recently assigned to outbound was used instead of the agent that was longest assigned to outbound.
- Fixed an issue with transfering an inbound call to an inbound number, which is put directly into a queue. The destination agent got the task associated with the original inbound number, instead of the transfer inbound number.
- If there are calls in queue, and no agents are assigned to inbound, then an agent must be recovered.
- Changed which agents are included when counting the current number of agents assigned to inbound: agents in Pause are no longer included. This solves some unwanted behavior when recovering agents.
- Reverted "Fixed a problem in blending when the agent was deactivated and activated again in an Inbound group. The agent was not receiving calls anymore. Now, the agent is recovered automatically."
- Fixed a problem with agents not receiving calls after they were changed from an outbound group to an inbound group, after receiving the "RELMEM" (Reload Memberships) command. The agent is now recovered shortly after (log lines with "CheckRecoverAndRelease").
- Fixed a problem in blending when the agent was deactivated and activated again in an Inbound group. The agent was not receiving calls anymore. Now, the agent is recovered automatically.
- Extra logging about data being read (including CTDesign parameters) during AgentLookup, about the selected Agent in InboundCall, and about the Pause status during Agent recovery.
- Fixed race condition during Duty Swap. This could cause (1) an agent to get a Number Selection dialog in CATI even when an outbound call was in queue, and (2) an agent to get both a Number Selection dialog AND the inbound call (CTScript/Askia). This is fixed by sending the REJCAL answer earlier than before. Also the CCA needs to be upgraded to solve all cases of the race condition, but both upgrades are independent.
- Added support for a Global CAPS limit, similar to the Limit table (as introduced in 5.4.0), but applied to all calls. Two registry keys are used: GlobalLimit_MaxCallSetupsPerSecX1000 (CAPS multiplied by 1000, default 0) and GlobalLimit_WindowSizeMSec (WindowSize in milliseconds, default 1000). The registry keys are reloaded every 60 seconds. These settings limit the number of call setups, using a running window. To disable the limit, set GlobalLimit_MaxCallSetupsPerSecX1000 to 0.
- Fixed recorded file not being closed, causing missing (all) recordings.
- Added logging when closing a file handle (log level >= high).
- Added extra logging for Predictive (abandon call).
- Fixed a bug when a file could be closed multiple times, which causes C++/Dialogic libraries in CTArchitect to crash.
- Further improvements to INVALID_PARAMETER c++ run-time exceptions.
- Added sanity checks on -n and -ni startup parameters.
- Fixed crash during startup when specifying -n0.
- Fixed correct handling of -NoFailFast parameter.
- Added handling of INVALID_PARAMETER c++ run-time exceptions. When an INVALID_PARAMETER exception is encountered, logging will now be written, and by default the application will halt (as it did up till now). When the startup option "-NoFailFast" is specified, the application will not halt. This will prevent crashes in some situations, until a better solution for the problem is found.
- Added a "hard unblock procedure" to release channels that are remaining in a blocked state forever. The channel is stopped / closed / reopened (2 phases), with 2 seconds between each step. The GUI (only) is blocked during this procedure. To start the "hard unblock procedure", click the Reset button in the channel dialog while holding the Ctrl-key (a confirmation is asked).
- Fixed NoAnswerTime not taken into account when an <ALARM> was received before the timeout was exceeded. Added more logging to troubleshoot call-setups/NoAnswerTime.
- Updated maximum CLI length (CLIToUse in TableRoute) from 31 to 127 characters. SIP-addresses were sometimes truncated. This problem doesn't affect releases >=5.4.0, since all lengths are now virtually unlimited.
- Fixed incorrect alarm 'Not enough numbers to dial in predicitive mode'. The timings to trigger the alarm are now correctly measured, and the alarm has been renamed to 'Long delay while getting next numbers in predictive mode'. Added more logging to determine where delays can happen.
- Added support for configuring SIP interface &port. In Registry, configure the values HMP1_IPAddress and HMP1_Port under key HKLM\SOFTWARE[Wow6432Node]MI4C\CTArchitect. The keys are automatically created with default values, when they don't exist.
- Fixed a problem with complete interview recording not being terminated correctly after a REJCAL (Reject call) is received. Added extra logging during various voice-channel assignments for audio playback / recording.
- Fix for transfer not working with manual dial (stays in ringing state)
- Added more logging when the state or assignment is changed, or about the state communicated to CCA.
Requires CCA v5.3.3.42 Requires Cati v5.3.3.10
- Fixed several transfer issues.
- Fixed several transfer issues.
- Fixed a problem with coverage when the Agent assignment is changing from Inbound to OutboundRequested or from Outbound to Inbound. The assignment change is now rejected when changing the assignment to Inbound when there are OutboundCalls, or to Outbound/OutboundRequested when there are InboundCalls. This will be show in the logging as: e.g. "Agent (<LastName> <FirstName>) with ID <Id>: Prevented assignment change to inbound, because there are <n> outbound calls."
- Fixed crash in Information Element parsing of ISDN messages, when an IE was not recognized by the parser. Now, the IE is correctly ignored, respecting the length of the unknown IE.
- Fixed a possible instability when SIP registration results (REGISTER) were sent back to the central CTArchitect. Too much data was retrieved from Dialogic and sent over the network, and this could result in a buffer overrun / access violation. This issue was found during internal testing, and has not been seen in production. Both HWClient (10.3.3.3) and CTArchitect (10.3.3.9) need to be upgraded.
- fixed possible crash in hardware dialog, on Windows Server 2003 / specific processors
- Extra parameters for the average wait from contact plus
- establish conference on msi boards could fail
- retry acceptmodifycall
- support for do not interrupt recording
- Max call duration failed to detect that the interhwclient connections was gone
- Under high performance some calls could fail to be stopped in ringing state
- Listenin could fail to be started because of late detection of a listen port dropped
- Agent open voip port failed detection
- support for one music channels for each node
- resent inbound call status info in order to keep the CCA call window correct after transferring an inbound call and closing the task later on
- disable transfer van task only contacts
- ringing could fail to stop in certain conditions
- Set onhold could fail when recording the complete conversation
- Sip registration for HWClients could fail
- in non central mode a port could remain in speech when using HMP
- Sip registration for HWClients possible