Writing call logic scripts
The Phone Password Manager service uses scripts to determine the logic and flow of each call to the IVR system. These scripts are used to define the workflow of any call received, including which sound files to play to the user, what kind of user input to expect following a prompt, and what operations to perform based on that user input. Descriptions for each section of the script and instructions for customizing the file are included in-line as comments.
The call logic scripts are written in PSLang – a scripting language with a syntax much like C, but with a large set of built-in functions, some of which are specific to Phone Password Manager. The Phone Password Manager-specific functions can:
Interact with the Dialogic® voice boards and Dialogic® PowerMedia Host Media Processing Software.
Interact with the Bravura Pass remote API.
Perform voice print related operations.
Phone Password Manager is shipped with a default script, psynch.psl
, that is configured to guide users through log in and authentication using their challenge-response questions stored in Bravura Pass . After login, the script offers users the option to perform password resets, account unlocks, and SecurID token management (If available).
Script files must be located in the \<instance>\script\ directory on the IVR server. If required, you can change the name of the script file or enable multiple script files by modifying idtel.cfg
.
To use the VoiceVantage script instead of the DTMF script, rename the psynch.voiceprint.psl
sample script to psynch.psl
, and put it in the \<instance>\script\ directory.
There are several global variables which can be called from within a call logic script:
Variable | Description |
---|---|
$trunk | An integer representing the current line number for this call. |
$lineMode | An integer representing the call mode. Values include: 0 - Auto-answer mode. (Default) 1 - Inbound mode. 2 - Outbound mode. See Call Modes for details. |
$supportedLanguages | A space-delimited String containing the languages defined in the configuration file. |
$enrollmentTypes | A space-delimited String containing the enrollment types defined in the configuration file. |
$callerId | A string containing the caller’s phone number, or URI. |
$callerName | A string containing the caller’s name, if available. |
$calledId | A string containing the number or URI dialled by the caller. |
See also
The PSLang Manual (pslang.pdf) for more information about the PSLang and its Phone Password Manager specific functions.
The Phone Password Manager samples directory for additional call logic scripts, including a script that contains voice-print related operations (
psynch.voiceprint.psl
).