How and When To Configure the Encoding and Decoding of Variable Types

When the Cisco Unified CCX system receives variables from the Cisco Unified ICME Server, the variables do not have an associated type (such as Integer or Float). To use these variables in the Cisco VRU or Cisco Unified CCX scripts, the Cisco Unified CCX system first decodes them to one of the available types. When the script sends variables back to the Cisco Unified ICME Server, the Cisco  Unified CCX system then encodes them into a form that is a string that the Cisco  Unified ICME Server can use, depending on the type of the local Cisco Unified CCX script variable.

This type of encoding is used in all steps that support automatic conversion to and from String. Among these steps are the Get and Set EnterpriseInfo, Set, VoiceBrowser, and Keyword Transform Document steps.

The conversion also does not need to be specified by the script designer unless there are multiple choices like in the case of Date and Time. In these cases you can use the Expression Editor panel in the Step customizer window to enter the correct values. The following two examples of the expression panel are from the GetEnterpriseInfo step using the Expression Editor.

Example Expression panel without a value

In the Expression Panel, you can either type an expression directly into the input text field, or select from a list of choices, or click the Expression Editor (...) button to open the Expression Editor and create a new expression. The following example expression panel contains user input and a list of choices.

Example Expression panel with user input

The second drop down list that appears, provides encoding options whereas the first text box is the area where the expression value is entered.

The following table lists many of the encoding types that the Cisco Unified CCX system supports.

Note

The Input format is the data decoded from the Cisco Unified ICME Server variables to the Cisco Unified CCX script local variables. The Output format is the data encoded from the Cisco Unified CCX script local variables to the Cisco  Unified ICME Server variables.

Encoding Types That Cisco Unified CCX Supports

Encoding Type

Input Format

Example Input

Output Format

Integer—32-bit signed integer

The Cisco Unified CCX Editor supports three formats:

  • Decimal—a sequence of digits without a leading 0. Digits can range from 0 to 9.

  • Hexadecimal—in the form 0xDigits, where Digits can range from 0 to 9, a to f, and A to F.

  • Octal—in the form 0Digits, where Digits can range from 0 to 7.

Decimal:

  • 25

  • -34

  • 900

Hexadecimal:

  • 0x1e

  • 0x8A5

  • 0x33b

Octal:

  • 033

  • 0177

Decimal digits from 0 to 9 with no leading 0

Long—64-bit signed integer.

Float—32-bit floating number

[-]Digits.DigitsExponentTrailer

where:

  • Digits are digits from 0 to 9.

  • Exponent is an optional exponent with a leading e or E.

  • Trailer is one of f, F, d, or D to specify a float or a double. The trailer is optional.

3.1415927f6.02e23F25-4.2323E5f

Same as input

Double—64-bit floating number

0.8431.871E3d.23e-123-3.4e34

Same as input

Boolean

To designate this non-case-sensitive type:

  • True—Use 1, t, y, true, or yes

    .
  • False—Use 0, f, n, false, or no.

Yes

F

0

n

Either true or false

String

Type requires no conversion.

Hello world

Same as input

Date

Use the format mm/dd/yyyy where mm is the month, dd is the day, and yyyy is the year.

10/22/1999

3/30/2000

Same as input

Time

Use the format Hh:MmTod

where Hh is the hour, Mm is the minute, and Tod is am or pm. This type is not case-sensitive.

12:20am

09:05PM

Same as input