Cca 5.3.4
- Small logging issue with CTArchitect &web sockets
- UTCOffsetRespondent wasn't set for VBScript tasks
- Performance improvement for GetAlarmList and GetRecordingList
- Improvements to access connections management
- Make sure location list doesn't contain locations which are in use
- Added extra debugging for nr of concurrent access connections
- Several improvements to access connection counting
- Possible problems with calculating peneos for contacts without interview when quota tree is very large
- Survey data UTC/local time mixup
- Added restriction to allow ignoring critical update warnings
- Auto deletion of socket log files wasn't working
- Fix for Cca crash when receiving empty softphone file or unzip failed
- Missing resources when setting a survey online on a multi-server webfarm if the qex has resources with ID -1
- Possible crash when GetComputerName fails on the beacon socket
- 100% CPU during connect to CTArchitect when running as a service
- Improved debugging during CTArchitect reconnect
- Possible crash when stopping CCA service
- Debug message 'Closing Cca' missing when stopping CCA service
- Various improvements to virtual file system requests (moved to thread, added support for UNC, better input handling)
Requires CTArchitect v10.3.4.17 Requires Cati v5.3.4.12
- Timezone not set correctly initially when creating list with timezone field
- SNDLOG command could corrupt next socket command
- Reduced the maximum number of Access connections to 50
- Added extra error info in case CCA database connection fails
- CTScript database connection opening and closing too frequently
- Shifts for default list/task/project not read correctly from database
- Possible corruption of shifts of any list/task/project when modifying a default list/task/project
- Rare errors on cati due to a race condition because STRTOU/STRTIN and CALINF are sent in the wrong order
- Statistics timeouts are now configurable
- Error code is also logged in the socket logging when socket connection closes
- Added optional heartbeats to the CATI connection
- Added detection if cati closes ungracefully
- Allow Cca to send callinfo to agents that don't own a specific call (needed for callinfo update to cati during transfers)
- Call details sent incorrectly to Supervisor
- Problems in shifts dialog when changing shift number
- Duplicate web statistics when abandoning StartSurvey interview
- Possible crash when a timeout occurs during retrieving the list stats
- Next call attempt calculated incorrectly when using shifts
- Fix to allow downgrade of Cca from 5.3.5+ to 5.3.4
- OutboundMonitorView wasn't initially triggered
- OutboundMonitorView typo's
- Reports do not require Reports Runtime Engine anymore
- Fix for pausing issues when using predictive dialing (PauseOnEndTask didn't work properly)
- No confirmation sent if WRCACL is sent by different agent
- Incorrect quota could be sent to WebProd if survey not yet loaded when WebProd connected
- Rare crash when setting survey online due to race condition
- Disable 'interview storage' if 'enable storing data in SQL Server' is set to NO
- Write warning to log when receiving WRCACL for non-existing task
- Disabled reading external database type for LST's (it should always be access)
- Find number on CATI didn't take 'in-interviews' into account for quota check
- Memberships tab in the agent properties dialog => Activated/Deactivated memberships are not correctly colored when sorting occurs.
- Problem with filtering responses on a loop question in modify interview for New SQL surveys
- Appointment view tooltip doesn't always work
- Possible crash when a timeout occurs during retrieving the list stats
- Only send updates to clients within same track
- Timeout on WM_REQLIST__GET_CALL_STATS not handled properly
- Fixed error on CContactListDB::GetContactIdForCallId when call not found
- Log message to debug file if CTArchitect connection fails
- Survey update changes:
- The logging now contains low/medium/high/critical instead of level 1/2/3/4
- It's now impossible to ignore critical warnings
- Update dialog now displays the warning level explicitly
- Use list query timeout on list events
- Prevent logging 'start thread' twice
- Race condition on start thread could cause crash
- Possible crash due to race condion when starting logging thread
- Possible crash when an OS error occurs while reading a survey resource
- Find contact &find call didn't process empty condition correctly
- Couldn't search on appointment time in find/edit contact
- Possible crash when supervisor socket closes while sending alarm info
- Failover partner was lost when using ODBC connection string for statistics
- AutoUpdater improvements (Logging + auto-install)
- Fix for incorrect color marking of Actived/DeActivated memberships in dialog windows
- AutoUpdater: Limitations on the local stored files
- Prevent second error if updating CTScript response fails
- Problems with modifying time zone in 'find/edit contact'
- New resources were lost when updating task
- Shifts recalculated incorrectly when modifying shifts
- Shifts dialog - Modifying shift node in list didn't work correctly
- Possible crash when writing coding command
- Re-adding agent to inboundgroup will cause that the agent cannot be removed from that group anymore
- Visual improvements for column filtering (only when column filters are used)
- CallView does not get filled with new calls when column filtering was enabled
- When using a string filter, the stored value is not filled in when the filter is edited
- String filter does not work after restart of GUI (the filter needs to be disabled and enabled again)
- Between filtering for numeric values could not be edited
- Fix for infinite logging in case of corrupted UPLFLE command
- Possible crash when reload happens while interview is being processed
- Prevent crash when supervisor socket disconnects while sending logon result
- Statistics database UTC update check not correct
- Error when writing CTScript data (datetime variable)
- Performance when survey updates while web interviews are in progress
- Completed count on the task view can be too high due to WRCACL for completes
- Possible crash on survey update due to shortcut cache
- Possible crash when importing task package from future version
- Moved outbound stats calculation to the daemon thread to avoid locks that could cause statistics thread to hang
- Outbound stats will not build-up a queue if the database response is a little slower than expected
- Improvements for internal timer management
- Fix for lists database access possibly not working (after install of 5.3.4.9)
- Corrected logfile thread name (needed for logging output)
- Lists not working
- Improvements to timer management
- Log file thread didn't always have the correct thread name
- Rare crash when updating survey properties (due to race condition)
- Possible crash after changing outbound group properties when using predictive dialling
- Possible infinite loops for SetReady on deleted surveys
- Improved error info on threads
- CTScript threads had the wrong thread name
- Possible issues with brief interviews on CTScript
- Resources lost when creating survey
- Database error on DELOGR/DELAGE could cause CCA to hang
- Appointment message time incorrect (UTC)
- Small fix for callback script using shifts when next attempt is in current shift
- Added configurable timeouts for list DB connection and queries
- Possible crash when adding DNC list to default sample list (on CCA)
- Possible crash when processing RQCRFD command
- WRCACL for deleted list or non-existent contact not handled properly
- Prevent loading of deleted surveys (causes 1444 errors)
- Fixes for WRCACL after recovering contact
- Wrong contact state possible in find/edit contact
- Make sure we don't overwrite a newer interview with an older one on WRCACL
- Improved list compatibility check (import ccaPhone/ccaEmail/ccaExternalUniqueId needs corresponding field)
- Problem in find contact with contacts which are mailed but didn't respond yet
- Allow adding phone/email field after list is created
- Added settings to automatically import dat files (OFF by default)
- Bugfix for the time zone determination
- Brief interviews could remain in memory, and then saved to disk on exit, and afterwards automatically imported in the survey
- WRCACL didn't handle brief interviews correctly
- Workspace settings: Increased field length and erase if too large (else cca could fail to start-up)
- Changes to reporting databases are now sent to reporting service
- Fixed log on issues for cati &supervisor, causing all socket commands not to be allowed after log on
- Statistics alarms didn't contain name and source text
- CTScript: datetime variable values not stored correctly
- CTScript: database view not updated when updating task
- Extra logging for std::exception on CWinThreadEx
- There could be one more call than the max total call attempts allowed
- Statistic_OutboundGroup values for Processing_Time and Clerical_Time were swapped
- Statistic_ExternalNumber values for Ringing_Time and Speaking_Time were swapped
- Sorting issues call view
- Fixes for outbound monitor view
- Management of 64 connections limit for Access file was not perfect
- Problem with alarm times (UTC)
- Possible database error at end mailing
- Tweaks to queue occupation view
- Problems with state icons on list views
- View socket log doesn't work if the path contains a point
- Possible thread unsafety problem with StackWalker
- Performance issue when large amount of agents declared
- Recover contact didn't work for web contacts
- Modified list views so non-UTC reports will keep working
- Possible issues with list when receiving SNDINT or ENDOUT twice
- Added extra debugging for survey loading/unloading/reloading
- Improved error handling in WRCALC
- Added warning when 'set charset' routing is used
- Problem with upgrading AskEmail table
- Make sure no progressive call is requested after an agent requested a pause
- Database error when creating a new DNC list
- Improvements to CCA as a service startup in case SQL server is down
- Keep trying to reconnect if SQL server down at CCA service startup
- Problem with mailing monitor
- Callback option 'No fresh calls outside shifts' not saved properly
- Impossible to create a CTScript task
- Peneo's not always updated correctly after survey update
- Thread messages in log files are now back reported numerically
- Changed default debug level to 2
- Database errors when creating/updating a list with no phone field
- Save dat-files in working directory to database
- ENDOUT sent twice for incompletes if 'keep incompletes' enabled
- Possible memory corruption in survey database connection when opening connection fails
- Only send interview confirmation to web when the interview was saved properly
- Improved error reporting of AccessCompactAndRepair
- API XML loss of \n could cause problems
- Export survey suggested filename with UTC time instead of local time
- Suggested names for export/package task were UTC instead of local time
- Problem with calculating next callback shifts for fresh contacts
- Small glitch with 'no call'
- Possible crash when predictive dialling to phone number (or CLI) containing a %-sign
- Error when writing call to upgraded list
- Error when exporting list with emails to LST
- Possible crash when saving default list
Changes
- Added number confirmation for preview dialling
- Restrictions on pauses (Supervisor + Agent)
- Full support for running in different time zones
- All times stored in Lists, Surveys, Statistics and CTScript databases are switched to UTC
- Where necessary extra fields were added to the databases to store the UTC offset for different parties (Agent/Supervisor/Respondent)
- All log files are switched to UTC, which makes comparing them easier
- For contact lists you can select a time zone field, or determine the time zone from phone number
- For inbound numbers, you can also determine the time zone from the CLI
- Lists stats are now retrieved directly from database (because 'today' can differ per supervisor)
- Added extra parameters to call back script with different time zones and time zone offsets
- Also added System functions to callback scripts:
- System.TimeToTimeZone(time, tzin, tzout)
- System.GetTimeZoneForRegion(region)
- System.GetRegionForTimeZone(tz)
- Statistics changes (non-UTC)
- Session IDs (for agent, supervisor and API) were added to see-in and listen-in stats
- Agent session ID was added to statistic_Agent
- Session IDs for statistic_Session and statistic_SessionSupervisor is no longer determined by the database (by autonumber), but by CTArchitect/CCA
- New table statistic_Version which keeps track of the statistics database version updates
- statistic_SeeIn/statistic_ListenIn tables: SessionSupervisorId replaced by SessionIdSupervisor
- Added command-line option to set the main database connection string
- Window snapping is now enabled by default
- Added the possibility to delete webprod surveys who no longer exist on CCA (from the surveys list on web connections)
Bug fixes
- Start date for weekly schedule wasn't respected
Known issues (due to UTC changes)
- CreationTime/LastModificationTime in CCA database will not be updated - so times from before 5.3.4 upgrade will be 'wrong'
- first callbacks after upgrade could be slightly less ideal, because Lists.StartTimeCallbacksSuspended is now UTC (and the old value isn't)
- following stats will be wrong (values witched to UTC, so values from before upgrade are wrong);
- all old date/times will be converted to UTC using current UTC offset on CTArchitect or CCA. so if this offset changed over time, these times will be slightly off
- all agent/respondent UTC offsets for old stats will be initialized to CCA UTC offset
- Semi-opens created in the previous version will have an incorrect creation time (the value was written as local time, but is processed as UTC)