Many agent actions within Softdial Scripter™ require the setting and retrieving of accurate and consistent times. As the Softdial Contact Center™ (SCC) components and agent stations may be geographically dispersed, care should be taken when dealing with timezones. The guidance below can help to identify and avoid potential problems.
First, some definitions:
Generally, all date-times in scripts and controls are passed around in 'sortable date time pattern', i.e. YYYY-MM-DDThh:mm:ss, a form of ISO 8601.
For example:
2008-04-10T06:30:00
The following are the date-time related steps in the standard step library. They all depend on the current system time zone (Windows operating system) in some way:
Step | Description | Time zone | |
---|---|---|---|
Date Time Conversion | Converts a date-time to UTC | System | |
Current Date Time | Generates the current date and time. Can optionally use UTC | ||
Date Time Math | Performs addition and subtraction on date times. If the date-time input has the optional UTC offset appended, e.g. -0500, the time is converted to a date-time first before performing the calculation | ||
Day of Week | Generates the current day of the week and specifies if it is a weekend | ||
End Call With Callback 2 |
Ends a call with an agent outcome and callback details. |
This is the preferred step to use for callbacks because it integrates better with the previous steps The callback date-time is in the above format. Internally, this is turned into a decimal format (OA Date) before sending to dialer. |
Whatever Softdial Campaign Manager™ expects (see below). |
End Call With Callback |
The callback date-time is broken in to separate year, month, day, hour and minute parts. Internally, this is turned into a decimal format (OA Date) before sending to dialer. |
Currently, there is one date and time related control:
Control | Description |
---|---|
DateTimeEditor | This control is based on the Microsoft Calendar control. It can be set to display a date and time by passing a value in the format shown above. It outputs a selected date-time in the same format. It ignores anything to do with time zone. From V10.6.583 - a registry setting has been introduced to enable or disable a blank outcome from this control - see the CalendarMode registry setting in Server Configuration. See also Microsoft help on Standard Date and Time Format Strings |
The script writer is responsible for performing any necessary time zone adjustments in the script.
If the called-party requests a callback on 'Tuesday next week at 2pm', then the date-time captured from the user interface will be in the time zone of the called-party.
If Softdial Campaign Manager™ is running...
In the USA, a campaign could dial across states in several different time zones. The agent script must take account of the time zone of the called-party when setting the time for a call back.
The script can then add or subtract the time difference between the callback time zone and the time zone in which Softdial Campaign Manager™ is operating (see below).
For example:
Therefore, the Softdial Campaign Manager™ tenant time zone is 3 hours ahead of called party time zone, so the script should add 3 hours to the date time.
This can be implemented as described below:
The Softdial Campaign Manager™ service, prior to tenant time zone changes, expects callback times to be in the system time zone, unless configured to read callback times in UTC. This is compatible with Softdial Scripter™ time processing for callbacks. Normally, the system time zone for Softdial Scripter™ and Softdial Campaign Manager™ services is always the same because they are installed on the same machine.
From 10.6 - after tenant time zone changes to make the Softdial Campaign Manager™ service work from the tenant time zone, the Softdial Campaign Manager™ service expects callback times to be in the tenant time zone. The default setting for tenant time zone is "(Server Location Time)" which is interpreted as system time, therefore providing general backwards compatibility and an upgrade path from earlier versions.
If however, the tenant time zone is changed to a different time zone from the system time zone, then the Scripter scripts will need to be changed. In a future release, Scripter will read the tenant time zone from the tenant configuration.
The steps mentioned above will default to tenant time zone rather than system time zone.