Computer telephony integration release notes

Computer telephony integration enhancements and updates in the Istanbul release.

Existing computer telephony integrations must be changed to work properly on the Istanbul release
Note: If you use the Computer Telephony Integration (CTI) feature, you will need to make changes and test the changes on an upgraded sub-prod instance before using the feature in production.
The requirements for the sys_cti_rule parameter have changed.
  • If you specify the name of a custom function as a sys_cti_rule parameter value, or if you have modified the out of box CTI Processing entry in the sys_script table (which is the CTI function invoked in the absence of any sys_cti_rule parameter), you must make the function client callable. This means that the function cannot do insert, delete, or update to GlideRecords. If the function needs to insert, delete, or update GlideRecords, you must move these actions to a separate function that is not client callable. Any values obtained via the various sysparm_ variables needed by the new function must be passed as arguments. The non-client-callable function does not have access to the sysparm_ variables available to the client-callable function named in the sys_cti_rule parameter.
  • If you have modified the out of box CTI Processing script, you must make the script client callable, and move all insert, delete, or updates to GlideRecords to a separate non-client-callable function. Any values obtained via the various sysparm_ variables needed by the new function must be passed as arguments. The non-client-callable function does not have access to the sysparm_ variables available to the client-callable function named in the sys_cti_rule parameter.
  • If you use the CTI feature without specifying the sys_cti_rule parameter, the system continues to use the out of box CTI Processing script. While the CTI Processing script has been changed to be client callable, the code implementing the task view has been commented out. You must implement a new non-client-callable function for the code that performs the task.update().
  • Any CTI function that sets a value in the global variable answer for the CTI Processor to use as the redirect URL must set the variable in a client-callable script.

Changed in this release

  • sysparm_cti_rule parameter change: The parameter specified must be a function defined in a sys_script entry marked client-callable. If the function needs to insert, update, or delete any GlideRecord, it must call a separate non-client callable function to perform the updates. Functions not meeting these requirements result in an error like the following to be logged.
    *** WARNING *** Security restricted: User tried to run update(String reason) in GlideRecordSandbox