I NTUITY ™ CONVERSANT ® System Version 7.0 Application Development With Script Builder PDF Lucent App Dev W

Intuity Conversant Ver 7 App Dev w-script builder Intuity Conversant Ver 7 App Dev w-script builder

User Manual: PDF T E X T F I L E S

Open the PDF directly: View PDF PDF.
Page Count: 967

DownloadI NTUITY ™ CONVERSANT ® System Version 7.0 Application Development With Script Builder PDF Lucent App Dev W-script
Open PDF In BrowserView PDF
INTUITY™ CONVERSANT® System
Version 7.0
Application Development with Script Builder

585-313-206
108647306
January 2000
Issue 2

Copyright and Legal Notices
Copyright

Copyright © 2000 by Lucent Technologies.
All rights reserved.
Printed in the USA.
This material is protected by the copyright laws of the United States and other
countries. It may not be reproduced, distributed, or altered in any fashion by
any entity (either internal or external to Lucent Technologies), except in
accordance with applicable agreements, contracts or licensing, without the
express written consent of the Business Communications Systems (BCS)
Global Learning Solutions(GLS) organization and the business management
owner of the material.

Acknowledgment

This document was prepared by the GLS organization of the BCS division of
Lucent Technologies. Offices are located in Denver CO, Columbus OH,
Middletown NJ, and Basking Ridge NJ, USA.

Trademarks

Lucent Technologies has made every effort to supply the following trademark
information about company names, products, and services mentioned in the
Intuity CONVERSANT documentation library:
•

Adobe Systems, Inc. — Trademarks: Adobe, Acrobat.

•

AT&T — Registered trademarks: Truevoice.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 ii

Copyright and Legal Notices
•

CLEO Communications — Trademarks: LINKix.

•

Hayes Microcomputer Products, Inc. — Trademarks: Hayes,
Smartmodem.

•

Intel Corporation — Registered trademarks: Pentium.

•

Interface Systems, Inc. — Trademarks: CLEO.

•

International Business Machines Corporation — Registered trademarks:
IBM, VTAM.

•

Lucent Technologies — Registered trademarks: 5ESS, AUDIX,
CONVERSANT, DEFINITY, Voice Power. Trademarks: FlexWord, Intuity,
Lucent.

•

Microsoft Corporation — Registered trademarks: Excel, Internet Explorer,
Microsoft, MS, MS-DOS, Windows, Windows NT.

•

Minnesota Mining and Manufacturing — Trademarks: 3M.

•

Netscape Communications — Trademarks: Netscape Navigator.

•

Novell, Inc. — Registered trademarks: Novell.

•

Oracle Corporation — Trademarks: OBJECT*SQL, ORACLE,
ORACLE*Terminal, PRO*C, SQL*FORMS, SQL*Menu, SQL*Net,
SQL*Plus, SQL*ReportWriter.

•

Phillips Screw Co. — Registered trademarks: Phillips.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 iii

Copyright and Legal Notices

Limited Warranty

•

Santa Cruz Operation, Inc. — Registered trademarks: UnixWare.

•

UNIX System Laboratories, Inc. — Registered trademarks: UNIX.

•

Veritas Software Corporation — Trademarks: VERITAS.

•

Xerox Corporation — Trademarks: Ethernet.

Lucent Technologies provides a limited warranty on this product. Refer to the
“Limited Use Software License Agreement” card provided with your package.
Lucent Technologies has determined that use of this electronic data delivery
system cannot cause harm to an end user's computing system and will not
assume any responsibility for problems that may arise with a user's computer
system while accessing the data in these document.
Every effort has been made to make sure that this document is complete and
accurate at the time of release, but information is subject to change.

United States FCC
Compliance
Information

Part 15: Class A statement. This equipment has been tested and found to
comply with the limits for a Class A digital device, pursuant to Part 15 of the
FCC Rules. These limits are designed to provide reasonable protection
against harmful interference when the equipment is operated in a commercial
environment. This equipment generates, uses, and can radiate radiofrequency energy and, if not installed and used in accordance with the
instructions, may cause harmful interference to radio communications.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 iv

Copyright and Legal Notices

Operation of this equipment in a residential area is likely to cause harmful
interference, in which case the user will be required to correct the
interference at his own expense.
Canadian
Department of
Communications
(DOC) Interference
Information

This digital apparatus does not exceed the Class A limits for radio noise
emissions set out in the radio interference regulations of the Canadian
Department of Communications.

European Union
Declaration of
Conformity

Lucent Technologies Business Communications Systems declares that the
Intuity™ CONVERSANT® System equipment specified in this document
conforms to the referenced European Union (EU) Directives and Harmonized
Standards listed below: EMC Directive 89/336/EEC Low-Voltage Directive
73/23/EEC. The “CE” mark affixed to the equipment means that it conforms
to the above directives.

Telecom New
Zealand Ltd
Warning Notices

GENERAL WARNING: The grant of a Telepermit for any item of terminal
equipment indicates that only Telecom has accepted that the item complies
with minimum conditions for connection to its network. It indicates no
endorsement of the product by Telecom, nor does it provide any sort of
warranty. Above all, it provides no assurance that any item will work correctly

Le Présent Appareil Nomérique n’émet pas de bruits radioélectriques
dépassant les limites applicables aux appareils numériques de la class A
préscrites dans le reglement sur le brouillage radioélectrique édicté par le
ministére des Communications du Canada.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 v

Copyright and Legal Notices

in all respects with other items of Telepermitted equipment of a different
make or model, nor does it imply that any product is compatible with all of
Telecom’s network services.
IMPORTANT NOTICE: Under power failure conditions, this device may not
operate. Please ensure that a separate telephone, not dependent on local
power, is available for emergency use.
AUTOMATIC RE-ATTEMPTS TO THE SAME NUMBER: Some parameters
required for compliance with Telecom’s Telepermit requirements are
dependent on the equipment (PC) associated with this device. The
associated equipment shall be set to operate within the following limits for
compliance with Telecom specifications:
•

There shall be no more than 10 call attempts to the same number within
any 30 minute period for any single manual call initiation, and,

•

The equipment shall go on-hook for a period of not less than 30 seconds
between the end of one attempts and the beginning of the next attempt.

AUTOMATIC CALLS TO DIFFERENT NUMBERS: Some parameters
required for compliance with Telecom’s Telepermit requirements are
dependent on the equipment (PC) associated with this device. In order to
operate within the limits for compliance with Telecom specifications, the
associated equipment shall be set to ensure that automatic calls to different
numbers are spaced such that there is not less than 5 seconds between the
end of one call attempt and the beginning of the next attempt.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 vi

Copyright and Legal Notices

USER INSTRUCTIONS (AUTOMATIC CALL SETUP): This equipment shall
not be set up to make automatic calls to the Telecom "111" emergency
service.
CALL ANSWERING (AUTOMATIC ANSWERING EQUIPMENT): Some
parameters required for compliance with Telecom’s Telepermit requirements
are dependent on the equipment (PC) associated with this device. In order to
operate within the limits for compliance with Telecom specifications, the
associated equipment shall be set to ensure that calls are answered between
3 and 30 seconds of receipt of ringing.
Toll Fraud

Toll fraud is the unauthorized use of your telecommunications system by an
unauthorized party, for example, persons other than your company’s
employees, agents, subcontractors, or persons working on your company’s
behalf. Note that there may be a risk of toll fraud associated with your
telecommunications system and, if toll fraud occurs, it can result in
substantial additional charges for your telecommunications services.
Your Responsibility for Your System’s Security

You and your system manager are responsible for the security of your system
and for preventing unauthorized use. You are also responsible for reading all
installation, instruction, and system administration documents provided with
this product in order to fully understand the features that can introduce risk of
toll fraud and the steps that can be taken to reduce that risk. Lucent
Technologies does not warrant that this product is immune from or will

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 vii

Copyright and Legal Notices

prevent unauthorized use of common-carrier telecommunication services or
facilities accessed through or connected to it. Lucent Technologies will not be
responsible for any charges that result from such unauthorized use.
Lucent Technologies Fraud Intervention and Corporate Security

If you suspect that you are being victimized by toll fraud and you need
technical support or assistance, call the Lucent Technologies National
Customer Care Center Toll Fraud Intervention Hotline at 1 800 643-2353.
Aside from whether immediate support is required, all toll fraud incidents
involving Lucent products or services should be reported to Lucent Corporate
Security at 1 800 821-8235. In addition to recording the incident, Lucent
Corporate Security is available for consultation on security issues,
investigation support, referral to law enforcement agencies, and educational
programs.
Documentation
Ordering
Information

To order a document, contact the Lucent Technologies Publications Center
and specify the 9-digit document number, the issue number, and the issue
date.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 viii

Copyright and Legal Notices
Write, Call, or Fax

Lucent Technologies Publications Center
2855 N. Franklin Road
Indianapolis, IN 46219
Voice
FAX

1 800 457-1235
1 800 457-1764

International Voice 317 322-6791
International FAX 317 322-6699

World Wide Web

Use a web browser to reach one of the following sites. Click Documents
and follow the instructions at the site.
•

Organizations within Lucent Technologies
http://www.cic.lucent.com

•

Lucent Technologies customers and others
http://www.lucentdocs.com

Standing Orders

You can be placed on a standing order list for this and other documents you
may need. Standing order will enable you to automatically receive updated
versions of individual documents or document sets, billed to account
information that you provide. For more information on standing orders, or to
be put on a list to receive future issues of this document, call or write the
Lucent Technologies Publications Center (see Write, Call, or Fax (page ix)).
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 ix

Contents
Copyright and Legal Notices

ii

Copyright. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .ii
Acknowledgment. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .ii
Trademarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .ii
Limited Warranty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iv
United States FCC Compliance Information . . . . . . . . . . . . . . . . . . . . . . . . . . . iv
Canadian Department of Communications (DOC) Interference Information . . v
European Union Declaration of Conformity . . . . . . . . . . . . . . . . . . . . . . . . . . . v
Telecom New Zealand Ltd Warning Notices . . . . . . . . . . . . . . . . . . . . . . . . . . . v
Toll Fraud. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .vii
Documentation Ordering Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . viii

About This Book

xxxviii

Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxxviii
Intended Audience . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxxix
How to Use This Book . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxxix
Conventions Used in This Book . . . . . . . . . . . . . . . . . . . . . . . . . . . xli
Terminology. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .xli
Keyboard and Telephone Keypad Representations . . . . . . . . . . . . . . . . . . . . xliv

Application Development with Script Builder 585-313-206

Issue 2 January 2000 x

Contents

Cross References and Hypertext . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xlv
Screen Displays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xlv
Other Typography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xlvi
Safety and Security Alert Labels. . . . . . . . . . . . . . . . . . . . . . . . . . xlvii
Getting Help . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xlviii
Technical Assistance. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xlix
Web Site . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xlix
Contact Numbers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xlix
Related Resources. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . l
Training . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . l
Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .li
ELMO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . lii
Using the CD-ROM Documentation . . . . . . . . . . . . . . . . . . . . . . . . . lii
Setting the Default Magnification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . liii
Adjusting the Window Size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . liii
Hiding and Displaying Bookmarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . liii
Using the Button Bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . liii
Using Hypertext Links . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . liii
Navigating with Double Arrow Keys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .liv
Searching for Topics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .liv
Displaying Figures. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .liv
Printing the Documentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .liv
How To Comment on This Book . . . . . . . . . . . . . . . . . . . . . . . . . . . lv
Comment Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .lvi
Application Development with Script Builder 585-313-206

Issue 2 January 2000 xi

Contents

Contact Us Directly . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .lvi

1 Overview

1

Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
What Is Script Builder? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
What Is an Application? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Transaction for a Sample Application . . . . . . . . . . . . . . . . . . . . . . . . 4
The River Bank Agent Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Caller and Agent Interactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Automating the Transaction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Developing an Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Understanding the Application Requirements . . . . . . . . . . . . . . . . . . . . 7
Defining the Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
The Host Interface. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Database Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
The Transaction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Speech . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Verifying and Installing the Application. . . . . . . . . . . . . . . . . . . . . . . . 15
Verifying . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Installing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Testing the Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Assigning. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Application Development with Script Builder 585-313-206

Issue 2 January 2000 xii

Contents

Testing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Script Builder Transaction for a Sample Application . . . . . . . . . . . . . . . . . 17
For More Information. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

2 User Interface

22

Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
What is the User Interface? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Using the Screens, Windows, and Menus . . . . . . . . . . . . . . . . . . . . . . 23
Screen Layout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Function Keys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Selecting a Menu Option. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Choices Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Fields. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Filling in Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Moving through Fields. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Accessing Script Builder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Selecting or Adding an Application . . . . . . . . . . . . . . . . . . . . . . . . . 36
Adding an Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Naming an Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Defining an Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

3 Data Management

41

Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Application Development with Script Builder 585-313-206

Issue 2 January 2000 xiii

Contents

Data Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Field Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
System Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Field Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Field Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Field Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Formats for Input from Host Computer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
Formats for Output to a Host Computer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
Data Manipulations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Data Computations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Numeric Computations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Character Computations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
Data Comparisons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
Comparisons of num Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Comparisons of char Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
Comparisons of char and num Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
Data Conversions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

4 Defining the Host Interface

81

Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
Defining the Host Interface. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
Defining the Host Screen Definition . . . . . . . . . . . . . . . . . . . . . . . . . 84
Starting the Host Screen Definition. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

Application Development with Script Builder 585-313-206

Issue 2 January 2000 xiv

Contents

Using the Terminal Emulator to Capture
Snapshots of Screens. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
Displaying Keyboard Mappings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
Taking Snapshots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
Naming the Snaphots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Removing Unwanted Snapshots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
Defining Screen Identifiers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
Screen Identifier Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
Defining Screen Identifiers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
Adding a Screen Identifier. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
Removing a Screen Identifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Renaming a Screen or Changing Screen Type . . . . . . . . . . . . . . . . . . . . . . . . . 110
Removing a Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
Defining Screen Fields. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
Size Limit of Host Screen Field Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
Defining a Screen Field. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
Displaying a Screen Field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
Renaming a Screen Field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
Changing a Screen Field Definition. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
Removing a Screen Field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
Defining Host Session Maintenance . . . . . . . . . . . . . . . . . . . . . . . . 125
Starting the Host Session Maintenance Definition . . . . . . . . . . . . . . . . . . . . 127
Labels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
login. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
logout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
Application Development with Script Builder 585-313-206

Issue 2 January 2000 xv

Contents

recover . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Action Steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Host Session Maintenance Sequence Flow . . . . . . . . . . . . . . . . . . . . . . . . . . .
Host Session Maintenance Script Rules. . . . . . . . . . . . . . . . . . . . . .
Defining Get Host Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining Send Host Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining the Login Sequence. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining the Logout Sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining the Recovery Sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Host Session Maintenance: Tips . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Screen Identification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Recover Logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Prevent Multiple Requests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Delay Before Getting Blank Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using Goto Label Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5 Creating Database Tables

143

Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Creating a Database Table. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Databases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ORACLE Errors. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Accessing a Database Table. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding a New Database Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding a Local Database Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Application Development with Script Builder 585-313-206

130
131
131
134
136
136
137
137
137
138
138
138
138
139
139

143
144
144
146
147
148
149

Issue 2 January 2000 xvi

Contents

Adding a Remote Database Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining the Database Table Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Editing Database Table Contents. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Accessing the Edit Table Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding Database Table Records. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Searching for a Database Table Record . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Changing a Database Table Record . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Removing a Database Table Record . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Removing a Database Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Sharing Database Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Restoring Local Database Tables . . . . . . . . . . . . . . . . . . . . . . . . .
Tips for Database Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Creating Larger Initial Extend for Tables/Indexes . . . . . . . . . . . . . . . . . . . . .
Creating a Work Around for a Table with More Than 15 Fields. . . . . . . . . . .
Working Around the Limit of 10 Tables per Application. . . . . . . . . . . . . . . . .
Connecting to a Remote Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Changing the Definition of a Large Database Table . . . . . . . . . . . . . . . . . . .
Informing the Database DIP of Changed Definitions . . . . . . . . . . . . . . . . . .
Creating Indexes for Large Database Tables . . . . . . . . . . . . . . . . . . . . . . . .

6 Defining Parameters

151
152
157
159
159
160
162
162
163
165
166
168
168
169
170
170
171
172
172

176

Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
Accessing the Parameters Menu . . . . . . . . . . . . . . . . . . . . . . . . . 177
Defining Business Hours. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
Application Development with Script Builder 585-313-206

Issue 2 January 2000 xvii

Contents

Hours In and Hours Out . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Specifying Business Hours . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining Call Data Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Application-Specific Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Specifying Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Specifying Call Data Event Information. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Call Event Limits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining Holidays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Specifying Holidays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining the Host Interface. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Host Timeout Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Initial Timeout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Unrecognized Screen Timeout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Logical Unit Availability Timeout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Reserve a Logical Unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Logical Unit Login IDs / Passwords . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Specifying Host Interface Parameters. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining Seasonal Greetings . . . . . . . . . . . . . . . . . . . . . . . . . . .
Specifying Seasonal Greetings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining Shared Host Applications. . . . . . . . . . . . . . . . . . . . . . . . .
Specifying Shared Host Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining Shared Speech . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Enhanced Basic Speech and Custom Speech . . . . . . . . . . . . . . . . . . . . . . .

Application Development with Script Builder 585-313-206

178
180
182
182
183
184
186
188
188
191
191
192
194
195
196
196
197
200
200
204
205
207
207

Issue 2 January 2000 xviii

Contents

Primary and Secondary Speech Pools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
Specifying Shared Speech Pools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
Using Parameter Settings in the Transaction . . . . . . . . . . . . . . . . . . . 210

7 Defining the Transaction

213

Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining the Transaction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Accessing the Define Transaction Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Action Steps. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Selecting and Arranging Action Steps. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Grouping Action Steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using Comments. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding Action Steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Copying Action Steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Moving Action Steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Removing Action Steps. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Displaying the Transaction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Searching in the Transaction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining Action Steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Help for Action Steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining Announce. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Speak with Interrupt?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Field Name/Phrase Tag/Text String . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Application Development with Script Builder 585-313-206

213
216
217
217
218
218
219
220
222
224
224
225
226
229
233
233
233
235
235

Issue 2 January 2000 xix

Contents

Field Format. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using the NX Field Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using Announce versus Prompt & Collect. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining the Announce Action Step . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining Answer Phone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining Comment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining Disconnect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining Evaluate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
What the Evaluate Action Step Does. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining the Evaluate Action Step . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Nesting Evaluate Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining External Function. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining Get Host Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Get Host Screen Error Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining Goto Label . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining Label . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining Modify Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining Prompt & Collect . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Prompting the Caller for Input (Page 1, PROMPT) . . . . . . . . . . . . . . . . . . . . . .
Specifying Caller Input (Page 2, INPUT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Caller Input Field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Number of Tries Used . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Number of Digits Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Application Development with Script Builder 585-313-206

236
236
237
238
240
242
244
245
245
249
253
255
258
262
265
267
269
273
274
275
276
277
277

Issue 2 January 2000 xx

Contents

Minimum Number of Digits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Maximum Number of Digits. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Touch-Tone Terminator Code Activity Status . . . . . . . . . . . . . . . . . . . . . . . .
Touch-Tone Terminator Code Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Touch-Tone Repeat Code Activity Status . . . . . . . . . . . . . . . . . . . . . . . . . . .
Touch-Tone Repeat Code Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Touch-Tone Erase Code Activity Status . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Touch-Tone Erase Code Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Touch-Tone Cancel Code Activity Status . . . . . . . . . . . . . . . . . . . . . . . . . . .
Number of Tries to Get Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Initial Timeout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Interdigit Timeout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Recognizer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Recognition Type. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Analyzing Input from the Caller
(Page 3, CHECKLIST) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Standard Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Custom Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Specifying the Confirm Action. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining the Prompt & Collect Action Step . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Prompt & Collect: Tips . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Transfer To and Quit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Interrupt and Touch Tones. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining Quit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining Read Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Application Development with Script Builder 585-313-206

277
277
278
278
278
279
279
279
279
280
280
280
280
281
281
282
285
290
291
301
301
304
305
306

Issue 2 January 2000 xxi

Contents

Table Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Search from Beginning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Field Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
First / Second Operand and Operator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
$MATCH_FOUND . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Example. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining the Read Table Action Step . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining Send Host Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining Set Field Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining Transfer Call . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Transfer Call To . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Blind Transfer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Intelligent Transfer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Full CCA Transfer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Non-Blind Transfer Call Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Maximum Number of Rings. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Answer Phrase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
New Caller State . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Goto Labels. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining the Transfer Call Action Step . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Transfer Call: Tips . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Transfer Call Performance Issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining Background. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Application Development with Script Builder 585-313-206

306
306
307
308
308
309
310
312
316
318
319
319
320
321
323
324
324
324
324
325
325
328
328
330

Issue 2 January 2000 xxii

Contents

Defining Call Bridge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Phone Number. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Equipment Group Number. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Outcome of Call (Call Disposition). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Blind Call Bridge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Intelligent Call Bridge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Full CCA Call Bridge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Maximum Number of Rings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Return Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining the Call Bridge Action Step . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Call Bridge: Tips . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Call Bridge Performance Considerations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining Execute . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Application Name. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Write Call Data Record Now? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Argument 1 to Argument 10. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Return Field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining the Execute Action Step . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Execute: Tips . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining Make Call . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Phone Number. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Outcome of Call (Call Disposition). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Application Development with Script Builder 585-313-206

334
338
338
339
339
339
340
343
343
346
346
348
349
351
351
352
353
353
354
356
357
358
358
358

Issue 2 January 2000 xxiii

Contents

Blind Make Call . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Intelligent Make Call . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Full CCA Make Call. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Maximum Number of Rings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining the Make Call Action Step . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Make Call Performance Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining Message Coding . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Code Rate and Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Maximum Phrase Length. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Phrase Number or Tag. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Phrase Identification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Talkfile Number . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Initial Timeout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Completion Timeout. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Start Coding At Tone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Hangup Action . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Actual Phrase Length Field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
NX Field (Talkfile & Phrase) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Return Field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining the Message Coding Action Step . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Message Coding: Tips . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining Message Deleting . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Phrase Number or Tag. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Phrase Identification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Talkfile Number . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Application Development with Script Builder 585-313-206

358
359
363
363
364
366
367
368
370
371
371
372
375
375
376
376
377
377
378
378
381
383
384
384
385

Issue 2 January 2000 xxiv

Contents

Return Field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385
Defining the Message Deleting Action Step . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
Defining Type Ahead . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387

8 Using Optional Features

390

Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using Text-to-Speech . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using TTS in an Announce or Prompt & Collect Action Step . . . . . . . . . . . . . .
Specifying Text or Field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Entering Text . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Field Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using TTS in the External Function tts_file . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Text-to-Speech: Tips . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using Dial Pulse Recognition or Speech Recognition . . . . . . . . . . . . . . .
Defining the SP_Allocate External Action . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Prompt & Collect Action Step . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Specifying Input Mode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Specifying the Confirm Action. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
$CI_MODE Return Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
$CI_RECOG Return Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
$FINDBEST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using Dial Pulse Recognition . . . . . . . . . . . . . . . . . . . . . . . . . . .
Specifying Input Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Recognition Type. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Application Development with Script Builder 585-313-206

390
391
392
392
392
394
397
399
401
402
405
405
407
408
408
409
409
410
410

Issue 2 January 2000 xxv

Contents

$CI_VALUE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Training . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Verifying DPR Input. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining the DPR_Disable External Action . . . . . . . . . . . . . . . . . . . . . . . . . .
Using WholeWord Speech Recognition . . . . . . . . . . . . . . . . . . . . . .
Languages Available . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Specifying Input Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Recognition Type. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
$CI_VALUE Return Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Verifying WholeWord Speech Recognition Input . . . . . . . . . . . . . . . . . . . . .
Defining the SR_Prompt External Action . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using FlexWord Speech Recognition . . . . . . . . . . . . . . . . . . . . . . .
Languages Supported . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Specifying Input Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
$CI_VALUE Return Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Verifying FlexWord Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Intuity Script Builder FAX Actions Package . . . . . . . . . . . . . . . . . . . .
Requirements to Use the Intuity Script Builder FAX Actions Package. . . . . . . .
Fax File Formats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
How Intuity Script Builder FAX Actions Works . . . . . . . . . . . . . . . . . . . . . . . . . .
Some Uses for Intuity Script Builder FAX Actions in Your Applications . . . . . . .
Accessing the FAX Actions on the Script Builder Action Choices Menu . . . . . .
FAX_Send . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FAX_Send: How to Use It . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Application Development with Script Builder 585-313-206

412
412
412
413
414
415
416
416
418
419
419
422
422
423
425
425
425
426
427
427
431
435
437
437

Issue 2 January 2000 xxvi

Contents

FAX_Send: Arguments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FAX_Send: Tips . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FAX_Send: Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FAX_Get . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FAX_Get: How to Use It . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FAX_Get: Arguments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FAX_Get: Tips. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FAX_Get: Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FAX_CovrPage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FAX_CovrPage: Arguments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FAX_CovrPage: Tips. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FAX_CovrPage: Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FAX_Queue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FAX_Queue: Arguments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Exec_UNIX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Exec_UNIX: How to Use It . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Exec_UNIX: Arguments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Exec_UNIX: Tips. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Exec_UNIX: Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Concat5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Concat5: How to Use It . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Concat5: Arguments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Concat5: Tips . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Concat5: Example. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FAX_CNG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Application Development with Script Builder 585-313-206

438
442
443
444
444
446
446
447
447
447
449
449
451
451
452
452
453
454
456
456
457
458
459
459
460

Issue 2 January 2000 xxvii

Contents

FAX_CNG: What It Does. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FAX_CNG: How to Use It . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FAX_CNG: Arguments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FAX_CNG: Tips. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FAX_CNG: Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Loading and Printing FAXes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Sending Graphic Files and Text Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Accessing the FAX Loading and Printing Screen . . . . . . . . . . . . . . . . . . . . .
Loading the Fax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Printing the Fax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Searching for Available Faxes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FAX_Zapper. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Installing and Using the FAX_Zapper . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Modifying FAX_Zapper . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Application Performance Considerations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Fax Broadcasting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Loading More Than 999 Faxes into the System . . . . . . . . . . . . . . . . . . . . . . . .
How to Use the faxlog Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using Script Builder FAX Actions in Non-Script-Builder (TAS) Applications . . .
Troubleshooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
HELP Screens. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Script Builder Action Step Return Values . . . . . . . . . . . . . . . . . . . . . . . . . . .
Application Tracing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FAX Transmission Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
faxit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Application Development with Script Builder 585-313-206

460
461
462
462
463
464
464
465
468
470
471
472
476
479
481
482
484
485
486
486
487
487
487
488
488

Issue 2 January 2000 xxviii

Contents

Error Log Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using ASAI. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining A_Callinfo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining the A_Callinfo Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining A_Tran . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining the A_Tran Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining A_Event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining the A_Event Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining A_RouteSel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining the A_RouteSel Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining conv_data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining Data-Passing Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining Data-Return Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
conv_data: Tips . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using Call Classification Analysis . . . . . . . . . . . . . . . . . . . . . . . . .
Full CCA Call Dispositions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using PRI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining ISDN_billing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Requesting ANI for Inbound Calls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining Service Type for Outbound Calls . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining UCID Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using Form Filler Plus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Customizing a Form Filler Plus Application . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Error-Handling Capabilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Application Development with Script Builder 585-313-206

489
489
491
493
497
499
505
508
519
521
525
528
530
534
535
535
538
540
542
543
546
547
547
548

Issue 2 January 2000 xxix

Contents

Form Filler Plus Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Form Filler Plus Action Steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using FF_Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FF_Code: Tips . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using FF_Store . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using the Form Retriever. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Password. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Script ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Form Filler Plus Transcribe Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Form Filler Plus Review Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using the Form Filler Plus Template . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Copying the FFTemplate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining Parameters for your Application . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining the Transaction for your Application . . . . . . . . . . . . . . . . . . . . . . . .
Customizing the FFtemplate for Your Application . . . . . . . . . . . . . . . . . . . . .
Producing Speech for your Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Installing your Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Assigning your Application to Channels or Called Numbers. . . . . . . . . . . . .
Sample Marketing Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
First Form Prompt: Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Second Form Prompt: Telephone Number . . . . . . . . . . . . . . . . . . . . . . . . . .
Third Form Prompt: Street Address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Fourth Form Prompt: City . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Application Development with Script Builder 585-313-206

548
549
549
555
558
560
562
562
563
563
567
569
574
575
576
592
595
597
597
598
599
600
600
600
601

Issue 2 January 2000 xxx

Contents

Fifth Form Prompt: State. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Sixth Form Prompt: Zip Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Seventh Form Prompt: Message. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Speech Used in the Sample Marketing Application . . . . . . . . . . . . . . . . . . .

9 Speech Administration

629

Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Speech Terminology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Phrases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Phrase Tags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Predefined Phrase Tags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Inflections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Enhanced Basic Speech . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Custom Speech. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
The Speech Administration Window . . . . . . . . . . . . . . . . . . . . . . . .
Accessing Speech Administration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Displaying Phrase Tags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding Phrase Tags. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Recording, Editing, and Playing Speech . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Hardware Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Establishing a Telephone Connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Recording Speech. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Encoding Speech Through the Audio Jack . . . . . . . . . . . . . . . . . . . . . . . . . .
Encoding Recorded Speech . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Application Development with Script Builder 585-313-206

601
601
602
602

629
630
630
630
631
632
635
636
637
638
640
643
645
646
647
648
652
654

Issue 2 January 2000 xxxi

Contents

Editing Speech . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Playing Speech . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Copying Speech. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Importing Speech . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Removing Speech . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Unrecorded Phrases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Recorded Phrases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Sharing Speech . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Restoring Speech . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Enhanced Basic Speech Library. . . . . . . . . . . . . . . . . . . . . . . . . .
Professionally Recorded Speech . . . . . . . . . . . . . . . . . . . . . . . . .

10 Application Administration

672

Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Verifying and Installing an Application . . . . . . . . . . . . . . . . . . . . . . .
Verifying an Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Installing an Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Host Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
hnewscript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
sb_trace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Removing an Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Backing Up an Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Application Development with Script Builder 585-313-206

656
659
660
661
664
664
664
665
666
668
670
671

672
673
674
676
677
678
679
681
685

Issue 2 January 2000 xxxii

Contents

Backup Media . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Backup Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Restoring an Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Copying an Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Executing Multiple Applications . . . . . . . . . . . . . . . . . . . . . . . . . .
Error and Warning Messages . . . . . . . . . . . . . . . . . . . . . . . . . . .
Formats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Lists of Related Messages. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Host Maintenance Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Transaction Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Host Screen Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Database Definition. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Parameters Standards Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
External Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Trace Diagnostics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

11 Using Advanced Features

709

Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using External Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining External Functions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Help For External Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Extracting Arguments from the Execute Action . . . . . . . . . . . . . . . . . . . . . . . . .
getarg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Execute Action Arguments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Application Development with Script Builder 585-313-206

686
687
691
695
697
697
698
699
699
701
706
706
706
707
707

709
710
710
716
717
717
720

Issue 2 January 2000 xxxiii

Contents

Char Field Manipulation Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
length . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
concat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
substring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
parse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Intelligent Transfer Call Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Complete. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Reconnect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ixfer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Transfer Call Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
transfera . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
transferb . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Time and Date Functions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
u_datetime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
datetime_u . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Supported Dates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Talkfile and Phrase Manipulation Functions . . . . . . . . . . . . . . . . . . . . . . . . .
pack_phrNX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
unpack_phrNX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Talkfile and Phrase Manipulation: Tips . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
UCID Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
get_ucid. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
get_uui . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
set_uui. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Fax Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Application Development with Script Builder 585-313-206

722
723
723
724
725
725
725
726
726
727
727
727
728
728
729
729
730
730
730
731
732
732
733
733
734

Issue 2 January 2000 xxxiv

Contents

text2fax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Writing External Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Naming Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Macros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DEFARG(fldname, datatype,direction) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DEFARG_COUNT(n) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Arguments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Return Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Allocating Space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Providing Function-Specific Help. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Interfacing with Hosts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Identifying Similar Host Screens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Interchangeable Host Screens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Noninterchangeable Host Screens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Locating External Host Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
new_screen and extract Routines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
fancy_print Routine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Helper DIP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using ORACLE Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Mapping Datatypes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ASCII Character Set Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . .
Creating Multilingual Applications . . . . . . . . . . . . . . . . . . . . . . . . .
Language-Specific Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Application Development with Script Builder 585-313-206

734
736
736
738
738
739
739
741
742
743
746
746
747
751
751
753
756
757
759
760
761
762
764

Issue 2 January 2000 xxxv

Contents

A Sample Application
Overview . . . . . . . . . . . . . . . . .
Transaction Outline . . . . . . . . . . .
Host Session Maintenance Outline . . .
Standard Phrases . . . . . . . . . . . .
Custom Phrases . . . . . . . . . . . . .
Parameters. . . . . . . . . . . . . . . .
Host Interface Screen Names and Fields
Database Tables and Fields . . . . . . .
Transaction and System Fields . . . . .

766
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

B Developing Language Implementations

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

800

Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Overview of Developing Language Implementations . . . . . . . . . . . . . . .
Defining the Language File and Directory . . . . . . . . . . . . . . . . . . . . .
Defining the Speech Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . .
format_tag. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
tag_groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
format_code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
proto.pl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining the TTS Tables. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
TTSformat_tfile and TTSformat_cfile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Application Development with Script Builder 585-313-206

766
767
778
781
794
796
797
798
799

800
801
802
802
802
804
804
807
807
808

Issue 2 January 2000 xxxvi

Contents

Phrase List File for EBS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Conventions for Language Implementations. . . . . . . . . . . . . . . . . . . .
Phrase Tags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Format Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Phrase Numbers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Rules for Creating Script Subroutine Source Files . . . . . . . . . . . . . . . . . . . .
Verifying Format and Consistency of Language Definition Files. . . . . . . . . .

808
809
809
810
811
812
813

Glossary

814

Index

898

Application Development with Script Builder 585-313-206

Issue 2 January 2000 xxxvii

About This Book
Overview
This book provides descriptions and procedures for the development,
installation, and modification of applications with the Intuity CONVERSANT
Script Builder application development tool.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 xxxviii

About This Book

Intended Audience

Intended Audience
The intended audience for this book includes:
•

End customer application developers who create and maintain Intuity
CONVERSANT applications for their own environment

•

Custom application developers who create Intuity CONVERSANT
applications for end-user customers, including:
~ Custom application development organizations within Lucent
~ Application distributors, often called independent software vendors

(ISVs), who distribute and implement applications for end-users
We assume that the primary users of the this book have completed the Script
Builder application development training course (see Training on page l).

How to Use This Book
This book is organized as follows:
•

Background information is included in Chapter 1, Overview, Chapter 2,
User Interface, and Chapter 3, Data Management.
Read these chapters to find out what Script Builder is, how the user
interface (display screens on your video monitor) is organized, and how to
describe information (data) so that Script Builder can process it.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 xxxix

About This Book

How to Use This Book
•

Procedural information is included in the remainder of the chapters. Read
these chapters, and then refer to them while you are developing your
Script Builder application.
Chapter 5, Creating Database Tables, Chapter 6, Defining Parameters,
Chapter 7, Defining the Transaction, and Chapter 9, Speech
Administration, are presented in the preferred sequence for defining a
Script Builder application.
Chapter 8, Using Optional Features, applies only to optional features.
Your system will probably include some of these features.
Chapter 10, Application Administration,describes procedures for
administration of an application after it is written.
Chapter 11, Using Advanced Features, describes the use of advanced
features, which may be helpful or required for your application.

•

Appendix A, Sample Application, shows the Script Builder transaction and
supporting files for the fictitious River Bank application, which is used as
an example to demonstrate several commonly used processes.

•

Appendix B, Developing Language Implementations, provides information
to build the language files required to support a Script Builder application
when making changes to a language package.

Use this book not only for necessary procedures, but also for ideas about
what Script Builder can do for your business, or how to improve an
application after it has been used for a while.
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 xl

About This Book

Conventions Used in This Book

Conventions Used in This Book
Understanding the typographical and other conventions used in this book is
necessary to interpret the information.
Terminology

•

The word “type” means to press the key or sequence of keys specified.
The word “type” means to press the key or sequence of keys specified.
For example, an instruction to type the letter “y” is shown as
Type y to continue.

•

The word “enter” means to type a value and then press the EN TER key
on the keyboard. For example, an instruction to type the letter “y” and
press EN TER is shown as
Enter y to continue.

•

The word “select” means to move the cursor to the desired item and then
press E NT ER . For example, an instruction to move the cursor to the start
test option on the Network Loop-Around Test screen and then press
EN TE R is shown as
Select Start Test.

•

The system displays menus, screens, and windows. Menus allow you to
select options or to choose to view another menu, screen, or window
(Figure 1 on page xlii). Screens and windows both show and request
system information (Figure 2 on page xlii through Figure 5 on page xliv).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 xli

About This Book

Conventions Used in This Book
Figure 1.

Example of a CONVERSANT Menu

Figure 2.

Example of a CONVERSANT Window Showing Information

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 xlii

About This Book

Conventions Used in This Book
Figure 3.

Example of a CONVERSANT Screen Requesting Information

Figure 4.

Example of a CONVERSANT Window Requesting Information

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 xliii

About This Book

Conventions Used in This Book
Figure 5.

Note:

Keyboard and
Telephone Keypad
Representations

•

Example of a CONVERSANT Screen Showing Information

Screens shown in this book are examples only. The screens you
see on your machine will be similar, but not exactly the same.

Keys that you press on your terminal or PC are represented as small
capitalized B OL D text. For example, an instruction to press the enter key
is shown as
Press EN TE R .

•

Two or three keys that you press at the same time on your terminal or PC
(that is, you hold down the first key while pressing the second and/or third
key) are represented in small capitalized BO LD text. For example, an
instruction to press and hold the Alt key while typing the letter “d” is shown
as
Press ALT + D.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 xliv

About This Book

Conventions Used in This Book
•

Function keys on your terminal, PC, or system screens, also known as
soft keys, are represented as small capitalized B O LD text followed by the
function or value of that key enclosed in parentheses. For example, an
instruction to press function key 3 is shown as
Press F3 (Choices).

•

Keys that you press on your telephone keypad appear in small capitalized
BO LD text. For example, an instruction to press the first key on your
telephone keypad is shown as
Press 1 to record a message.

Cross References
and Hypertext

Blue underlined type indicates a cross reference or hypertext link that takes
you to another location in the document when you click on it with your mouse.

Screen Displays

•

Values, system messages, field names, prompts that appear on the
screen, and simulated screen displays are shown in typewriter-style
constant width type, as in the following examples:
Enter the number of ports to be dedicated to outbound traffic in the
Maximum Simultaneous Ports field.
Alarm Form Update was successful.
Press  to continue.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 xlv

About This Book

Conventions Used in This Book
•

The sequence of menu options that you must select to display a specific
screen or submenu is shown as follows:
Start at the CONVERSANT Main Menu and select:
> Voice System Administration
> Script Builder Applications

In this example, you would access the CONVERSANT Main Menu and
select the Voice System Administration menu. From the Voice System
Administration menu, you would then select the Script Builder
Applications screen.

Other Typography

•

Screens shown in this book are examples only. The screens you see on
your machine will be similar, but not exactly the same.

•

Commands and text you type in or enter appear in bold type, as in the
following examples:
Enter change-switch-time-zone at the Enter command: prompt.
Type high or low in the Speed: field.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 xlvi

About This Book

Safety and Security Alert Labels
•

Command variables are shown in bold italic type when they are part of
what you must type in, and in blue italic type when they are referred to, for
example:
Enter ch ma machine_name, where machine_name is the name of
the call delivery machine you just created.

•

Command options are shown inside square brackets, for example:
Enter connect switchname [-d] [-b | -w]

Safety and Security Alert Labels
This book uses the following symbols to call your attention to potential
problems that could cause personal injury, damage to equipment, loss of
data, service interruptions, or breaches of toll fraud security:
! CAUTION:
Indicates the presence of a hazard that if not avoided can or will cause minor
personal injury or property damage, including loss of data.
! WARNING:
Indicates the presence of a hazard that if not avoided can cause death
or severe personal injury.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 xlvii

About This Book

Getting Help

! DANGER:
Indicates the presence of a hazard that if not avoided will cause death
or severe personal injury.
! SECURITY ALERT:
Indicates the presence of a toll fraud security hazard. Toll fraud is the
unauthorized use of a telecommunications system by an unauthorized
party.

Getting Help
The Intuity CONVERSANT system provides online help to assist you during
installation, administration, and application development tasks.
To use the online help:
•

Press F1 (Help) when you are in a menu or window.
The first time you press F1 , the system displays information about the
currently active window or menu.
~ When you are in a window, the help explains the purpose of the

window window and describes its fields.
~ When you are in a menu, the help explains how to use menus.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 xlviii

About This Book

Technical Assistance
If you press F1 again, the system displays a General Help screen that
explains how to use the online help.
•

Press F2 (Choices) when you are in a field.
The system displays valid field choices either in a pop-up window or on
the status line directly above the function keys.

•

Press F6 (Cancel) to exit the online help.

Technical Assistance
Web Site

The following customer support web site contains resources where you can
find solutions for technical problems:
http://support.lucent.com

Contact Numbers

Technical assistance on the Intuity CONVERSANT product is available
through the following telephone contacts:
•

In the United States, call 1-800-242-2121.

•

In Canada, call one of the following numbers, depending on your location:
~ 1-800-363-1882 for assistance in Quebec and eastern Canada
~ 1-800-387-4268 for assistance in Ontario and western Canada

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 xlix

About This Book

Related Resources
•

In any other country, call your local distributor or check with your project
manager or systems consultant.

Related Resources
Additional documentation and training material is available for you to learn
more about the Intuity CONVERSANT product.
Training

To obtain training on the Intuity CONVERSANT product, contact the BCS
Education and Training Center at one of the following numbers:
•

Organizations within Lucent Technologies (904) 636-3261

•

Lucent Technologies customers and all others (800) 255-8988

You can also view information on Intuity CONVERSANT training at the
Global Learning Solutions (GLS) web site at one of the following web links:
•

Organizations within Lucent Technologies
http://training.gls.lucent.com

•

Lucent Technologies customers and all others
http://www.lucenttraining.com

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 l

About This Book

Related Resources
The courses listed below are recommended. Other courses are available.
•

For technicians doing repairs on Intuity CONVERSANT V7.0 systems
~ BTT509H, CONVERSANT Installation and Maintenance Voice

Information System
•

For technicians and administrators
~ BTC344M, Intuity CONVERSANT V7 Administration Overview (CD-

ROM)
•

For application developers
~ BTC128H, Introduction to Script Builder
~ BTC166H, Introduction to Voice@Work
~ BTC204H, Intermediate Voice@Work
~ BTC301H, Advanced CONVERSANT Programming

Documentation

Appendix A, "Documentation Guide," in Intuity CONVERSANT System
Version 7.0 System Description, 585-313-204, describes in detail all books
included in Intuity CONVERSANT documentation library and referenced in
this book.
Note:

Always refer to the appropriate book for specific information on
planning, installing, administering, or maintaining an Intuity
CONVERSANT system.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 li

About This Book

Using the CD-ROM Documentation
Additional Suggested Documentation

It is suggested that you also obtain and use the following book for information
on security and toll fraud issues:
•

GBCS Products Security Handbook, 555-025-600

Obtaining Printed Versions of the Documentation

See Documentation Ordering Information on page viii of Copyright and Legal
Noticesfor information on how to purchase Intuity CONVERSANT
documentation in printed form. You can also print documentation locally from
the CD-ROM (see Printing the Documentation on page liv).
ELMO

For customers with service agreements, the ELMO (Electronic Library
Material Online) system is accessible to search and view over one thousand
documents including system and feature descriptions, administration guides,
and maintenance manuals for a vast array of systems and adjuncts at:
http//www.lucent.com/enterprise/selfservice/information_resources/elmo

Using the CD-ROM Documentation
Lucent Technologies ships the documentation in electronic form. Using the
Adobe Acrobat Reader application, you can read these documents on a
Windows PC, on a Sun Solaris workstation, or on an HP-UX workstation.
Acrobat Reader displays high-quality, print-like graphics on both UNIX and
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 lii

About This Book

Using the CD-ROM Documentation
Windows platforms. It provides scrolling, zoom, and extensive search
capabilities, along with online help. A copy of Acrobat Reader is included with
the documents.
Note:

When viewing documents online, it is recommended that you use
a separate platform and not the Intuity CONVERSANT system.

Setting the Default
Magnification

You can set your default magnification by selecting File | Preferences |
General. We recommend the Fit Page option.

Adjusting the
Window Size

On HP and Sun workstations, you can control the size of the reader window
by using the -geometry argument. For example, the command string
acroread -geometry 900x900 mainmenu.pdf opens the main menu with a
window size of 900 pixels square.

Hiding and
Displaying
Bookmarks

By default, the document appears with bookmarks displayed on the left side
of the screen. The bookmarks serve as a hypertext table of contents for the
chapter you are viewing. You can control the appearance of bookmarks by
selecting View | Page Only or View | Bookmarks and Page.

Using the Button
Bar

The button bar can take you to the book’s Index, table of contents, main
menu, and glossary. It also lets you update your documents. Click the
corresponding button to jump to the section you want to read.

Using Hypertext
Links

Hypertext links appear in blue underlined text. These links are shortcuts to
other sections or books.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 liii

About This Book

Using the CD-ROM Documentation

Navigating with
Double Arrow Keys

The double right and double left arrows (
and
) at the top of the
Acrobat Reader window are the go-back and go-forward functions. The goback button takes you to the last page you visited prior to the current page.
Typically, you use
to jump back to the main text from a cross reference or
illustration.

Searching for
Topics

Acrobat has a sophisticated search capability. From the main menu, select
Tools | Search. Then select Master Index.

Displaying Figures

If lines in figures appear broken or absent, increase the magnification. You
might also want to print a paper copy of the figure for better resolution.

Printing the
Documentation

Note:

For information on purchasing printed copies of the documents,
see Obtaining Printed Versions of the Documentation on page lii.

If you would like to read the documentation in paper form rather than on a
computer monitor, you can print all or portions of the online screens.
Printing an Entire Document

To print an entire document, do the following:
1 From the documentation main menu screen, select one of the print-

optimized documents. Print-optimized documents print two screens to a
side, both sides of the sheet on 8.5x11-inch or A4 paper.
2 Select File | Print.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 liv

About This Book

How To Comment on This Book
3 Enter the page range you want to print, or select All. Note that the print

page range is different from the page numbers on the documents (they
print two to a page).
4 The document prints.
5 Close the file. Do not leave this file open while viewing the electronic

documents.
Printing Part of a Document

To print a single page or a short section, you can print directly from the online
version of the document.
1 Select File | Print.
2 Enter the page range you want to print, or select Current.

The document prints, one screen per side, two sides per sheet.

How To Comment on This Book
While we have tried to make this document fit your needs, we are interested
in your suggestions for improving it and urge you to send your comments to
us.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 lv

About This Book
Comment Form

How To Comment on This Book
A comment form, available in paper and electronic versions, is available via
the documentation CD-ROM. To use the comment form:
1 Select Comments from the Main Menu of the CD-ROM.
2 Follow the instructions provided on the CD-ROM to do one of the

following:
~ Print the paper version of the form, complete it, and either fax or mail it

to us.
~ Access a Lucent Technologies website where you can enter your

comments electronically.
Contact Us Directly

If you prefer not to use the comment form, you can contact us directly at the
following address or fax number.
Note:

Direct your correspondence to the attention of the Lucent
Technologies Intuity CONVERSANT writing team. Be sure to
mention the title of the book on which you are commenting.

Lucent Technologies
GLS Information Development Division
Room 22-2H15
11900 North Pecos Street
Denver, CO 80234-2703 US
Fax 1 303-538-1741

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 lvi

1 Overview
Overview
This chapter provides application developers with an introduction to the
capabilities of Script Builder and a preview of the steps required to build an
application.
The chapter offers a high-level overview of the Intuity CONVERSANT system
Version 7.0 Script Builder. You will learn what a Script Builder application is
and develop a basic understanding of how to use Script Builder. This includes
how to define the application components, verify and install the application,
and test the generated application.
Note:

Before beginning application development with Script Builder, you
must have a running version of the Intuity CONVERSANT Script
Builder software installed. See Chapter 8, “Installing the Optional
Feature Software,” in the maintenance book for your platform.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 1

1

Overview

What Is Script Builder?

What Is Script Builder?
Script Builder is a development tool that allows you to design and create
Intuity CONVERSANT system applications that automate most functions
performed by operators or agents. These include:
•

Listening and responding to callers

•

Making selections based on caller input

•

Accessing a host computer to retrieve, report, and update customer
information

•

Looking up database information

•

Modifying database information

•

Transferring calls to an agent

Script Builder provides screens in which you can select or enter your choices
to create your applications. Extensive experience with computers and
computer programming is not essential for you to understand and use Script
Builder, but some experience with computers, and some experience with
flowcharts or an introductory programming class would be helpful. You will be
writing (defining) a transaction (the steps in an application) by selecting steps
in the correct sequence to match the needs of your business. When you
install your completed transaction, Script Builder creates the lines of
computer code for you.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 2

1

Overview

What Is an Application?

What Is an Application?
An application is a computer program that automates the communication
between a caller and an operator or an agent. An application may be simple
or complex. In a simple example, a caller requests specific information, and
the system responds with the requested information. In a more complex
example, a caller requests information, the system in turn asks for
information from the caller, and then accesses a host computer to retrieve the
information to fulfill the request. A complex application can also store input
from a caller in a database or host computer.
An application includes several components. Interactions with a host
computer or database may be required to retrieve information about
customers or about products your company offers. The parameters describe
the setting of the application, such as hours of operation. The actual
exchanges between caller and agent comprise the transaction. You develop
an application in Script Builder by defining the transaction on the screen. The
speech for the application includes the text and phrases that you want the
application to be able to speak to callers. The script for an application is the
computer code Script Builder creates when you install the completed
transaction.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 3

1

Overview

Transaction for a Sample Application

Transaction for a Sample Application
River Bank is a typical bank with several employees or agents who inform
callers of the current interest rates for different types of accounts and loans,
give them their account balances, and transfer them to specialized customer
service representatives for further information. The agents also answer a
variety of other questions. Some of the information, such as interest rates, is
located on paper in front of the agents. Other information, such as account
balances, must be obtained from the bank’s computer.
The River Bank
Agent Example

To understand how River Bank agents perform their job, examine a typical
conversation, or transaction, between a caller and an agent.
Agent: “River Bank. How may I help you?”
Caller: “What is the current interest rate on your automobile loans?”
Agent: (referring to a chart of interest rates) “The interest rate for our
automobile loans is 7.9%. May I help you with anything else?”
Caller: “Yes. I would like to check the balance in my checking account.”
Agent: “What is your ID number?”
Caller: “00001.”
Agent: “May I have the last four digits of your social security number?”
Caller: “9087.”

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 4

1

Overview

Transaction for a Sample Application
Agent: “One moment please (calls up the account balance on a
terminal). Your checking account balance is $2,010.27. May I
help you with anything else?”
Caller: “Yes. I would like to check the balance in my savings account.”
Agent: “Your savings account balance is $7,354.63. May I help you
with anything else?”
Caller: “Yes, I would like to speak to someone about an automobile loan.”
Agent: “One moment please. I will transfer you to one of our customer
service representatives.” (transfers caller to a loan officer)

Caller and Agent
Interactions

Looking at the sample transaction, you see the following types of interactions
between the caller and the agent:
1 The agent greets the caller.
2 The agent prompts the caller and receives a request for information

(interest rate, account balance, etc).
3 The agent takes the following action on the caller’s request:
a If necessary, the agent prompts the caller for further information (type

of rate, type of account, ID number, etc).
b The agent looks up the information.
c The agent reports the information.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 5

1

Overview

Transaction for a Sample Application
4 The agent repeats Steps 2 and 3.
5 The agent ends the call or transfers the caller to a customer service

representative.
Most transactions include these basic steps. Based on the transaction and
the caller’s request, the interaction may be simple or complex. For example,
in our sample transaction, when the caller asks for an interest rate, the agent
simply looks at a chart and reads the information to the caller. However,
when the caller wants to know account balance information, the agent must
ask for additional information (the caller’s ID number and password), use a
computer terminal to type the caller’s account number, verify the password,
and read the balance displayed on the screen. This simple example does not
include the process of storing input from a caller in a database or host
computer.
Automating the
Transaction

When automating an application using the Intuity CONVERSANT system and
Script Builder, think about your application in terms of the system replacing
the agent. The transactions remain the same, but the caller interacts with the
computer instead of an agent. When using Script Builder, you are building the
set of instructions for the system to use during a call. The computer reads the
script (resulting from the Script Builder transaction you define) for instructions
about what to say and how to respond to caller inputs.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 6

1

Overview

Developing an Application

Developing an Application
Developing an application includes the following phases:
•

Understanding the Application Requirements on page 7

•

Defining the Application on page 8

•

Verifying and Installing the Application on page 15

•

Testing the Application on page 16

Understanding the Application Requirements
The first step in building an application involves deciding exactly what you
want the application to accomplish. You should be familiar enough with the
application to be able to act as an agent for a transaction. To determine the
requirements, you may want to ask yourself questions such as the following:
•

What services and/or assistance can you provide to callers?

•

What do you want to say to callers?

•

How will you access the information that callers request (by referencing a
chart stored in a database or accessing a host computer system)?

•

How will you respond to callers’ requests for actions?

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 7

1

Overview

Defining the Application
•

What do you do if the caller has a question or problem beyond the scope
of the application?

Defining the Application
The second step in building an application is deciding what you want the
application to accomplish, and relaying that information to Script Builder.
To make defining the application easier, Script Builder divides the application
into five key parts or components (listed in the preferred sequence):

The Host Interface

•

Host interface

•

Database tables

•

Parameters

•

Transaction

•

Speech administration

Defining the host interface means using Script Builder to tell the Intuity
CONVERSANT system how to contact the host computer to exchange
information. A host interface is optional and typically includes the following:
•

Capturing images of host login screens and customer account screens
used in the transaction

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 8

1

Overview

Defining the Application
•

Identifying areas on each screen to which information will be sent to or
received from the host computer

•

Specifying host activities that occur in the background as opposed to the
activities that occur as part of a caller transaction

In the River Bank example, the agent looked at the screen of a host computer
to determine the caller’s account information.
For detailed information about defining the host interface, see Chapter 4,
Defining the Host Interface.
Database Tables

You may provide either local or remote database tables for the application to
use. Database tables are stored in the ORACLE Relational Data Base
Management System (DBMS). An application can use these database tables
for looking up data or for saving data input from the caller.
Note:

The database functions that are provided through the ORACLE
DBMS are restricted by license to Intuity CONVERSANT system
applications.

To create database tables, you must specify the structure of each table and
you must also provide the data to be stored in that table.
In the sample application, the interest rate information is stored in a database
table. To build this table, you must identify the types of accounts and loans for
which the application will provide information. Then you must determine the

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 9

1

Overview

Defining the Application
interest rate for each. For the sample River Bank application, the database
table information would be similar to that shown in Table 1 on page 10.
Table 1.

Interest Char

Account Type

Interest Rate

Savings

6.34%

Checking

5.60%

Mortgage

12.60%

Auto

7.90%

See Chapter 5, Creating Database Tables, for detailed information about
creating database tables.
Parameters

You have the option of including parameters in your application, which make
your instructions more general. Script Builder includes the following operating
environment parameters:
•

Business Hours — The hours an agent is available. During nonbusiness
hours, you can play a message to thank the callers and let them know
your business hours.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 10

1

Overview

Defining the Application
•

Call Data Events — Data from a call to be saved for later analysis. You
can use this information to measure the service you are providing your
callers, such as how long they were waiting for an agent.

•

Holidays — Individual days for which you want to inform callers that you
are closed. You can play a message to thank the callers and let them
know your business hours.

•

Host Interface Parameters — Data the application needs if interfacing
with a host. These parameters determine the way the information is
exchanged between your system and the host computer.

•

Seasonal Greeting — A range of dates for which the application gives a
special greeting. In addition to reminding your callers of your business
hours, you can also play an appropriate holiday message.

•

Shared Host Application — Names of up to eight applications with which
this application shares host interface elements.

•

Shared Speech Pools — Names of applications with which this
application uses the same speech phrases.

For detailed information about defining parameters, see Chapter 6, Defining
Parameters.
The Transaction

The transaction is the main part of an application. In the transaction, you
provide step-by-step details of what you want to happen during a telephone
call to the system. This includes the messages you want callers to hear, how

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 11

1

Overview

Defining the Application
the system should respond to a caller’s request, and how the system gets
information from a database or host computer.
To execute the River Bank sample application, the Intuity CONVERSANT
system completes a set of steps similar to the following:
1 Answer the telephone.
2 Play a greeting message.
3 Prompt for and receive the caller’s request. Go to step 4, step 5, step 6 or

step 7, depending on caller’s input.
4 Complete step a through step d if the caller requests interest rate

information:
a Prompt for type of rate.
b Look in the database for interest information.
c Tell the caller the interest rate.
d Return to Step 3.
5 Complete step a through step f if the caller requests account balance

information:
a Prompt for the ID number.
b Prompt for the last four digits of the social security number.
c Relay the caller’s account number to the host computer.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 12

1

Overview

Defining the Application
d Verify the social security number and get the account balance from the

host computer.
e Tell the caller the account balance.
f Return to Step 3.
6 Transfer the caller to a customer service representative if requested.
7 Thank the caller and disconnect if the caller indicates that additional

information is not needed.
Each of these steps would require greater detail in an actual application, such
as the exact phrases to be spoken, which host screen to send the customer
ID to, etc. Substeps must also be added to cover special cases, such as
when the host computer is down, there are no customer service
representatives on duty, or the caller provides incorrect input, etc. However,
this list gives you a general idea of the steps required for the transaction. For
detailed information about defining the transaction, see Chapter 7, Defining
the Transaction.
Speech

Nearly all applications involve playing recorded speech to the caller. Several
ways of including speech in your application are:
•

Recording the speech using Script Builder

•

Importing speech from another application

•

Purchasing professionally recorded speech from Lucent Technologies

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 13

1

Overview

Defining the Application
•

Sharing speech

•

Restoring speech (that is, from other applications)

To develop your application, you may want to begin with a set of Enhanced
Basic Speech phrases that are available from Lucent Technologies.
Enhanced Basic Speech includes letters, digits, and commonly used phrases
in different speaking inflections. Then you can add speech for phrases unique
to your application by using the recording capabilities provided in Script
Builder or the Graphical Speech Editor.
An important part of speech administration involves planning the exact
phrases you want the caller to hear and testing the phrases to be sure they
sound the way you expected. As an example, for the greeting message in the
sample application, decide whether you want the caller to hear “River Bank”
or “Welcome to River Bank, where your account, no matter how big or small,
is important to us.” Test your phrases on people who could respond as if they
were your customers.
The final version of your application should include speech recorded by one
speaker on a single set of recording equipment. You can ensure a consistent
voice for all phrases either by replacing the needed standard phrases with the
voice of your choice using Script Builder, or by having Lucent Technologies
record your custom phrases with the same voice used in the standard
phrases.
For more information about defining speech in Script Builder, see Chapter 9,
Speech Administration. See Appendix A, ‘‘Enhanced Basic Speech
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 14

1

Overview

Verifying and Installing the Application
Formats’’, in Intuity CONVERSANT System Version 7.0 Speech
Development, Processing, and Recognition, 585-313-201, for phrases and
languages available. This book contains detailed information about
developing and including speech in your application.

Verifying and Installing the Application
Before you can use your application, you must have the system convert it
from the Script Builder interface to a computer code script that the system
can follow when responding to a call. Converting the application involves two
steps: verifying and installing.
Verifying

Script Builder verifies that the application is complete by making sure that all
aspects of the transaction are defined: all loops are closed, all labels are
referred to, all required database or host computer connections are
established, all needed phrases are recorded, etc. Once verification is
complete, an executable version of the application is generated.
Note:

If the verification fails, Script Builder does not try to create an
executable version. Instead, Script Builder provides you with a list
of problems found. Use this list to make corrections to the
application, including closing process loops and recording any
required speech phrases.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 15

1

Overview

Installing

Testing the Application
The application installation procedure may vary depending on whether a host
interface definition or database is part of the application, whether it is a new
or running application, and whether other applications are running on the
same system. See Chapter 10, Application Administration, for detailed
information on installing your application.

Testing the Application
Once each component has been specified and the application is installed,
you should test the application to see if it accomplishes what you intended.
Assigning

Before testing the application, you must assign the application to a channel
(an incoming telephone line) or to a number or group of numbers obtained by
the system from the caller. Also, any features required by this application
must be assigned to the appropriate circuit card.
See Chapter 3, “Voice System Administration,” in Intuity CONVERSANT
System Version 7.0 Administration, 585-313-501, for information on
assigning features to circuit cards and assigning the application to a channel
or to number(s).

Testing

Test the application by calling in and trying different transactions. Your goal is
to make sure that the application performs as well as an agent to meet the
needs of your business and of your callers. For example, when you request
interest rate information, you want to make sure you get information on

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 16

1

Overview

Script Builder Transaction for a Sample Application
interest rates rather than account balances. Try to duplicate the same
mistakes your callers might make to test that your reprompts work as
expected. Also, it is a good idea to test your application with real callers, and
to make changes based on their performance and comments

Script Builder Transaction for a Sample Application
Now that the steps of building an application have been introduced, review
the River Bank transaction in Table 2 on page 17 to see how it looks to the
caller. In the previous version of the sample transaction, the caller interacted
with an agent. In the Script Builder version in Table 2 on page 17, the caller
interacts with the Intuity CONVERSANT system. The results are the same in
both cases — the caller receives the information requested. (See Appendix
A, Sample Application, for more details of this application.):
Table 2.

Sample — Script Builder Transaction

System:

“Hello, welcome to the River Bank automated information system. For current
interest rates, press 1. For your current account balances, press 2. To speak to
a customer service representative, press 3. To end this call, press #.”

Caller:

(presses 1 for interest rates)
1 of 4

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 17

1

Overview
Table 2.

Script Builder Transaction for a Sample Application

Sample — Script Builder Transaction

System:

“For savings account interest rates, press 1. For checking account interest
rates, press 2. For mortgage interest rates, press 3. For automobile loan interest
rates, press 4. To return to the main menu, press *.”

Caller:

(presses 4 for automobile loan interest rates)

System:

(looks in database) “The automobile loan interest rate is 7.90%.” “For savings
account interest rates, press 1. For checking account interest rates, press 2, for
...”

Caller:

(presses * to return to the main menu, interrupting the system playback)

System:

“For current interest rates, press 1. For your current account balances, press 2.
To speak to a customer service representative,
press 3. To end this call, press #.”

Caller:

(presses 2 for current account balance)

System:

“For your current savings account balance, press 1. For your current checking
account balance, press 2. To return to the main menu, press *.”

Caller:

(presses 2 for current checking account balance)

System:

“Please enter your ID number.”

Caller:

(enters 00001 on the touch-tone telephone)
2 of 4

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 18

1

Overview
Table 2.

Script Builder Transaction for a Sample Application

Sample — Script Builder Transaction

System:

“Please enter the last four digits of your social security number.”

Caller:

(enters 9087 on the touch-tone telephone)

System:

“One moment, please. (sends caller’s account number to host computer,
verifies password, receives account balance) Your checking account balance is
$2,010.27.”
For your current savings account balance, press 1. For your current checking
account balance, press 2. To return to the main menu, press *.”

Caller:

(presses 1 to get current savings account balance)

System:

(The system already has balance information) “Your savings account balance is
$7,354.63.”

Caller:

(presses * to return to the main menu, interrupting the system playback)

System:

“For current interest rates, press 1. For your current account balance, press 2.
To speak to a customer service representative, press 3. To end this call, press
#.”
3 of 4

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 19

1

Overview
Table 2.

For More Information

Sample — Script Builder Transaction

Caller:

(presses 3 to transfer to a customer service representative to get further
automobile loan information)

System:

“One moment, please. You are being transferred to a customer service
representative.” (transfers call and ends the transaction)
4 of 4

For More Information
To design an application to meet the expectations of your callers and your
business, you must consider the overall system. This includes the Intuity
CONVERSANT system, the end user, and the data source (which may be a
separate host computer). See Intuity CONVERSANT System Version 6.0
Application Design Guidelines, 585-310-670, for important considerations to
keep in mind while designing your application.
Script Builder standard features are sufficient to support most applications. If
you need capabilities not supported by Script Builder, you can write an
external function using transaction assembler script (TAS) language, then
access the function from your application. For more information on writing
external functions, see Chapter 11, Using Advanced Features. You may also
need to write a data interface process (DIP) to access a database or to
perform complex calculations. See Intuity CONVERSANT System Version

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 20

1

Overview

For More Information

7.0 Application Development with Advanced Methods, 585-313-203, for
coding methods more complex than Script Builder that you can use to add
special processing to your application.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 21

2 User Interface
Overview
This chapter describes the user interface of Script Builder. It discusses how
to move the cursor on the screen, open new screens, and use the function
keys for initiating an action.
This chapter also includes information about accessing Script Builder,
creating an application, defining an application, and guidelines for application
names.
The purpose of this chapter is to provide application developers with
information about how to use Script Builder screens and function keys, and
the keyboard to select actions and to add an application.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 22

2

User Interface

What is the User Interface?

What is the User Interface?
Information displayed or requested on your video monitor is the primary
means of communication with Script Builder. Although the information
presented on the monitor changes often, the way the information is arranged
does not. This means that whether you are creating the transaction outline,
recording speech, or defining the host computer interface, screens and
commands follow a consistent format and style. Although many different
kinds of activities are involved in creating an application, each activity shares
a common user interface.
This discussion of the user interface includes the following:
•

Screens, windows, and menus

•

Function keys

•

Fields

Using the Screens, Windows, and Menus
Screens, windows, and menus are the medium through which you and Script
Builder exchange information. This involves activities such as making a list of
steps in a transaction, filling in a form, receiving information, or choosing an
item from a menu.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 23

2

User Interface

Using the Screens, Windows, and Menus
•

Script Builder screens expand across the entire Script Builder working
area and allow you to view information and/or enter information as in
Figure 6 on page 25.

•

Smaller screens, called windows, either present you with information or
request information from you, as in Figure 7 on page 26.

•

A menu allows you to select an option such as another screen or menu,
as in Figure 8 on page 26, or to select a field value.

You can display more than one screen or menu at the same time, but only the
last screen or menu displayed is active. To return to a previous screen or
menu, you can either cancel, close, or continue the active screen or menu.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 24

2

User Interface

Using the Screens, Windows, and Menus
Figure 6.

Example of a Script Builder Screen

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 25

2

User Interface

Screen Layout

Using the Screens, Windows, and Menus
Figure 7.

Example of a Script Builder Window

Figure 8.

Example of a Script Builder Menu

Table 3 on page 27 describes each component of a Script Builder screen,
window, or menu.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 26

2

User Interface

Table 3.

Using the Screens, Windows, and Menus

Components of Script Builder Screens and Menus

Screen
Component

Description

Screen title

A name describing the screen or menu.

Scroll bar

The scroll bar for each screen indicates when a screen contains more than
one page of information. If the scroll bar contains a downward arrow, you
can press , P gD n , or NE XTPA G E to view the additional information.
Likewise, you can press , PgU p , or PR EV PA G E to scroll back.

Message line

The message line contains a brief instruction or message about how to use
the screen.

Function keys

Function keys are labels that correspond to the first eight function keys (F1
through F8 ) on your keyboard.
You can display an additional set of function keys for the active screen if
F8 (Chg-Keys) appears.

Function Keys

Function keys perform specific actions for each screen in Script Builder. Your
keyboard has between eight and twelve function keys. The bottom line of
each Script Builder screen displays the action associated with each function
key (Figure 9 on page 28). Script Builder uses the first eight function keys,

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 27

2

User Interface

Using the Screens, Windows, and Menus
typically labeled F 1 through F8 . You can display an alternate set of function
keys (Figure 10 on page 28) for the active screen by pressing F8 (Chg-Keys),
if that key appears.
Figure 9.

Figure 10.

Example of Function Keys

Example of Alternate Function Keys

The system beeps and takes no further action if you press a function key
corresponding to an empty box (no action associated with the key). The
function keys displayed on the screen apply only to the active screen.
Several function keys perform standard actions regardless of the screen you
are viewing. Table 4 on page 29 describes the standard function keys. Other
functions are unique to a particular screen, such as Define, Verify, and Install.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 28

2

User Interface

Using the Screens, Windows, and Menus
Note:

Table 4.

Most of the chapters in this book provide details of how to define
an application, a transaction, action steps, and fields. Function
keys for the Script Builder Applications menu include F 2
(Remove), F3 (Copy), F4 (Install), F5 (Backup), and F6 (Restore).
See Chapter 10, Application Administration, for more information
about these functions.

Standard Function Keys

Command

Description

F 1 (Help)

Displays information about the active screen, including available
function key commands. To close the help screen, press F6 (Cancel).

F 2 (Choices)

Displays a menu of possible options for a particular field.

F 3 (Save)

Saves any changes you made in a screen.

F 3 (Close)

Saves any changes you made in a screen and closes the screen.

F 3 (Cont)

Continues with the specified action.

F 3 (Prevpage)

Scrolls to the previous page when a screen contains more than one
page of information.

F 4 (Nextpage)

Scrolls to the next page when a screen contains more than one page of
information.
1 of 2

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 29

2

User Interface
Table 4.

Using the Screens, Windows, and Menus

Standard Function Keys

Command

Description

F 4 (Redraw)

Redraws the active screen.

F 5 (List)

Displays a menu containing the following components of the
application: custom phrases, database tables, parameters, standard
phrases, fields, and transaction. Select from this menu to display a list
of existing values for any of these components.

F 5 (Print)

Prints each page of the active screen that is displayed. You must press
F 5 (List) to make this option available.

F 6 (Cancel)

Closes the active screen and returns you to the previous screen. Any
changes made are not saved unless you saved them before pressing
F 6 (Cancel). Use this instead of the Close function if the Close function
is not available for the active screen.

F 7 (Exit)

Closes the active screen, exits Script Builder, and displays the Script
Builder application screen.

F 7 (Discard)

Discards the previous specified action.

F 8 (Chg-Keys)

Toggles between two available sets of function keys.
2 of 2

Selecting a Menu
Option

A menu contains a list of options that you can select. Selecting a menu option
means that you highlight the option and press E NT ER .

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 30

2

User Interface

Using the Screens, Windows, and Menus
To select a menu option, use any of the following methods:
•

Press
or
to move the cursor to the menu option you want to
highlight. You can scroll through the top or bottom of the menu.

•

Press H O M E to highlight the first menu option. Press EN D to highlight the
last menu option.

•

Type the first character of the menu option you want. The first menu
option that begins with that letter is highlighted. The following rules apply
to this method:
~ This feature is not case-sensitive; therefore, you may type “a” or “A.”
~ If more than one menu option begins with the same letter, type enough

letters to identify the option you want. If the cursor is already on the first
letter of a menu option beginning with the same letter, type the second
letter of the menu option you want.
~ To move the cursor back to the beginning of a menu option’s name,
press B AC KS PAC E . Be sure to press B AC K SPA CE enough times to

return the cursor to the beginning of the line. You may also press the
space bar to move the cursor to the beginning of the line.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 31

2

User Interface

Choices Menu

Fields
When a screen contains fields, you may be able to display a menu that lists
possible field options and then select an option directly from that menu.
Follow the procedure below to use the Choices menu:
1 Move the cursor to the field for which you want to display a list of choices
and press F2 (Choices).

A menu appears that lists possible field settings. Depending on the field,
the menu may contain all possible settings or just common settings for the
field. If the Choices menu is not available, a beep sounds.
2 Select the menu option you want.

The Choices menu closes and the field option you selected appears in the
active field.

Fields
This section discusses how to enter information and move through fields.
Filling in Fields

Enter, change, or delete the information in fields (Figure 6 on page 25) using
the keyboard if a Choices menu is not available for the field, or if you want to
enter something that is not in the Choices menu. When you enter information

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 32

2

User Interface

Fields
in a field, you type on the lines that are displayed on the active screen. When
you enter information in a field, the following guidelines apply:

Moving through
Fields

•

In most cases, the length of the line represents the maximum number of
characters allowed for that field.

•

Information about what you can type may appear in the message line at
the bottom of the display. Some fields allow only numbers.

•

Once you enter information in a field, you can save the changes made, or
cancel them without saving.

Use the keys listed in Table 5 on page 33 to move through fields on a screen.

Table 5. Keys for Moving through Fields

Key

Description

EN TE R or
TAB

Moves the cursor to the next field, moving left to right. From the last field
on the screen, the cursor wraps to the first field.

SH IFT TA B

Moves the cursor to the previous field, moving right to left. From the first
field on the screen, the cursor wraps to the last field. The SH IFT TA B
keys must be pressed consecutively.
Moves the cursor down one field. From the bottom field, the cursor wraps
to the top field.
1 of 2

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 33

2

User Interface

Accessing Script Builder

Table 5. Keys for Moving through Fields

Key

Description
Moves the cursor up one field. From the top field, the cursor wraps to the
bottom field.
Moves the cursor right one character within a field.
Moves the cursor left one character within a field.

HO M E

Moves the cursor to the first field on a screen.

EN D

Moves the cursor to the last field on a screen.

DE LE TE , DE L

Not used. Use B AC KS PAC E key to delete field characters.

BA C KS PA C E

Deletes the character to the left of the cursor.
2 of 2

Accessing Script Builder
Once the system has been turned on, follow the instructions below to access
the Script Builder program.
1 Enter your login and password at the console prompt.
2 Enter cvis_menu

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 34

2

User Interface

Accessing Script Builder
The system displays the Voice System Administration menu (Figure 11 on
page 35).
Figure 11.

Voice System Administration Menu

3 Select

> Script Builder Applications

The system displays the Script Builder Applications menu (Figure 12 on
page 36).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 35

2

User Interface

Selecting or Adding an Application
Figure 12.

Script Builder Applications Menu

Selecting or Adding an Application
The Script Builder Applications menu contains an alphabetical listing of all the
applications that are available on your system. If no applications exist on your
system, ADD NEW APPLICATION is the only entry in the menu (it is always

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 36

2

User Interface

Selecting or Adding an Application
at the top of the list). Begin application development with Script Builder by
either selecting the name of a current application or adding a new application.
Note:

Adding an
Application

If the F1 (Define) function is not displayed in the standard or
alternate function keys, Script Builder has not been installed.

The first step in developing an application is to name the application and add
it to the list. To add a new application, do the following Steps 1 through 3:
1 Start at the Script Builder Applications menu (Figure 12 on page 36) and

select

>ADD NEW APPLICATION

The system displays the New Application window (Figure 13 on page 37).
Figure 13.

New Application Window

2 Enter the name of the new application.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 37

2

User Interface

Selecting or Adding an Application
3 Press F3 (Save) to add the new application to the list, or press F6

(Cancel) to return to the Script Builder Applications menu without adding
the application.
If you pressed F 3 (Save), the system adds the highlighted new
application to the list in alphabetical order.
Naming an
Application

When creating a name for an application, use the following guidelines:
•

The application name must be from 1 to 11 characters in length.

•

Valid characters include letters (A–Z and a–z), numbers (0–9), and the
underscore ( _ ).

•

The first character of the application name must be a letter (A–Z and a–z).
The first character cannot be an underscore ( _ ) or a digit.

•

Names are case sensitive; that is, ABC is not the same as Abc or abc.

! CAUTION:
Do not use any special characters such as punctuation in application names.
Some characters have special meaning to the UnixWare operating system
and may be misinterpreted when used in an application name.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 38

2

User Interface

Defining an
Application

Selecting or Adding an Application
When you are ready to begin defining an application, perform the following
procedure:
1 Start at the Script Builder Applications menu (Figure 12 on page 36) and

select the application name that you want to define.
2 Press F8 (Chg-Keys).

The system displays the alternate function keys.
3 Press F1 (Define).

If you are not on a system terminal, the system prompts you to confirm
whether the terminal type you specified matches the terminal you are
using.
4 Enter y to confirm or n to quit and reset your terminal type.

If you enter y, the system displays an introductory screen while Script
Builder is being initialized.
Note:

The time it takes to initialize Script Builder depends on the size of
the application (especially the speech component) and the speed
of your platform. It typically takes several seconds for Script
Builder to initialize applications with a large number of speech
phrases.

Upon initialization, the system displays the Define Application menu
showing the five application components (Figure 14 on page 40). See
Chapter 1, Overview, for an introduction to these components. For
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 39

2

User Interface

Selecting or Adding an Application
specific information about how to define each component, see the
chapters that follow.
Figure 14.

Define Application Menu

The preferred sequence for defining a Script Builder application is:
1 Host interface (see Chapter 4, Defining the Host Interface)
2 Database tables (see Chapter 5, Creating Database Tables)
3 Parameters (see Chapter 6, Defining Parameters)
4 Transaction (see Chapter 7, Defining the Transaction and Chapter 11,

Using Advanced Features)
5 Speech administration (see Chapter 9, Speech Administration)

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 40

3 Data Management
Overview
While developing an application, you must describe data so that Script
Builder can manage the data to meet your needs. Information in this chapter
tells you how to enter or use the data in screens and define the processing
required, as described throughout the remaining chapters in this book. This
chapter explains how to use the following Script Builder data descriptions and
processes:
•

Field – Where the data is stored
~ Name – How the field is identified
~ Type – How the data is described
~ Value – The information stored as data
~ Format – How the data is processed during input or output

•

Manipulations – How the data is used to meet the needs of your
customers and your business
~ Computations – Arithmetic functions and comparisons
~ Conversions – Changing data from one type to another

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 41

3

Data Management

Data Fields

Data Fields
Every piece of data (information) used within an application is stored in a
field. The field is a location used to hold a chunk of information. Every field in
your application has a unique name determined by you or by the system.
Then, information in the form of data with a specified value is assigned to a
field. Once data has been assigned to a field, the system refers to the field
name in order to retrieve the data and determine its value.
Describe each field by identifying the following:
•

Field name
Give each field a unique name that complies with the rules described in
this chapter, or use the name reserved by the system

•

Field type
Specify what type of data is stored in the field, such as character, number,
date, or time

•

Field value
Assign (set) a value to the field, tell Script Builder how to assign a value,
or use the value assigned by the system

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 42

3

Data Management
•

Data Fields
Field format
Select a format to tell Script Builder how to interpret the field value during
an input or output process, such as speaking a value to a caller or
communicating with a host computer

Field Name

Follow these rules when creating a field name:
•

Provide each field with a unique name.
Use a field name that describes the contents of the field as completely as
possible, such as interest_rate rather than int_rate.

•

Follow the size and character restrictions.
~ The name must be between 1 and 24 characters in length.
~ Use only alphabetic (a–z and A–Z), numeric (0–9), and underscore (_)

characters in a field name. Space, punctuation, and other symbols are
not valid.
Since the field name cannot contain spaces, use the underscore to
denote a space between words.
~ The first character in the name must be alphabetic.
~ Field names are case sensitive; that is, ABC is not the same as Abc or

abc.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 43

3

Data Management

Data Fields
~ When accessing a field in a database, the field name must exactly

match what has already been established. The name is often in all
capital letters. See Chapter 5, Creating Database Tables, for more
information.
~ Examples of valid field names are

interest_rate
account_type
rate_type
balance
message_3
greeting
day_of_the_week
~ Examples of invalid field names are

bad*&#!!characters
1st_char_not_alpha
very_very_very_very_long_name
•

Certain names are reserved for fields used by the system. These are
called system fields.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 44

3

Data Management

System Fields

Data Fields

System fields are predefined by the system for a variety of uses. All system
fields have a dollar sign ($) as the first character. Because the otherwise
invalid $character is used in system field names, they are easy to identify in a
list displayed in a menu.
An example of a system field is $CI_VALUE. When a caller is prompted for a
response, $CI_VALUE is the name of the system field that, by default,
receives the caller input value (that is, the character string input by the caller
using touch tones, dial pulses, or speech).
Table 6 on page 45 includes the field type, size, and function for each system
field.

Table 6.

System Variable Fields

System Variable Field

Field Type

Function

$CHANNEL_NUMBER

num

Channel number on which the current call is
being run

$CI_MODE

num

Stores the SSP card number

$CI_NO_DIGS_GOT

num

Default field for the number of input digits entered
by the caller on the last input attempt

$CI_RECOG

num

Stores the recognizer
1 of 3

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 45

3

Data Management
Table 6.

Data Fields

System Variable Fields

System Variable Field

Field Type

Function

$CI_TRIES_USED

num

Default field for the number of caller input
attempts

$CI_VALUE

char (field
size = 67)

Default field for storing caller input

$DIALED_NUMBER

char (field
size = 15)

DNIS dialed digits for this call (available only with
E1/T1, ASAI, and PRI interfaces)

$FINDBEST

char (field
size = 67)

Expected value of caller input to a prompt

$HOURS_CLOSED

num

Set to 1 if HOURS feature is used and call is
received off-hours

$HOST_ERROR

num

Error code if the Get Screen action did not return
a recognized screen

$HOST_SCREEN

num

Screen name last recognized by the Get Host
Screen action

$LANGUAGE

char (field
size = 15)

Contains the language specified in the Shared
Speech Pools screen
2 of 3

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 46

3

Data Management
Table 6.

Data Fields

System Variable Fields

System Variable Field

Field Type

Function

$MATCH_FOUND

num

Incremented by one for each successful
READ_TABLE without a search from the top

$RECORDS_CHANGED

num

Set to 1 if the last modify record succeeded.
Otherwise, it is set to less than or equal to 0.

$TRANSFER_RESULT

char (field
size = 3)

Character code representing the result of the last
transfer attempt

$UNIX_TIME

num

UnixWare system clock time at the moment it is
referenced
3 of 3

Field Type

Fields can hold different types of information (data). The type of data must be
described so that Script Builder can process the data properly.
The following field types specify the kind of data the field can hold:
•

char (character) fields contain a string of arbitrary characters of varying
length. Legal characters include the ASCII set. This includes letters,
numbers, and any of the punctuation and special keys found on the main
area of your keyboard (for example, !, #, &, ., <, and ?).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 47

3

Data Management

Data Fields
Each char field has a special size attribute which determines the capacity
of the field (that is, the maximum length of its character string value). Field
size is determined when the field is created. Field size can range from 0
(the null string) to 300 characters. (The null string constant is denoted as
““.)
An example of a char type field is last_name that contains the characters
that make up the caller’s last name.

•

num (number) fields can hold integer values ranging from the negative
number -2,147,483,648 to the positive number 2,147,483,647. Each num
field must begin with an integer or the minus sign. Although every num
field must contain an integer, you can use a num field as a decimal value
by using an implied decimal point in the field format (seen Field Format on
page 51).
Values larger than (+)2,147,483,647 can be accommodated into the
system by dividing them into manageable parts. For example, a number
that exceeds the upper limit can be brought from the host computer into
Script Builder as a character string, and then divided into an appropriate
number of parts so that each value is less than the limit.

Note:

Do not use the smallest number (-2,147,483,648) because it is
reserved to indicate a noninteger character when it is being
compared with a number, as described in Comparisons of char
and num Values on page 75.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 48

3

Data Management

Data Fields
An example of a num type field is account_no that contains the caller’s
checking account number.

•

date fields are a special case of the char fields, customized for
representation of calendar dates.
An example of a date type field is check_date that contains the date a
check was debited against the caller’s account.

•

time fields are a special case of the char fields, customized for
representation of the time of day.
An example of a time type field is check_time that contains the time a
check was debited against the caller’s account.

Field Value

The data in a field has a value, which is the actual information you want to
store and process. The value can be assigned by the initialization process, by
steps you write in the Script Builder transaction, and by the system.
Initial Field Value

When a caller transaction takes place, the system gives each field an initial
value. It stores this value until a new value is explicitly assigned to it, either by
input from the caller or by action steps in the transaction. A num field type is
assigned an initial value of 0. A field of any other type is assigned an initial
value of null. Null is a character string that has zero length, and is also called
an empty string.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 49

3

Data Management

Data Fields

Note:

Script Builder does not initialize system fields. If you want to
initialize a system field to a specific value, such as
$TRANSFER_RESULT = 0, use the Set Field Value action step as
described in Chapter 7, Defining the Transaction.

Assigning a Field Value

A data value is assigned to a field by you or by the system. You can assign
(set) a value to a field using the Set Field Value action step, as described in
Chapter 7, Defining the Transaction. The system assigns a value to a field
based on caller input, system responses to caller input, and processes that
you instruct the system to perform through action steps in the transaction.
The following rules apply to assigning a field value:
•

You can assign a field to a constant value.
You can set a num field to a numeric value by specifying that value. You
can set a char field to a string of characters by specifying the characters,
enclosed in double quotes (for example, to store the characters CALICO
in the char field CAR, you set CAR to “RENTAL”). You can set a date or
time field to a value by specifying an appropriate character string in
double quotes.

•

You can assign a field to the value of another field, including system
fields.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 50

3

Data Management

Data Fields
For example, you could assign the field LOCAL_TRANSPORT to the
value of the field CAR. Whatever value is stored in CAR is copied and
stored in LOCAL_TRANSPORT as well. The value in CAR is unchanged.
You could assign the field INPUT to the value of the system field
$CI_VALUE.

•

You can assign a field of one type to a field value of a different type.
As stated earlier, a field type determines the nature of the data stored in
the field, and the type of data that you can assign to the field. For
example, you should assign num fields only to integer values. However, it
is sometimes useful to assign data of one type to a field of a different type.
This is called a conversion. For example, you could assign a num field
type to the value of a char field type. That would allow you to perform
numeric computations and comparisons on the value in the char field
type.

Note:

Field Format

For data conversions, use the field formats described in Field
Format on page 51 so the result meets the needs of your process
(quantity and location of digits). Performing an invalid conversion
yields unpredictable results. Also, see Data Computations on
page 71 for other processes available in the system.

You can specify a format for Script Builder to use to interpret the input or
customize the output of a field each time a value is processed. Some
common examples of the use of formats are to specify the correct sequence

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 51

3

Data Management

Data Fields

of numbers in a date and the correct number of digits after the decimal point
in a number or a monetary value.
Customizing the output using a format enables the system to speak data in a
specified way, determined by the situation, the available speech, or your
preferences. For example, you can choose to have the value in the field
check_date spoken as “nine (pause) four (pause) ninety-six,” as “oh nine oh
four ninety-six,” or as “September four (pause) nineteen ninety-six.”
Customizing the output using a format also provides a way to present system
data in a format expected at the destination (for example, the field
check_date of type date containing a string of characters representing
September 4, 1997). A format could be specified to allow the date to be sent
to a host computer in the form it expects, such as 97-09-04.
Note:

When exchanging information with a host computer, you must
know and comply with the form it expects so that it can process
the data properly. For example, September 4 (97-09-04) must not
be confused with April 9 (97-04-09).

The following sections describe all available formats and provide examples of
common usage. Some of the formats discussed work only with spoken output
or host input or output. Therefore, formats for various cases are presented
separately.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 52

3

Data Management

Data Fields

Formats for Caller Input

Formats as such are not used for caller input. Caller input is always received
as a string of one or more characters. For best results, specify a char field to
accept each instance of caller input. The system field $CI_VALUE is used by
default. If you specify your own nonchar field, or a char field too small to hold
the input value, the value is interpreted according to the Script Builder rules,
as described in Data Computations on page 71.
Formats for Spoken Output

Use a format for spoken output from a field so that you can specify inflection,
a year expressed in either two or four digits, number of digits past the decimal
point (if any), and monetary values. You specify the format in the Announce
action step or in the Prompt & Collect action step. See Chapter 7, Defining
the Transaction for the procedures.
You can speak out information to a caller using the optional Text-to-Speech
package (see Chapter 8, Using Optional Features) or one of the available
languages of the optional enhanced basic speech (EBS) package (see
Chapter 9, Speech Administration).
You can specify spoken inflection by using:
•

r for rising inflection – usually the first character

•

m for medial inflection – usually all characters between the first and the
last

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 53

3

Data Management
•

Data Fields
f for falling inflection – usually the last character

If you are using one of the optional enhanced basic speech language
packages, see Appendix A, “Enhanced Basic Speech Formats”, in Intuity
CONVERSANT System Version 7.0 Speech Development, Processing, and
Recognition, 585-313-201, for a complete list of formats for all available
languages and more background information about the formats.
Output Spoken from a char Field

All formats begin with “C.” Characters are spoken in succession, with the
specified inflection, if any. A null character field is spoken as a silence
(pause) of no duration. If a single character within a field is not valid (for
example, the ampersand symbol–&), it is ignored. Table 7 on page 54 shows
formats for output spoken from a char field.
Table 7.

US English Examples of Output Spoken from a char Field

Format

Description

Crmf

Speak the first character with rising inflection, the last
character with falling inflection, and all other characters with
medial inflection (default).

Crmm

Speak the first character with rising inflection, and all other
characters with medial inflection.
1 of 2

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 54

3

Data Management

Data Fields
US English Examples of Output Spoken from a char Field

Table 7.

Format

Description

Cmmf

Speak the last character with falling inflection, and all other
characters with medial inflection.

Cmmm

Speak all characters with medial inflection.

C

Speak all characters with medial inflection; same as Cmmm.
2 of 2

Output Spoken from a num Field

Use a format for output spoken from a num field to specify the number of
digits past the decimal point (if any), monetary values, and inflection. If a
value is negative, the word “minus” is spoken. Table 8 on page 55 shows
formats for output spoken from a num field.
Note:

Table 8.

Use number formats specifying local monetary values in the
available languages.

US English Examples of Output Spoken from a num Field

Format

Description of 12345

Nmmm

“Twelve thousand three hundred forty five” (all digits spoken with medial
inflection); this is the default
1 of 2

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 55

3

Data Management
Table 8.

Data Fields

US English Examples of Output Spoken from a num Field

Format

Description of 12345

N

“Twelve thousand three hundred forty five” (all digits spoken with medial
inflection); this is the default

Nrmf

“Twelve thousand three hundred forty five” (“twelve” spoken with rising
inflection, “five” spoken with falling inflection, all other digits spoken with
medial inflection)

ND1*

“One thousand two hundred thirty four point five”

ND2

“One hundred twenty three point four five”

ND6

“Point zero one two three four five”

N$

“Twelve thousand three hundred forty five dollars”

N$D2

“One hundred twenty three dollars and forty five cents”

NX†

Speak the phrase with a specified phrase tag (from the primary speech pool)
2 of 2

* The “D” means decimal, and the number is the number of digits past the decimal point.
† This is useful for speaking phrases returned from an external function (for example, voice coding). You can also use NX to speak packed talkfile numbers and phrase numbers. See Chapter
11, Using Advanced Features, for additional discussion of the NX format, including pack_phrNX
and unpack_phrNX.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 56

3

Data Management
Note:

Data Fields
Script Builder does not support speaking numbers in the billions
and trillions because most of these numbers are too big to fit into
an integer variable. However, the phrases “billion” and “trillion” are
included in the Enhanced Basic Speech package. If your script
requires speaking such large numbers, you can write an external
function that accepts a large number in the form of an ASCII
string, parse the string (getting the amounts of billions and trillions
as substrings), convert the three resulting substrings to integer
values, then speak them with the tnum instruction inserting a talk
instruction with the phrases for “billion” or “trillion” where
appropriate. See Intuity CONVERSANT System Version 7.0
Application Development with Advanced Methods, 585-313-203,
for information on the tnum and talk script instructions.

Output Spoken from a date Field

Date formats always begin with a D, followed by M, D, and Y (for month, day,
and year expressed in two digits, or YY for year expressed in four digits) in
the order desired, as shown in Table 9 on page 58. SP indicates the name of
the month instead of the number.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 57

3

Data Management

Data Fields

Table 9.

US English Examples of Output Spoken from a date Field

Format

Description of 112396

DMDY

“Eleven (pause) twenty-three (pause) ninety-nine”
(default)

DMD

“Eleven (pause) twenty-three”

DMSPDY

“November twenty-three (pause) ninety-nine”

DMSPD

“November twenty-three”

DMSPDYY

“November twenty-third (pause) nineteen ninety-nine”

Output Spoken from a time Field

There is one spoken time format for US English, THMAM (time, hours,
minutes, AM/PM), which uses a 12-hour clock with AM and PM.
For example, the value 2:30 PM is spoken as “two thirty pee em.”
Note:

Formats for Input
from Host
Computer

Use a time format specifying a 24-hour clock, sometimes called
military time, where it is preferred by the local country.

When data is received from a host computer screen into a Script Builder host
field, the format you specify when defining the field must match the way the
data is stored in the host computer. The following sections describe the

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 58

3

Data Management

Data Fields

format of data for each field. See Chapter 4, Defining the Host Interface, for
more information about working with a host computer.
Host Input into a char Field

Input into a char field should be a string of ASCII characters. Use the C
format to accept every input character received. It is the only available char
input format. The C format stores the received string in the char field without
making any changes to it.
Host Input into a num Field

A Script Builder num field holds an integer, although a real number can be
used by means of an implied decimal point. An implied decimal point is
understood to be to the left of the nth digit, counted from the right of the
stored field value. This is often referred to as a fixed point value (as opposed
to a floating point value).
For data input, this means that the format can specify that n decimal places
be included in the stored field value (for example, 12.34 stored as 1234).
Trailing zeroes may be added to the stored value (for example, 12.3 stored
as 1230), or extra decimal places truncated (removed) from the input value
as necessary to match the format (for example, 12.345 stored as 1234).
All num formats begin with an N. The NZ format interprets any input as a
whole number, and disregards any nonnumeric characters. Leading zeroes,
spaces and any nonnumeric characters are ignored. The only exception is a

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 59

3

Data Management

Data Fields

leading minus sign (-), which indicates a negative number. Embedded
characters within the number are also ignored, including commas, hyphens,
and decimal points.
Note:

To preserve the hyphens in a social security number, store the
social security number in a character field.

The NDn format (where n is a number from 1 to 9) is similar to the NZ format,
except that n digits following the decimal point are preserved. The decimal
point itself is not included in the stored integer value. The NDn format is
useful where you want to maintain a consistent number of (implied) decimal
places for later calculations and output. Most common usage is the ND2
format for monetary values (where n =2). NZ is the default format. Table 10
on page 60 shows examples of the num field input formats.
Table 10.

Input into a num Field

Input Value

Format

Stored Value

0012

NZ

12

12

NZ

12

12

N

12

12.34

NZ

1234

12.34

ND0

12
1 of 2

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 60

3

Data Management

Data Fields

Table 10.

Input into a num Field

Input Value

Format

Stored Value

12.34

ND1

123

12.34

ND2

1234

12

ND2

1200

12.3

ND2

1230

12.34

ND2

1234

12.345

NZ

12345

12.345

ND2

1234

1234

NZ

1234

-1234

NZ

-1234

123-45-6789

NZ

123456789
2 of 2

Host Input into a date Field

Input into a date field should be a representation of month, day, and year
separated by characters such as the hyphen (-), slash (/), period (.), comma
(,), or blank (B).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 61

3

Data Management

Data Fields

Date formats always begin with a D, followed by M, D, and Y (in the
appropriate order representing month, day, and year, respectively).
Separator characters may be specified between the M, D, and Y as
appropriate. Different separators may be used within a single date format. M,
D, Y and the separators may be rearranged as necessary to match the
appearance of the date in the host screen.

M can be a month name or abbreviation (such as January or Jan.,
respectively), or a one- or two-digit value (such as 1 or 01 for January). D can
be a one- or two-digit value. Y is a two-digit value representing a year in the
current century (such as 97, representing 1997 or 2097 on 1/01/2000). YY
can be specified where desired or necessary for a four-digit representation of
the year, such as 1997 or 1891. YT can be specified when using dates
in both the twentieth or twenty-first century, where  is a threshold that is
greater than or equal to 0 and less than or equal to 100. This threshold is
defined in the host screen definition field for the application (see Defining
Screen Fields on page 112 in Chapter 4, Defining the Host Interface). YT is a
2-digit year algorithm that if the year (where  is the input received
from the host) is less than the specified threshold, the year is translated to
20. If the year is equal to or greater than the specified threshold,
the year is translated to 19.
To determine an appropriate threshold, analyze the range of dates required
per the date field from the host. For example, if the range of dates falls
between 1940 and 2039, use the threshold 40. Therefore, if the format is
YT40 and an input year from the host is 27, the year is translated into 2037. If

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 62

3

Data Management

Data Fields

the input year from the host is 45, the yar is translated into 1945. For a 100year span of 1900 through 1999, use the format YD0; for the years 2000
through 2099, use YT100.
Note:

The Intuity CONVERSANT system only supports a 100 year
range when using a 2-digit year.

Where the host computer date field is in month, day, year order, you can
specify the D format. Script Builder performs the remaining interpretation
automatically. Table 11 on page 64 shows the input formats for the date field.
The following is a list of general rules that apply to date fields:
•

Date fields are stored internally as YYYYMMDD.

•

Database date field information must be entered as MM/DD/YY. When
records are read from the local database table by the field date, the
information must be retrieved as YYYYMMDD.

•

When editing a database for a date field, the acceptable expression is
MM/DD/YY or MM/DD/YYYY. However, when the date is entered as
MM/DD/YY and saved, the date appears as the MM/DD/YYYY.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 63

3

Data Management

Table 11.

Data Fields

Input into a date Field

Format

Description

D

Date in month day year format, regardless of the separators used. The
month is by digit or name, and the year is given in two or four digits.
“November 23, 2005,” “11/23/05,” and “11-23-05” all interpreted as the
same date)

DM/D/Y

Date in month/day/year in current-century format, such as 11/23/98,
01/02/01, or 1/2/01 (default).

DM-D-Y

Date in month-day-year in current-century format, such as 11-23-99,
01-02-01, or 1-1-01 (default) with a hyphen (-) as a separator

DM.D.Y

Date in month.day.year in current-century format, such as 11.23.99,
01.01.01, or 1.1.01 (default) with a period (.) as a separator

DM/D/YY

Date in month/day/four-digit year format, such as 11/23/1999, or
01/02/2001, with a slash (/) as a separator

DMBD,BYY

Date in month, date, four-digit year format, such as November 23,
1999, or January 2, 2001

DYY.M.D

Date in four-digit year month.day format with period (.) as the
separator, such as 1999.11.23 or 2001.1.2
1 of 2

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 64

3

Data Management
Table 11.

Data Fields

Input into a date Field

Format

Description

DM/D/YT

Date in month/day/year format with a slash (/) as a separator;
YT is defined in the host field definition and is compared to the
input from the host to determine if the century is “19” or “20”

DM-D-YT

Date in month-day-current year format, with a hyphen (-) as a
separator;YT is defined in the host field definition and is
compared to the input from the host to determine if the century is “19”
or “20”

DM.D.YT

Date in month.day.current year format with a period (.) as a separator;
YT is defined in the host field definition and is compared to the
input from the host to determine if the century is “19” or “20”
2 of 2

Host Input into a time Field

Time formats are similar to date formats. The format always begins with a T,
and uses H, M, S, and AM to represent hours, minutes, seconds, and AM/PM
designation, respectively. The colon (:), period (.), and blank (B) characters
can all be used as separators.
Similar to the D (date) format, the T (time) format can be used when input is
in either 24-hour clock form, or in hours, minutes, AM/PM order. Table 12 on
page 66 shows the input formats available for the time field.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 65

3

Data Management

Table 12.

Data Fields

Input into a time field

Format

Description

T

Time as hours (12-hour clock):minutes AM/PM (regardless of separators
used), or as hours (24-hour clock):minutes (regardless of separators
used).

TH:MBAM

Time in hours:minutes (blank) AM/PM (default), such as 2:30 PM

TH 24:M

Time in hours (24-hour clock):minutes, such as 14:30

TH 24:M:S

Time in hours (24-hour clock):minutes:seconds, such as 14:30:20
Note:

Time fields are stored internally as TH24MS.

Formats for Output When Script Builder sends data to a host computer, the format you specify
to a Host Computer when defining the field should describe the data as the host computer

expects to receive it. For example, dates and times must be presented in the
correct order, and numbers must have the correct quantity of digits past the
decimal point. The following sections describe the format of data for each
field. See Chapter 4, Defining the Host Interface, for more information about
working with a host computer.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 66

3

Data Management

Data Fields

Output from a char Field to a Host

Output from a char field should be a string of ASCII characters. Use the C
format to send every character in the field. It is the only available char output
format. The C format sends the string stored in the char field without making
any changes to it.
Output from a num Field to a Host

All formats begin with N. Values are placed left justified in the host computer
screen.
The NDn format specifies that a decimal point should be inserted to the left of
the nth digit from the right. Leading zeroes are added as necessary.
The N$ format (or N$Dn) specifies that a dollar sign ($) be placed to the left of
the number.
Add C to specify that commas be inserted to the left of every third digit to the
left of the decimal point.
Add L to specify that leading zeroes be inserted as necessary to fill the host
computer field. Table 13 on page 68 shows examples using the value 12345.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 67

3

Data Management

Data Fields

Table 13.

Output from a num Field

Format

Description of 12345

N

12345 (default)

ND2

123.45

ND6

.012345

N$

$12345

N$D1

$1234.5

N$D2

$123.45

N$D3

$12.345

NL

00012345 (assuming a host computer field 8 digits
wide)

NC

12,345

Output from a date Field to a Host

Date output formats are similar to date input formats. Each format always
begins with a D, followed by M, D, and Y (for month, day, and year as two
digits, or YY for year as four digits) in the order desired, using whatever
separators are desired. One difference from the input format is the ability to
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 68

3

Data Management

Data Fields

spell out the month in a variety of ways. For example, SP formats the name of
the month in all capital letters, whereas Sp makes the first letter of the month
a capital letter followed by lowercase letters. MS formats the name of the
month in the same way as SP, except the abbreviation of the month is output,
whereas Ms abbreviates the month as well, but the first letter is a capital
letter. Table 14 on page 69 shows examples of date output, using the date
11/23/96.
Note:

It is possible to mix formats and field types, for example, to use a
num format with a char field. In this case, Script Builder rules of
data conversion apply, as described in Data Computations on
page 71.

! CAUTION:
If you assign a value to a field or use a format with a field that results in output
that is physically too long to fit in the allocated space in the host screen, the
output is truncated (extra characters are removed).
Table 14.

Output from a date Field

Format

Description

DM/D/Y

11/23/99 (default)

DM-D-Y

11-23-99
1 of 2

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 69

3

Data Management

Data Fields

Table 14.

Output from a date Field

Format

Description

DM.D.Y

11.23.99

DM/D/YY

11/23/1999

DY.M.D

99.11.23

DM/D

11/23

DMSPBD,BYY

NOVEMBER 23, 1999

DMSpBD,BYY

November 23, 1999

DMS-D-Y

NOV-23-99

DMs-D-Y

Nov-23-99
2 of 2

Output from a time Field to a Host

All time formats begin with T. H, M, S, and AM represent hours, minutes,
seconds, and AM/PM designation, respectively. All components are optional.
The colon (:), period (.), and blank (B) characters can all be used as
separators. Table 15 on page 71 shows examples using the time of 2:30 PM.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 70

3

Data Management

Data Manipulations

Table 15.

Output from a time Field

Format

Description

TH:MBAM

2:30 PM (default)

TH:M:SBAM

2:30:00 PM

Data Manipulations
You can direct a Script Builder application to manipulate data in the form of
computations, comparisons, and conversions.

Data Computations
This section covers numeric and character computations.
Numeric
Computations

You can select a field as an operand in numeric computations. The following
four basic arithmetic functions are available for numeric computations:
•

Addition (using the + operator)

•

Subtraction (-)

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 71

3

Data Management

Data Manipulations

•

Multiplication (*)

•

Division (/)

If an operand is a nonnumeric type (such as char), it is converted to num type
(according to the rules described in Data Conversions on page 77) prior to
the computation.
Note:

Character
Computations

If a computation results in overflow or division by zero, the
resulting value is unpredictable.

Computations on character strings are not directly available in the user
interface. However, a number of predefined external functions are available
for use.
Among these are functions to determine the length of a string, concatenate
two strings (put them together), search for a substring within a string, and
extract a substring from a string.
For further information, see Chapter 11, Using Advanced Features.

Data Comparisons
Standard comparisons can be accomplished between two values, with a
resulting evaluation of true or false. Table 16 on page 73 shows the
comparisons available.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 72

3

Data Management

Data Manipulations

Table 16.

Operand

Comparison

=

Equal to

<

Less than

>

Greater than

<=

Less than or equal to

>=

Greater than or equal to

!=

Not equal to

Note:

Comparisons of
num Values

Comparison Operands

If a field of type date or time is used in a comparison, it is
converted to a char value prior to the comparison according to the
rules described in Data Conversions on page 77.

You can perform standard comparisons between two num fields and/or
constants, with a resulting evaluation of true or false.
A straightforward arithmetic comparison is performed.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 73

3

Data Management

Comparisons of
char Values

Data Manipulations

You can perform standard comparisons between two char fields and/or
constants, with a resulting evaluation of true or false. You can make
comparisons to a null char field or constant (the null constant is denoted as
““).

Char fields are compared using a lexicographical comparison. This means
that each character of the two fields starting from the left is compared one at
a time, until one field has no more characters or a mismatch occurs. If no
mismatch occurs and the fields are of the same length, they are equal. If a
field has fewer characters and all previous characters have matched, the
longer field is greater. If a mismatch occurs, the field with the greater
character is the greater field. Characters are prioritized from left to right
according to the following scheme: 0–9, blank, A–Z, a–z, with other special
characters scattered within these groups.
Examples of the relative string comparison values are as follows:
““< any other string
“12” < “2”
“0123” != “123”
“ABC” < “AD”
“000” < “999”
“999” < “AAA”
“AAA” < “AAB”
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 74

3

Data Management

Data Manipulations
“AAA” < “AAAA”
“AAA” < “A.A.”

The date and time fields are treated as char fields for the purpose of
comparison. Note that two char fields can contain numbers that are
numerically equal but are not lexicographically equal as in the previous
example (“0123”). If you want a numeric comparison, then convert one or
both of the fields to numeric fields before you do a comparison.
Comparison between a char field (or constant) and a num field (or constant)
is described in the next section, Comparisons of char and num Values on
page 75.
Comparisons of
char and num
Values

It is possible to compare a char field (or constant) with a num field (or
constant). The rules of char/num comparison are:
•

If the char field or constant represents a number (that is, it contains only
digits with possible leading blanks and/or a minus sign), it is converted to
a number and compared to the num field or constant.
Examples are:
12 > “2”
123 = “123”
“123” = 123
“0123” = 123

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 75

3

Data Management
•

Data Manipulations
If the char field or constant contains any other characters, it does not
represent a legal number. It is not valid to compare a char constant
containing nonnumerics (“123a”, for example) to a number. However, if
you compare a char field that contains a nonnumeric to a number, the
nonnumeric will not match any typical number but will be treated as the
smallest possible number. For example, a field containing “123A” will be
treated as the integer -2,147,486,648 when compared to a number.
Examples are:
“ab12” (cannot validly be compared to a number)
“123A” (cannot validly be compared to a number)
Assuming C is a char field containing “ab12” or “123A”, C < 0 will evaluate
to true because C = -2,147,486,648 (a noninteger).

Note:

An alternate technique to compare a char and a num value is to
first convert the char value to a num value by assigning it to a num
field (or to convert the num value to a char value by assigning it to
a char field). For example, you could assign char “1 2” (“one”
“two”) to a num field type and it would become “12” (“twelve”).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 76

3

Data Management

Data Manipulations

Data Conversions
When a field type is assigned to a field of another type, Script Builder
attempts to convert the value to the type of the field receiving the value. Table
17 on page 77 shows all possible types of data conversions.
Note:

Table 17.

C, D, N, and T are fields of type char, date, num, and time,
respectively.

Data Conversions

Conversion

Result

C to C

If the size of the field receiving the value is less than n, the string is
truncated (shortened) after the nth character.

D to C

If n is at least 8, it is set to a character string version of the date using a
YYMD format. For example, the date 11/23/96 assigned to C sets the value
of C to 19961123. If n is less than 8, C is set to the first n characters of the
converted string.

N to C

If n is at least as large as the number of digits in the value of N (including a
minus sign, if necessary), it is set to a character string corresponding to the
value of N. Otherwise C is set to the first n digits of N, and any remaining
digits are truncated (removed). For example, if N=1234 and n=2, assigning
N to C sets C to 12.
1 of 4

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 77

3

Data Management
Table 17.

Data Manipulations

Data Conversions

Conversion

Result

T to C

If the size of C is at least 6, C is set to a character-string version of the time
using an HMS 24-hour format. For example, the time 2:12:34 PM assigned
to C sets the value of C to 141234. If n is less than 6, C is set to the first n
characters of the converted string.

C to D

If C corresponds to a valid date in the format YYMD, D is set to that date.
Otherwise D is undefined and the result is unpredictable.

D to D

This is a straightforward assignment. No conversion is necessary.

N to D

This is an invalid conversion. The result is unpredictable.

T to D

This is an invalid conversion. The result is unpredictable.
2 of 4

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 78

3

Data Management
Table 17.

Data Manipulations

Data Conversions

Conversion

Result

C to N

If the string being converted contains only numeric characters, the numeric
characters of C are converted to a number. Any leading spaces are
ignored. A leading minus sign causes N to be set to a negative number.
Any other nonnumeric character causes that character and any following
characters to be ignored. This includes any commas or decimal points. If no
digits are left from the conversion, N is set to 0. Note that this applies only
to assignments of char fields to numeric fields. Assignment of char
constants with nonnumeric characters to a numeric field usually causes a
problem when installing the application and is not recommended. For the
following examples, assume that Cnum is a char field and Inum is a
numeric field:

Cnum = 1234ab (assigns the nonnumeric string to Cnum)
Inum = Cnum (assigns number 1234 to Inum)
Inum = 1234ab (usually generates an error message during installation)
D to N

This is an invalid conversion. The result is unpredictable.

N to N

This is a straightforward assignment. No conversion is necessary.

T to N

This is an invalid conversion. The result is unpredictable.
3 of 4

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 79

3

Data Management
Table 17.

Data Manipulations

Data Conversions

Conversion

Result

C to T

If C corresponds to a valid time in the format HMS (using a 24-hour clock),
then T is set to that time. Otherwise, T is undefined and the result is
unpredictable.

D to T

This is an invalid conversion. The result is unpredictable.

N to T

This is an invalid conversion. The result is unpredictable.

T to T

This is a straightforward assignment. No conversion is necessary.
4 of 4

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 80

4 Defining the Host Interface
Overview
Script Builder is designed to make working with a host computer application
as simple as possible. The underlying philosophy for defining the host
interface can be summarized as follows:
•

The running application should exchange information with the host just as
an operator at a terminal would.

•

No changes should be required of the host application to accommodate
the Intuity CONVERSANT system application.

This chapter includes information about defining the host interface in order to
use a host computer to retrieve and process information needed for an
application.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 81

4

Defining the Host Interface

Defining the Host Interface

Defining the Host Interface
The two primary goals for designing an interface with a host application are
to:
•

Describe for Script Builder the host environment and the application,
including:
~ The design of the host application screens
~ How to identify each screen by a unique feature
~ The information to be exchanged via the screens

•

Use host information to establish and maintain contact and exchange
information with the host during a caller transaction

You need to specify information in three of the Script Builder components to
establish a host connection:
•

The Host Interface component defines the host screens and specifies the
sequence of screens to be sent and received during background
activities, such as logging in and out. Read this chapter for specific
information.

•

The Parameters component defines data needed to make contact with
the host (that is, the nature of the physical connections, the identification
and passwords needed to log in, and performance characteristics). See
Chapter 6, Defining Parameters, for additional information.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 82

4

Defining the Host Interface
•

Defining the Host Interface

The Transaction component defines the sequence of screens to be sent
and received during a caller transaction, including the information to be
exchanged during the transaction. See Chapter 7, Defining the
Transaction, for additional information.

The Host Interface component of Script Builder is divided into two main
subcomponents:
•

Host Screen Definition
You can use defined screens in the Host Session Maintenance and the
Transaction components of your application.

•

Host Session Maintenance
The Host Session Maintenance script maintains your system logged in to
the host computer, waiting for transaction input from your caller.

Note:

This book assumes that the proper Intuity CONVERSANT system
hardware and software necessary for host communications to an
IBM 3270 has been installed and is ready for use. This includes
the synchronous communications card and software, the 3270
device driver, physical connections to the host, and the host
configuration set for your system. See the maintenance book for
your platform for more information.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 83

4

Defining the Host Interface

Defining the Host Screen Definition

Defining the Host Screen Definition
To define the Host Screen Definition, the following processes are required:
1 Provide Script Builder with snapshots of the host screens.

Note:

Occasionally intermediate screens from the host can interfere with
the functioning of an application or maintenance session. If long
delays imposed by these intermediate screens are not accounted
for in the application or maintenance session, that particular host
session could get suspended in the recovery state.

2 Name each snapshot.

Naming a snapshot allows you to refer to it, but it is still an undefined
screen.
3 Create screen identifier(s).

Different screens can be similar in appearance. Some information on
each screen remains constant (text, prompts, etc), while other information
varies (data, error messages, etc). Therefore, Script Builder must be
shown one or more parts of the screen that enables it to uniquely identify
the screen from all others when it arrives from the host.
Note:

A defined screen has one or more identifiers.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 84

4

Defining the Host Interface

Defining the Host Screen Definition

4 Locate fields on the host screens. Fields are used to exchange

information with the host computer. Fields are an optional part of host
screen definition.
For a single host screen, the total size of all fields defined must be equal
to or less than 2000 bytes minus 1 byte of overhead for each host field.
See Size Limit of Host Screen Field Data on page 112 for more
information.
Starting the Host
Screen Definition

To start the host screen definition:
1 From the Define Application menu (Figure 14 on page 40), select

>Host Interface

The system displays the Define Host Interface menu (Figure 15 on page
85).
Figure 15.

Define Host Interface Menu

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 85

4

Defining the Host Interface

Defining the Host Screen Definition

2 Select

>Host Screen Definition

The system displays the Define Host Screens window (Figure 16 on page
86).
Figure 16.

Define Host Screens Window

This screen lists the names of all host screens, defined and undefined,
known to Script Builder. Undefined screens (those with names but not
identifiers, as noted earlier), are marked with an asterisk (*). Host screens
marked with an ampersand (&) designate screens that have been
referred to in either the application’s Transaction or Host Session
Maintenance component. However, these host screens do not actually
exist yet, because they have not been defined or identified. The Define
Host Screens window is empty for a new application.
Note:

Beneath the Define Host Screens window is a line indicating the
number of captured snapshots currently available for host screen
definition.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 86

4

Defining the Host Interface

Defining the Host Screen Definition

Using the Terminal Emulator to Capture
Snapshots of Screens
Script Builder uses the 3270 Terminal Emulator to emulate a 3270 terminal,
and to capture snapshots of the screens used in the host application. For
detailed information about using the terminal emulator, see the 3270 User’s
Guide.
To access the terminal emulator and start a 3270 emulation session:
1 From the Define Host Screens window (Figure 16 on page 86), press F 3

(Capture).
The system displays the Capture Screen On window (Figure 17 on page
87). This window invokes the Terminal Emulator on the specified host
session.
Figure 17.

Note:

Capture Screen On Screen

If you enter a specific host session that is not available, you
receive a message and will need to try again. Entering all
automatically assigns you to a session that is available.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 87

4

Defining the Host Interface

Defining the Host Screen Definition

The terminal emulation screen appears as shown in Figure 18 on page
88. You are now working from a 3270 terminal, with Script Builder ready to
capture the host snapshots you specify.
Figure 18.

Terminal Emulation Screen

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 88

4

Defining the Host Interface
Note:

Defining the Host Screen Definition

After the Intuity CONVERSANT system hardware or software is
reset (for example, by turning on the computer, or issuing a
start_vs command), the synchronous communications hardware
and software takes a few additional minutes to reset. If you press
F 3 (Capture) to invoke the Terminal Emulator before it has reset, a
blank screen appears. No harm has been done, however the 3270
screen appears momentarily. To avoid confusion, wait five minutes
after resetting the system before invoking the Terminal Emulator.

Displaying
In terminal emulation mode, your keyboard is mapped to send 3270 keyboard
Keyboard Mappings codes to the host according to a configuration table set up during installation.

The Key Definitions option is used to display the mapping from your keyboard
to the 3270 keyboard.
To display this table while you are working in emulation mode in contact with
the host computer, perform the following procedure:
1 Press CT RL K from the terminal emulator.

The system displays the View and Define Key Definitions menu (Figure 19
on page 90), with the Program Function option highlighted.
For the Program Function option, the key name shown under the
Keystroke column specifies the actual key that must be pressed to
emulate the respective 3270 key that is listed under the Function column.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 89

4

Defining the Host Interface
Figure 19.

Defining the Host Screen Definition
View and Define Key Definitions Menu

The Key Group menu offers several options from which to choose. For
example, the Misc System option (Figure 20), includes information about
how to perform specific functions, such as how to access the View and
Define Key Definitions menu (Keys Ctrl+K). For detailed information
about the Key Definitions, see the 3270 User’s Guide.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 90

4

Defining the Host Interface
Figure 20.

Defining the Host Screen Definition
Misc System Option

2 Press ES C twice to exit the View and Define Key Definitions menu and

return to the terminal emulator screen.
Taking Snapshots

Once you feel comfortable with the terminal emulator, you are ready to take
snapshots. The idea is to proceed with your application, pausing to take a
snapshot of each screen as you go.
1 Log on to your host computer.

The system displays the first login screen.
2 Press ES C B to take the snapshot.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 91

4

Defining the Host Interface

Defining the Host Screen Definition

The terminal emulator displays a message confirming the snapshot
(Figure 21 on page 92).
Each snapshot is automatically numbered, in consecutive order, going
back to the creation of the application. Numbering is for your reference
and convenience. For example, snapshot 1 is the 1st snapshot taken for
the given application.
Figure 21.

Confirmation Message of a Captured Screen

3 Press EN TE R to continue.
4 Proceed with the application, taking snapshots of host screens as you go.

View all screens, including error message screens, special case screens,
etc. You may not need to include every screen in your application, but it is
easier to take a snapshot now and discard it later, rather than having to
log in to the host computer again to capture one you missed and need to
add.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 92

4

Defining the Host Interface

Defining the Host Screen Definition

5 Log off the host computer when you are finished taking snapshots.
6 Exit the Terminal Emulator via the Terminal Emulation Utilities screen by
pressing CT RL U to display the CLEO 3270 Customization screen.
7 Press x to exit.

You may also exit the Terminal Emulator directly by pressing C TR L X
simultaneously. You can restart the Terminal Emulator later by pressing
F3 (Capture). This puts you where you had left the host application when
you exited.
Naming the
Snaphots

The process of naming removes the host screen image from the snapshot
pool and transforms it into a Script Builder host screen.
To create a screen from a snapshot:
1 From the Define Host Screens window (Figure 16 on page 86), press F 1

(Add).
The system displays the Add Screen(s) screen (Figure 22 on page 94).
Remember that screen names marked with an ampersand (&) have been
referred to in the Transaction component, but do not yet exist as actual
screens. If you highlight one of the ampersand-noted screen names
before you press F1 (Add), that name is used as a default later in the
Name the Screen to be Added screen.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 93

4

Defining the Host Interface
Figure 22.

Defining the Host Screen Definition
Add Screen(s) Screen with Sample Snapshot

Add Screen(s)
ID NUMBER:

CLEAR - EXIT

Snapshot 10

10 o

LAST NAME:

PF3 - MENU

Cycle through the snapshots name and remove snapshots as needed

Note:

This is to be the screen used to send the ID NUMBER to the host.
This same image is used in the next several examples.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 94

4

Defining the Host Interface

Defining the Host Screen Definition

Image screens look different than the other screens in Script Builder.
Image screens are similar to the snapshots taken of the host’s screens,
with additional markings and notations used by Script Builder.
Because the image of a host screen requires almost the full screen of
your terminal, the normal screen box is not used. Furthermore, the normal
banner line is replaced by the image screen title. Even with this
economizing, the top and bottom lines of the host screen are obscured by
the screen title and message line.
2 When it is necessary to see the top or bottom host screen line, press
F8 (Chg-Keys) followed by F2 (Hide) to temporarily remove the title and
message lines from the display. Press F2 (Reveal) to restore the title and

message lines to the display.
First, the host image from the pool of snapshots is shown, along with
indication that it is “snapshot x” and that it is “y of z” snapshots in the pool
and available to be named. This means that the snapshot is the xth one
taken since the application was created, that there are currently z
snapshots in the pool, and that this is the yth snapshot in the pool.
3 Press F4 (Next) and F3 (Previous) to display the different screens in the
pool. If the last snapshot in the pool is displayed and you press F4 (Next),

then the first snapshot in the pool is displayed.
As is typical for image screens, you may wish the display to show the
Script Builder screen title and message lines, or you may wish to hide
them in order to have an unobstructed view of the host image.
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 95

4

Defining the Host Interface

Defining the Host Screen Definition

4 Press F5 (Name).

The system displays the Name the Screen to Be Added window
(Figure 23 on page 96).
Figure 23.

Name the Screen to be Added Window

5 In the Screen Name field, type the screen name or press F2 (Choices) for

a list of names that have been referenced in the Transaction and/or Host
Session Maintenance definitions, but not yet given to an actual screen.
The naming conventions are as follows:
~ Name must be from 1 to 11 characters in length.
~ Legal characters include letters (A–Z and a–z), numbers (0–9), and the

underscore (_).
~ First character must be a letter.
~ Names are case sensitive; that is, ABC is not the same as Abc or abc.
~ All screen names in the application must be unique.

If you try to enter a duplicate name, a beep sounds and Script Builder tells
you in the message line that the name already exists.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 96

4

Defining the Host Interface

Defining the Host Screen Definition

6 In the Screen Type field, press F2 (Choices) to open a menu. Then

select Login Base, Transaction Base, or Other. Or, enter the screen
type in the second field by entering the first letter of the base type (either
l, t, or o)
Whenever the Intuity CONVERSANT system is started up, if the
application has been previously installed, the system tries to log in to the
host computer. To successfully log in using the procedure you define in
Host Session Maintenance, the system expects to start at a known point,
with a known screen. You designate this screen as the Login Base
Screen.
In a manual (nonautomated) version of an application, agents usually do
not log in to the host with each phone call. Instead, they typically log in
once and proceed to a screen that acts as a starting point for each
transaction, thus sparing the caller the (sometimes lengthy) log-in
procedure.
Likewise, your automated application typically utilizes a certain screen as
the transaction starting point. You indicate this screen to be the
Transaction Base Screen.
All screens that are not Login Base or Transaction Base screens are
considered to be Other.
Figure 24 shows the River_Bank User_acct Base Screen being created.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 97

4

Defining the Host Interface
Figure 24.

Defining the Host Screen Definition
Creating the River_Bank user_acct Transaction Base Screen

Add Screen(s)

Snapshot 11

11 of 14

Choices
ID NUMBER: Type
00001

LAST NAME: JONES
JULY 19, 1992
FIRST NAME: PATRICK
16:33
other
login base screen
transaction base screen
SOC SEC NO
: 234-65-9087
CHECKING BALANCE:
$2,010.27
Name the Screen
to Be
Added :
DATE OF BIRTH : 26/11/48
SAVINGS
BALANCE
$7,354.63
CITY OF BIRTH
: COLUMBUS
user_acct
Screen Name: ______________________
SSSSSS
VVVV baseVVVV
transaction
screen
Screen
Type: ______________________
SSSSSSSS
VVV
VVV

CLEAR - EXIT

PF3 - MENU

PF4 - TABLE

Place cursor on a menu item and press ENTER to choose it.
HELP

REDRAW

LIST

CANCEL

EXIT

Most applications always log in the same manner and therefore require a
single Login Base screen. Likewise, most application host transactions
always start from the same point within the host application and require a

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 98

4

Defining the Host Interface

Defining the Host Screen Definition

single Transaction Base screen. However, there are exceptions. With
more complicated host applications, Script Builder allows you to indicate
more than one Login Base or Transaction Base screen. This must be
carefully implemented to ensure that an application operates as desired.
See Chapter 11, Using Advanced Features, for more information on
multiple base screens.
Note:

It is very important that you correctly determine and specify the
Transaction Base screen. System recovery is based on it.

7 Press F3 (Close) to enter the information and create the screen when

both blanks have been filled in. The snapshot is removed from the pool
and is converted into a named (but still undefined) screen.
The Add Screen(s) screen is also closed by this step. The Define Host
Screens window is active.
The new name appears in the Define Host Screens window (with an
asterisk *). The count of available snapshots has decreased by one.
Removing
Unwanted
Snapshots

After the Host Interface component is completely defined (all required
screens have been named), there may be a few leftover snapshots, either
because they were not needed or because duplicate snapshots were taken.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 99

4

Defining the Host Interface

Defining the Host Screen Definition

To remove a snapshot:
1 From the Add Screen(s) screen (Figure 22 on page 94), press F 4 (Next)
and F3 (Previous) to move through the snapshot list until the screen

shows the snapshot you want to remove.
2 Press (Remove).

The system displays the Remove Snapshot Confirmation screen.
3 Press F7 (Cont) to confirm the removal or F6 (Cancel) to change your

mind and abort the removal.
Once removed, a snapshot can be restored only by pressing
F3 (Capture) to log in to the host and re-take the snapshot. Snapshots
take very little room on your computer disk, so do not remove any
snapshots until your application is up and running and you are sure you
do not need them.
Defining Screen
Identifiers

Snapshots can be very similar in appearance. This is why Script Builder must
be shown a part of each snapshot that will uniquely identify it from the others
in the pool. Identifiers usually are parts of the snapshot that do not change
and that are unique to that screen.
Consider the screens “send_id” (Figure 22 on page 94), “user_acct” (Figure
25 on page 102), and “login_base” (Figure 26 on page 103). Note that the
text ID NUMBER: could identify “send_id” or “user_acct” from “login_base,”
but not from each other.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 100

4

Defining the Host Interface

Defining the Host Screen Definition

So ID NUMBER: may be a useful identifier, but you must provide more
information to make each of those screens unique. This is easily done in the
case of “user_acct” by adding an identifier such as FIRST NAME,
CHECKING BALANCE, etc. But there is nothing that can be identified on
“send_id” that distinguishes it from “user_acct”. To uniquely identify
“send_id”, it is necessary to indicate text (from “user_acct”) that is not found
on the “send_id” screen, such as FIRST NAME, CHECKING ACCOUNT, etc.
These are called exclude identifiers.
You can also identify a screen by cursor location or by lack of any information
(a blank screen). Sometimes the location of the cursor on the host screen can
be important. Therefore, it is possible to create an identifier consisting of just
the cursor location. Sometimes an entirely blank screen can be useful in an
application. It has a special blank screen identifier.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 101

4

Defining the Host Interface
Figure 25.

Defining the Host Screen Definition
River_Bank user_acct Screen

Define  Screen (transaction base)

ID NUMBER: 00001

SOC SEC NO
DATE OF BIRTH
CITY OF BIRTH

CLEAR - EXIT

River_Bank

LAST NAME: JONES
FIRST NAME: PATRICK

: 123-45-6789
: 26/11/48
: COLUMBUS

PF3 - MENU

JULY 19, 1992
16:33

CHECKING BALANCE:
SAVINGS BALANCE :

$2,010.27
$7,354.63

PF4 - TABLE

Press the function key of the item you would like to define.
IDENT

FIELDS

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

CHG-KEYS

Issue 2 January 2000 102

4

Defining the Host Interface
Figure 26.

Defining the Host Screen Definition
River_Bank Login Base Screen (login_base)

Define
(login base)
EEEEE LScreen L
BBBB 
L
L
B
B E
L
L
BBBBB EEEE
L
L
B
B E
BBBBB EEEEE LLLLL LLLLL
L
L
L
L
LLLLL

AAAA
A
A
AAAAAA
A
A
A
A

River_Bank

BBBB
B
B
BBBBB
B
B
BBBBB

SSSSS
S
SSSSS
S
SSSSS

COLUMBUS, OHIO
C - - > CICS
I - - > TSO
J - - > JES3
ENTER SELECTION LETTER:
Press the function key of the item you would like to define.
IDENT

Screen Identifier
Overview

FIELDS

CHG-KEYS

•

Identifier definition is always performed on one screen at a time.

•

There must be at least one identifier per screen.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 103

4

Defining the Host Interface
•

Defining the Host Screen Definition

Screen identification consists of one of the following:
~ A combination of one or more regular, exclude, and cursor location

identifiers
~ A blank screen identifier
•

Regular identifiers are highlighted.

•

Exclude identifiers are shown blinking.

•

A cursor location identifier is indicated by a blinking at symbol (@).

Note:

Screen identifiers cannot be specified on line 25 of a host screen.

In some host applications, the screen information comes in “chunks” rather
than all at once. If this is true in your application, be sure to include at least
one identifier from the last “chunk” to arrive. Otherwise the Intuity
CONVERSANT system may proceed with missing information, or may
misinterpret the last chunk as an unrecognized screen when the next Get
Host Screen action step is performed.
Defining Screen
Identifiers

To define screen identifiers:
1 While in the Define Host Screens window (Figure 16 on page 86),

highlight the screen for which you want to modify the identifier definition,
then press F4 (Define).
The system displays the Define (screen name) Screen (Figure 27 on
page 105).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 104

4

Defining the Host Interface
Figure 27.

Defining the Host Screen Definition
River_Bank user_acct Screen Identifier Definition

Define  Screen (transaction base)

ID NUMBER: 00001

SOC SEC NO
DATE OF BIRTH
CITY OF BIRTH

CLEAR - EXIT

River_Bank

LAST NAME: JONES
FIRST NAME: PATRICK

: 123-45-6789
: 26/11/48
: COLUMBUS

PF3 - MENU

JULY 19, 1992
16:33

CHECKING BALANCE:
SAVINGS BALANCE :

$2,010.27
$7,354.63

PF4 - TABLE

Press the function key of the item you would like to define.
IDENT

FIELDS

CHG-KEYS

The titles of many of the image screens include the name of the screen
being worked on. This helps you to keep track of where you are within the

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 105

4

Defining the Host Interface

Defining the Host Screen Definition

host screen definition. Your options are to define screen identifiers or
fields.
2 Press ID EN T.

The system displays the Define (screen name) Screen Identifiers screen
(Figure 28 on page 107). Any existing identifiers are shown according to
the screen identification rules.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 106

4

Defining the Host Interface
Figure 28.

Defining the Host Screen Definition
River_Bank user_acct Screen Identifier Definition

Define  Screen Identifiers (transaction base)
ID NUMBER: 00001

SOC SEC NO
DATE OF BIRTH
CITY OF BIRTH

CLEAR - EXIT

River_Bank

LAST NAME: JONES
FIRST NAME: PATRICK

: 123-45-6789
: 26/11/48
: COLUMBUS

PF3 - MENU

JULY 19, 1992
16:33

CHECKING BALANCE:
SAVINGS BALANCE :

$2,010.27
$7,354.63

PF4 - TABLE

Press the proper function key to remove or add identification strings
ADD

REMOVE

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

CHG-KEYS

Issue 2 January 2000 107

4

Defining the Host Interface

Adding a Screen
Identifier

Defining the Host Screen Definition

To create a new screen identifier:
1 From the Define (screen name) Screen Identifiers screen (Figure 28 on
page 107), press A DD.

The system displays the Add (screen name) Screen Identifier screen.
2 To create a regular screen identifier:
a Use the cursor movement keys to position the cursor at the beginning
of the desired text, then press BE GI N . Change starting point of the text
simply by pressing B EG IN again.
b Position the cursor at the end of the desired text, then press E ND.
c Reposition the starting and ending points of the text string as desired,
then press SAV E to include string as part of screen identification.

The maximum length of a regular identifier is 128 characters. The
regular identifier may wrap around lines, but cannot wrap from the
bottom to the top of the screen.
3 To create an exclude screen identifier:
a Position the cursor at the desired starting point, then press E XC LU DE .

The system displays the Add Exclude Identifier window.
b Type the exact text desired, then press CLO S E to enter the exclude

text.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 108

4

Defining the Host Interface

Defining the Host Screen Definition

This exact text must be specified as an identifier for the screen from
which you are trying to exclude. The maximum length of an exclude
identifier is 60 characters. If you need a longer exclude identifier, just
add multiple exclude identifiers. You may not specify exclude identifiers
consisting only of blank space. The exclude identifier may wrap around
lines but cannot wrap from the bottom to the top of the screen.
Note:

If a string starting point has been marked with BEGIN since the
last save, EXCLUDE takes that as the starting point for the
exclude string instead of the current cursor position.

4 To create a cursor location screen identifier:
a Move the cursor to the desired location.
b Press CU R SO R followed by SAV E .

The identified cursor location is indicated by a blinking at symbol (@).
Since the cursor can only be in one location at a time, only one cursor
identifier can be defined per screen. Script Builder sounds a beep if
you try to define more than one.
5 Press SAV E as each new identifier is defined to add it to the screen
definition. After all desired identifiers have been created, press CA NC E L

to return to the Define (screen name) Screen Identifiers screen.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 109

4

Defining the Host Interface

Defining the Host Screen Definition

Removing a Screen To remove a screen identifier:
Identifier
1 From the Define (screen name) Screen Identifiers screen (Figure 28 on
page 107), press R EM O VE .

The system displays the Remove (screen name) Screen Identifier(s)
screen. All identifiers appear with normal attributes except the one that is
highlighted.
2 Press TAB , then SH IFT TA B to cycle through all identifiers until the

desired identifier is highlighted.
3 Press RE M O VE to delete the highlighted identifier.

Note:

The system may warn you about permanently removing an
identifier. This is an informational message asking if you really
want to proceed with the remove. Answer accordingly.

4 Repeat until all unwanted identifiers have been removed.
5 Press SAV E , then CA N CE L to return to the Define (screen name)

Screen Identifiers screen.

Renaming a Screen or Changing Screen Type
To rename a screen or change its base type:
1 .In the Define Host Screens window (Figure 16 on page 86), highlight the
screen to be changed, then press R EN AM E .
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 110

4

Defining the Host Interface

Defining the Host Screen Definition

The system displays the Rename Screen window. It is identical in format
and procedure to the Name the Screen to Be Added window (Figure 23
on page 96), except that the existing screen name and base type are
already filled in.
2 Make your selected changes in the Screen Name field and/or the Screen

Type field.
3 Press CL OS E to enter the changes made, or CA NC EL to leave the field

as it was.
Note:

Changing a screen name does not cause any references to the
same name in the Transaction or Host Session Maintenance
definitions to be changed also.

Removing a Screen
To remove a screen:
! CAUTION:
This procedure deletes the screen and all of its components, including the
snapshot image, screen name, and any identifiers and fields that are part of
the screen definition.
1 In the Define Host Screens list screen, highlight the name of the screen to
be removed, then press RE M OV E .

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 111

4

Defining the Host Interface

Defining the Host Screen Definition

The system displays the Remove Screen Confirmation message to warn
you of the consequences of the pending action step.
2 Press CO N T to proceed to remove the screen, or C A NC EL to abort the

removal.
Note:

If the screen name is being used in either the Transaction or the
Host Session Maintenance definition, it will remain in the Define
Host Screens list, marked with an ampersand (&).

Defining Screen Fields
A human operator is limited to entering data on designated areas of a host
screen. Script Builder is also limited to entering data in specified fields. Define
screen fields to limit Script Builder access to the specified fields on the screen
for sending and receiving data. Perform field definition on one screen at a
time.
Size Limit of Host
Screen Field Data

For a single host screen, the total size of all fields defined must be equal to or
less than 2000 bytes minus 1 byte of overhead for each host field. Table 29
on page 113 shows the default size for each type of host field.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 112

4

Defining the Host Interface

Defining the Host Screen Definition

Figure 29.

Default Host Field Sizes

Field Type

Bytes

char

number of characters

number

4

date

8

time

6

To calculate the size of all fields defined in a single host screen, add the sizes
of each field. For example, if there are four date fields, four time fields, ten
character fields of five characters each, and one number field, the total size is
110 bytes plus 19 bytes overhead (19 fields).
Note:

If the data to be defined exceeds the capacity determined with this
formula, the Host Screen could be captured, defined as two
separate screens, identified accordingly, and received by the
Intuity CONVERSANT system with two separate Get Host Screen
action steps.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 113

4

Defining the Host Interface

Defining a Screen
Field

Defining the Host Screen Definition

To define a screen field:
1 From the Define Host Screens window (Figure 16 on page 86), highlight

the screen for which you want to modify the field definition, then press
DE FIN E .
The system displays the Define (screen name) Screen (Figure 27 on
page 105).
2 Press FIE LD S .

The system displays the Define (screen name) Screen Field(s) window
(Figure 30 on page 115).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 114

4

Defining the Host Interface
Figure 30.

Defining the Host Screen Definition
River_Bank user_acct Screen Field Definition

ID NUMBER: 00001
LAST NAME: JONES
Define  Screen
Fields PATRICK
FIRST NAME:

SOC SEC NO
DATE OF BIRTH
CITY OF BIRTH

: 234-65-9087
: 26/11/48
: COLUMBUS

JUNE 15, 1992
16:24

CHECKING BALANCE:
SAVINGS BALANCE :

$2,010.27
$7,354.63

3 Press AD D.

The system displays the Add Screen Field window (Figure 31 on page
116).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 115

4

Defining the Host Interface
Figure 31.

Defining the Host Screen Definition
Adding user_id field River_Bank user_acct Screen

Define
 LAST
Screen
FieldsJONES
ID NUMBER:
00001
NAME:
JUNE 15, 1992
Add Screen Field
FIRST NAME: PATRICK
16:24
user_id
Field Name: _______________________
char
Field Type: ______
both
Usage:
_______
SOC SEC NO
: 234-65-9087
CHECKING BALANCE:
$2,010.27
C
Format:
______
SAVINGS
BALANCE
:
$7,354.63
DATE OF BIRTH : 26/11/48
SSSSSS________
VVVV
VVVV
regular
Location:
SSSSSSSS
VVV
VVV
CITY OF BIRTH
: COLUMBUS

CLEAR - EXIT

PF3 - MENU

PF4 - TABLE

Fill out the form, press CLOSE when finished.
HELP

CHOICES

CLOSE

REDRAW

LIST

CANCEL

EXIT

4 In the Field Name field, type the name, or press CH O IC ES for a list of

fields that have been referenced for this screen, in either the Transaction
or Host Session Maintenance definition, and have not yet been defined as
part of the screen.
The normal rules apply for naming fields. See Field Name in Chapter 3,
Data Management, for field naming rules.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 116

4

Defining the Host Interface

Defining the Host Screen Definition

5 In the Field Type field, type the first letter of the desired type or press
CH O IC ES to select from a a menu.

The normal field type selections (that is, char, num, date, and time) apply.
See Field Type on page 47 in Chapter 3, Data Management, for
information about field types.
6 In the Usage field, specify whether the value in the field is sent TO_HOST

only, received FROM_HOST only, or goes in BOTH directions.
Note:

Host computer screens exchange data only in designated areas of
the screen called unprotected fields. If you indicate that a field
value goes TO_HOST or in BOTH directions, Script Builder allows
you to locate the field only in an unprotected area of the screen.

7 In the Format field, type the desired format or press CH O IC ES for a

menu of those commonly used.
See Formats for Input from Host Computer on page 58 and Formats for
Output to a Host Computer on page 66 in Chapter 3, Data Management,
for information about host field formats.
8 In the Location field, type the first letter of the desired location entry or
press CH O ICE S for a menu.
~ A regular location means that the field is found in the same regular, or

fixed, location of a screen, under any conditions.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 117

4

Defining the Host Interface

Defining the Host Screen Definition

~ An external location means the field’s location can vary, depending on

circumstances such as the specific field value, whether an error has
occurred, etc.
You must locate external fields by means of a special C-language file
external to the Script Builder user interface. See Chapter 11, Using
Advanced Features, for additional information.
9 Press CL OS E when the screen is completed as desired
10 To locate a regular field:
a Use normal cursor movement keys to highlight the beginning of the

field in the Locate Field (field name) on Screen (screen name) screen
(Figure 32 on page 120), then press BE GI N .
Note:

The status line (normally found on line 25 of the 3278) cannot be
used for screen recognition criteria. It is not a part of the image
screen; therefore fields cannot be specified on line 25 of the host
screen.

Note:

You can bypass the cursor movement keys and directly highlight
the screen’s unprotected fields (if any) pressing TA B and then
S HI FT TA B . Script Builder sounds a beep when you try to go past
the last unprotected field in either direction. If Script Builder
sounds a beep without highlighting anything, there are no
unprotected fields in the screen.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 118

4

Defining the Host Interface

Defining the Host Screen Definition

Script Builder checks for the presence of a field at that location and
highlights the field from the present cursor position to the end of the
field. The highlighted host field area only suggests a beginning and
ending. You must still mark your actual desired beginning and ending
field locations with the BE G IN and EN D keys.
b Move the cursor to the end of the field, then press EN D.
c Adjust the field beginning and ending as desired. Press C H G- KE YS ,
then C LO SE to complete the field definition.

The system adds the field name to the list.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 119

4

Defining the Host Interface
Figure 32.

Defining the Host Screen Definition
Specifying a Regular Location for user_id the River_Bank user_acct
Screen

Locate Field  on Screen 

ID NUMBER: 00001

SOC SEC NO
DATE OF BIRTH
CITY OF BIRTH

LAST NAME: JONES
FIRST NAME: PATRICK

: 123-45-6789
: 26/11/48
: COLUMBUS

CLEAR - EXIT

River_Bank

PF3 - MENU

JULY 19, 1992
16:33

CHECKING BALANCE:
SAVINGS BALANCE :

$2,010.27
$7,354.63

PF4 - TABLE

Mark the begin and end points of the field, then press CLOSE
BEGIN

END

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

CHG-KEYS

Issue 2 January 2000 120

4

Defining the Host Interface

Defining the Host Screen Definition

11 To locate an external field:
a In the Specify Number of Characters field in the External Field

Length window (Figure 33 on page 121), type the length of the field.
Figure 33.

Specifying External Location for user_id the River_Bank user_acct
Screen

ID NUMBER:
00001
LAST NAME:
JONES
JUNE 15, 1992
Define
 Screen
FieldsAdd
Screen Field
FIRST NAME: PATRICK
Field Name: _______________________
16:24
user_id
Field Type: ______
char
Usage:
_______
both
SOC SEC NO
: 234-65-9087
CHECKING BALANCE:
$2,010.27
Format:
______
C
SAVINGS
BALANCE
:
$7,354.63
DATE OF BIRTH : 26/11/48
SSSSSS
VVVV
VVVV
Location:
________
regular
SSSSSSSS
VVV
VVV
CITY OF BIRTH
: COLUMBUS

External Field Length
Specify Number of Characters: _____

Legal length range is from 1 to 127 characters.
b Press CL OS E to complete the field definition.

The system adds the field name to the list.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 121

4

Defining the Host Interface

Defining the Host Screen Definition

Displaying a Screen Sometimes fields overlap on a screen. To display an individual screen field:
Field
1 In the Define (screen name) Screen Field(s) window (Figure 30 on page
115), with any field highlighted, press SH O W.

The system displays the Show (screen name) Screen Field(s) screen
(Figure 34 on page 123). The field name and method of location are
shown at the bottom of the screen.
Note:

The system automatically highlights the first field created. Press
N EX T and P RE V as desired to see the location for each field, in
order of creation, displayed in the screen.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 122

4

Defining the Host Interface
Figure 34.

Defining the Host Screen Definition
Showing River_Bank user_acct Screen Fields

Show  Screen Field(s)
ID NUMBER: 00001

SOC SEC NO
DATE OF BIRTH
CITY OF BIRTH

River_Bank
LAST NAME: JONES
FIRST NAME: PATRICK

: 234-65-9087
: 26/11/48
: COLUMBUS

CLEAR - EXIT

PF3 - MENU

JUNE 15, 1992
16:24

CHECKING BALANCE:
SAVINGS BALANCE :

$2,010.27
$7,354.63

PF4 - TABLE

Display Field: bday
NEXT

PREVIOUS

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

CHG-KEYS

Issue 2 January 2000 123

4

Defining the Host Interface

Defining the Host Screen Definition

Renaming a Screen To rename a screen field:
Field
1 In the Define (screen name) Screen Field(s) window (Figure 30 on page
115), highlight the field to be renamed, then press R EN A ME .

The Rename (field name) Field screen opens.
2 Change the name as desired, then press CL OS E to preserve the change
or C AN CE L to leave the field name as it was.

Note:

Changing a Screen
Field Definition

Any matching references in the Transaction or Host Session
Maintenance definitions are not changed.

To change a screen field definition:
1 In the Define (screen name) Screen Field(s) window (Figure 30 on page
115), highlight the field to be renamed, then press C HA N GE .

The system displays the Change (field name) Field window. It is identical
in format and procedure to the Add Screen Field window (Figure 31 on
page 116), except that the blanks already contain the existing field
information.
2 Make any changes desired, then press CLO S E to preserve the change,
or C AN CE L to leave the field definition as it was.

Note:

If you change the field name, any matching references in the
Transaction or Host Session Maintenance definitions are not
changed.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 124

4

Defining the Host Interface

Defining Host Session Maintenance

To change the field location from regular to external (or external to
regular), move the cursor to the Location field and change the value.
Then proceed to define the field location as described in step or
step 11 of Defining Screen Fields on page 112. To relocate a regular field,
press N EW-L OC to open the Locate Field (field name) on Screen (screen
name) screen (Figure 32 on page 120).
Removing a Screen To remove a screen field:
Field
1 In the Define (screen name) Screen Field(s) window (Figure 30 on page
115), highlight the field to be removed, then press R EM O VE .
2 Press CO N T to confirm and continue to eliminate the field and all its
attributes, or press C AN CE L to retain it.

Defining Host Session Maintenance
In the Host Session Maintenance script, you specify host activities that occur
in the background as opposed to activities that occur as part of a caller
transaction.
Background activities include:
•

Logging in and progressing through the host application to the point of the
Transaction Base screen

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 125

4

Defining the Host Interface

Defining Host Session Maintenance

The Transaction Base screen is the first screen the caller uses to begin a
transaction with the host computer.
•

Recovery (restoring the host application to the transaction base after a
caller transaction, if necessary)

•

Logging out

For example, in the River Bank application—presented in Appendix A,
Sample Application, there is no reason for the caller to have to wait while the
operator logs in to the host computer. Rather, the agent can log in once each
morning, progressing to the point where the caller’s ID is entered. The agent
can then quickly get account information as each call comes in, returning to
the same “base” point; that is, the account ID entry screen, after each caller
transaction.
A Host Session Maintenance definition is similar to a Transaction
definition—described in Chapter 7, Defining the Transaction, except for
background activities. A main difference between them is how they respond
to an unspecified UNRECOGNIZED_SCREEN or HOST_TIMEOUT as a
possible case in a Get Host Screen action step. The Host Session
Maintenance script proceeds with the action step following the End Get
Screen. The Transaction script quits when it encounters this condition.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 126

4

Defining the Host Interface

Starting the Host
Session
Maintenance
Definition

Defining Host Session Maintenance

To start the host session maintenance definition:
1 From the Define Application menu (Figure 14 on page 40), select

>Host Interface

The system displays the Define Host Interface menu (Figure 35 on page
127).
Figure 35.

Define Host Interface Menu

2 Select

>Host Session Maintenance

The system displays the Host Session Maintenance screen (Figure 36 on
page 128).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 127

4

Defining the Host Interface
Figure 36.

Defining Host Session Maintenance
Host Session Maintenance Screen

The three predefined labels cannot be copied, renamed, or removed.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 128

4

Defining the Host Interface

Labels

Defining Host Session Maintenance

Labels in Host Session Maintenance work differently than they do in a
transaction. A label in Host Session Maintenance defines an autonomous
sequence of steps. This is most clearly understandable in terms of the
predefined sequences login, logout, and recover. Once the login sequence is
complete, you do not expect to continue to the logout sequence. The system
does not automatically continue from one sequence to the next. If you want it
to continue, put a Goto Label as the last action step in the first sequence.
Control is automatically transferred to the appropriate label for a given
situation.
User-defined labels have the same are processed the same way. If you use a
label, you are defining a new sequence, with the side effect of ending the
previous sequence.
Note:

You can include up to nine labels in the Host Session
Maintenance screen, which include the predefined labels;
therefore, you can define up to six additional labels.

login

The login sequence is executed whenever the system is brought “up” or when
the recovery sequence ends at the Login Base screen. The result must be to
leave the host application at the Transaction Base screen. Then the
Transaction component can be defined under the assumption that it picks up
the host application at the transaction base.

logout

The logout sequence is executed whenever the system is brought down.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 129

4

Defining the Host Interface

recover

Defining Host Session Maintenance

The recover sequence is initiated whenever one of the following occurs:
•

The transaction ends and the current host screen is not the Transaction
Base screen

•

The login procedure ends and the current host screen is not the
Transaction Base screen

•

The recover procedure ends and the current host screen is not the
Transaction Base screen (unless the current host screen is the Login
Base screen, which will result in a login sequence)

Note that this means that like the login sequence, the recover sequence must
end with the host application at the Transaction Base screen. If it does not,
the recover sequence will be reinvoked, thus leading to an endless cycle.
Note:

The Intuity CONVERSANT system waits 20 seconds before
reinvoking the recover or login sequence after the session fails to
log in. Each failed attempt increases the wait by 20 seconds. For
example, for five consecutive failed attempts to log in, the system
waits 100 seconds before attempting again. Thus, the system
reinvokes the recover or login sequence at a progressively slower
pace. However the system will not wait longer than 10 minutes
before trying again.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 130

4

Defining the Host Interface

Action Steps

Defining Host Session Maintenance

Host Session Maintenance uses a subset of the action steps available in the
Transaction:
•

Comment

•

Get Host Screen

•

Goto Label

•

Label

•

Send Host Screen

Methods to define sequence flow and to define the details of each action step
are similar to those of the Transaction component—presented in Chapter 7,
Defining the Transaction, but there are some important differences.

Host Session Maintenance Sequence Flow
Sequence flow is similar to Transaction flow, except that every label used in
Host Session Maintenance constitutes the beginning of an independent
sequence.
This means that you can define sequences of your own, as branches from
the login, logout, and recover sequences. In fact, you can use the Goto Label
action step in any sequence to exit that sequence and begin another.
There is also a major difference from Transaction flow here. In the
Transaction, if the flow encounters a label (aside from being directed to go to
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 131

4

Defining the Host Interface

Defining Host Session Maintenance

it), the Transaction flow continues on past the label. In Host Session
Maintenance, the label constitutes the beginning of a new sequence, hence
the end of the current sequence. Host Session Maintenance flow stops at the
end of a sequence. It is vital that every custom sequence you specify
eventually leads back to either the login or recover sequence. The following
example shows the River Bank Host Session Maintenance Screen Script
Builder action steps.
login:
#### Login sequence from the login base screen
#### called "login_base" to the transaction base
#### screen, called "main_menu"
1.
Get Host Screen
For Screen Name: login_base
2.
Send Host Screen
Send Screen Name: login_base Use Aid Key: ENTERKEY
Field: selection = "applid=cs432"
3.
Get Host Screen
For Screen Name: cics_banner
4.
Send Host Screen
Send Screen Name: cics_banner Use Aid Key: ENTERKEY
Field: choice = "2"
5.
Get Host Screen
For Screen Name: blank
6.
Send Host Screen
Send Screen Name: blank Use Aid Key: ENTERKEY
Field: blank_input = "main"
7.
Get Host Screen
For Screen Name: main_menu

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 132

4

Defining the Host Interface

Defining Host Session Maintenance

End Get Host Screen
End Get Host Screen
End Get Host Screen
For Screen Name: main_menu
End Get Host Screen

8.
9.
10.

11.
12.

13.
14.

15.

logout:
Get Host Screen
For Screen Name: main_menu
Send Host Screen
Send Screen Name: main_menu Use Aid Key: PF3
Get Host Screen
For Screen Name: login_base
End Get Host Screen
For Screen Name: UNRECOGNIZED_SCREEN
Send Host Screen
Send Screen Name: Use Aid Key: PF3
Get Host Screen
For Screen Name: login_base
End Get Host Screen
End Get Host Screen
recover:
Get Host Screen
For Screen Name: cics_banner
Send Host Screen
Send Screen Name: cics_banner Use Aid Key: ENTERKEY
Field: choice = "2"
Get Host Screen
For Screen Name: blank

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 133

4

Defining the Host Interface
16.

17.

Host Session Maintenance Script Rules

Send Host Screen
Send Screen Name: blank Use Aid Key: ENTERKEY
Field: blank_input = "main"
Get Host Screen
For Screen Name: main_menu
End Get Host Screen
End Get Host Screen

Host Session Maintenance Script Rules
The following information will help you develop your Host Session
Maintenance outline.
1 A Transaction Base screen is the screen that the Intuity CONVERSANT

system returns to after a transaction. In some applications, any host
screen can be obtained from any other screen. In this case, all screens
are Transaction Base screens. In other applications, particular screens
can only be obtained through a certain path. You must specify to the
system what screen to start with to get to the other screens. This starting
screen is the Transaction Base screen.
2 The last screen of the login sequence must be a Transaction Base

screen.
3 The result of the recovery sequence is the Transaction Base screen.
4 The logout sequence should end with the Login Base screen.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 134

4

Defining the Host Interface

Host Session Maintenance Script Rules

5 The first action step (other than Comment) of the login sequence should

be a Get Host Screen for the Login Base screen.
6 When developing the recovery sequence, remember to include all

possible cases, including UNRECOGNIZED_SCREEN and
HOST_TIMEOUT. The purpose of the recovery sequence is to tell a
Script Builder application how to recover if it detects a screen that it does
not expect. Whenever this happens, the system automatically invokes the
recovery sequence.
Also make sure to include the login base screen case in the recovery
sequence. If the login screen is not included, it could be recognized as
UNRECOGNIZED_SCREEN and subject to whatever action is specified
for the UNRECOGNIZED_SCREEN case. If no actions are specified for
the login base screen case, the login sequence will be automatically
invoked after recovery fails, and the login base screen is recognized.
See Defining the Host Interface on page 191 in Chapter 6, Defining
Parameters, for information about UNRECOGNIZED_SCREEN and
HOST_TIMEOUT.
! CAUTION:
When you are in a sequence, do not use a Goto Label referring back to the
same sequence. For example: A Goto Recovery label within the recovery
sequence will create an infinite loop that greatly hinders system performance.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 135

4

Defining the Host Interface

Host Session Maintenance Script Rules

Defining Get Host Screen
For a discussion of the Get Host Screen action step, including appropriate
processing of UNRECOGNIZED_SCREEN and HOST_TIMEOUT,
see Defining Get Host Screen on page 258 in Chapter 7, Defining the
Transaction.

Defining Send Host Screen
The Send Host Screen action step differs from its Transaction counterpart in
one way: TO_HOST fields can only be assigned constant values, not values
from fields, except for the two fields specified in the Parameters component:
$HOST_LOGINID and $HOST_PASSWORD.
This allows LU-specific login ID and password values to be specified in the
login process for the applications that require such a capability.
See Defining the Host Interface on page 191 in Chapter 6, Defining
Parameters, for more information.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 136

4

Defining the Host Interface

Host Session Maintenance Script Rules

Defining the Login Sequence
Every Host Session Maintenance sequence is a series of Get Host Screen
and Send Host Screen action steps. Keep in mind that the login sequence
should begin with the Get Host Screen case of the login base screen, and
end with the Get Host Screen case of the Transaction Base screen.

Defining the Logout Sequence
This sequence generally takes the host application from the Transaction
Base screen to the login base screen, with the purpose of logging off the host
computer.
Often there is a shortcut (such as C LR KE Y ) method for this, so that this
sequence can be relatively short compared to the login sequence.

Defining the Recovery Sequence
The recovery sequence should begin with a Get Host Screen action step,
except in the case that a universal Send Host Screen action step is available
that always forces transfer of the host application to a known location within
the host application.
It is possible to define the login and recovery sequences so that the system
goes into an “infinite loop.” If the recovery sequence does not result in arrival

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 137

4

Defining the Host Interface

Host Session Maintenance Script Rules

at the Transaction Base screen, it will causes the recovery sequence to be
invoked which, failing to arrive at the Transaction Base screen, causes the
recovery sequence to be invoked, and so on.
Test this sequence to ensure that it does indeed terminate at the Transaction
Base screen. This will save considerable debugging effort later when the
application is installed.

Host Session Maintenance: Tips
This section includes tips for working with the host session maintenance
script in your Script Builder applications.
Screen
Identification

Identify each screen based on the last chunk of information sent to the
screen.

Recover Logic

A failure could occur at any part of your host session. Write recover logic to
handle failures of VTAM, CICS, IMS, and the application.

Prevent Multiple
Requests

For IMS applications, have the host administrator turn off the normal
response mode so that logical units (LUs) will have their keyboards locked
until a response is received from the host. Otherwise, LUs may send more
requests before the first one is completed.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 138

4

Defining the Host Interface

Host Session Maintenance Script Rules

Delay Before
Getting Blank
Screen

Insert a delay before getting a blank screen in the login sequence. This delay
will help prevent the send of the blank screen prematurely, before the host is
ready. To insert a delay in the host control code, do a Get_Host_Screen on a
screen that will never be seen by the host. This results in an unrecognized
screen timeout, which effectively makes the LU wait the number of seconds
specified for the unrecognized screen timeout.

Using Goto Label
Commands

Goto Label action steps are good to use when writing the Login, Logout, and
Recover sequences of the Script Builder application. When used
discriminatively, they result in code that is more maintainable.
Here is an example of a login sequence written using Goto Label action
steps:
login:
Get Host Screen
For Screen name: FIRST
Send Host Screen: FIRST
Goto SECOND_SCREEN
For Screen Name: SECOND
Goto SECOND_SCREEN
For Screen Name: THIRD
Goto THIRD_SCREEN
For Screen Name: FOURTH
End Get Host Screen
SECOND_SCREEN:
Get Host Screen
For Screen Name: SECOND
Send Host Screen: SECOND

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 139

4

Defining the Host Interface

Host Session Maintenance Script Rules

Goto THIRD_SCREEN
End Get Host Screen
THIRD_SCREEN:
Get Host Screen
For Screen Name: THIRD
Send Host Screen: THIRD
Get Host Screen
For Screen Name: FOURTH
End Get Host Screen
End Get Host Screen

This example uses the Goto Label to reach the FOURTH screen (the
transaction base screen) by getting and sending the FIRST, SECOND, and
THIRD screens in order. Many applications log in this way. Notice how the
code is easy to read and easy to maintain. The login sequence modularizes
the code so that each screen is dealt with separately in its own sequence or
label. For example, the label SECOND_SCREEN functions only to advance
to the THIRD_SCREEN by getting and sending the SECOND_SCREEN.
That is all it does. Following this style, applications could try to have every
screen in its own label. This shortens the code and improves maintainability
since changes to a screen are localized to only one area.
Without using the Goto Label, Gets and Sends of Screens would be nested.
This is a good technique, but it could lead to a lot of duplicate code.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 140

4

Defining the Host Interface

Host Session Maintenance Script Rules

Here is an example of a recover sequence written using Goto Label action
steps:
recover:
Get Host Screen
For Screen name: SECOND
Goto SECOND_SCREEN
For Screen name: THIRD
Goto THIRD_SCREEN
For Screen name: FOURTH
For Screen name: CUSTOMER_DATA
Goto CUSTOMER_DATA_SCREEN
End Get Host Screen

This Recover sequence uses a small amount of code because it jumps to
much of the same code that was written for the login section.
Notice that CUSTOMER_DATA_SCREEN was added to account for the
common case where the current screen image is the customer data screen.
Notice also that there is no need to handle the FIRST screen here. Rather, it
is handled in the login sequence because it is the specially tagged login base
screen.
We can improve the recover sequence by tagging not only the FIRST but
also the SECOND and THIRD screens as login base screens. The
application will now automatically start executing the login sequence instead
of the recover sequence if either the FIRST, SECOND or THIRD screens is

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 141

4

Defining the Host Interface

Host Session Maintenance Script Rules

the current screen image. Using multiple login base screens, the recover
sequence looks like this:
recover:
Get Host Screen
For Screen name: FOURTH
For Screen name: CUSTOMER_DATA
Goto CUSTOMER_DATA_SCREEN
End Get Host Screen

Applications vary in their screen contents and in how they log in, log out, or
recover. The examples shown here are less complex than most real login
and recover sequences. Nevertheless the modular approach using Goto
Label actions should be applied whenever possible.
Remember that only nine labels can be defined, and three labels are already
predefined: login, logout, and recover. That leaves six labels, each for
handling one screen. Thus in reality, applications might have their login or
recover sequences coded using a mix of Goto Label action steps and
nesting.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 142

5

Creating Database Tables

Overview
This chapter describes the Database Tables component of Intuity
CONVERSANT Script Builder and shows how to create database tables,
change the structure of tables, edit the records contained within tables, and
remove tables. It also discusses how you can share a database table created
in another application, and how to restore local database tables.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 143

5

Creating Database Tables

Creating a Database Table

Creating a Database Table
You can use your Script Builder application to obtain information from a
database, either local or remote. Functions are available in the Script Builder
database component that allow you to create database tables, change the
structure of tables, edit the records contained within tables, and remove
tables. You access information in the tables by using an action step in the
transaction.

Databases
A database is a set of tables that contains information you want to give to or
receive from a caller. You create database tables using the Database Tables
component of Script Builder.
A database can help you accomplish the following in your application:
•

Update information that changes frequently

•

Receive and store information from callers

•

Share information from other applications

Within Script Builder, the word database describes a unique instance of an
ORACLE Relational Data Base Management System (DBMS). Database
table or table describes a data structure residing within a given database.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 144

5

Creating Database Tables

Creating a Database Table

Script Builder currently interfaces with one local database and up to four
remote ORACLE Relational DBMS. By using the Read Table action step, you
can access database table information residing within any local or remote
ORACLE databases for which connections have been established. See
Defining Read Table on page 306 in Chapter 7, Defining the Transaction, for
additional information. See Chapter 6, “Database Administration,” in Intuity
CONVERSANT System Version 7.0 Administration, 585-313-501, for
information on establishing access to local and remote databases.
The database table feature in Script Builder supports two different types of
user applications:
•

Applications that refer to information that changes frequently (that is, data
that is read-only)

•

Applications that allow the caller to change information

In the first situation, the application commonly refers to information that
changes too often to build directly into a transaction definition. At the same
time, it is inefficient to repeatedly access a host for information that is not
updated frequently. To remedy the situation, Script Builder can access data
in the local ORACLE database or on ORACLE databases on remote
machines networked with TCP/IP and SQL*Net.
In the River Bank example (see Appendix A, Sample Application), interest
rates change once a week. It would be impractical to revise the application
every Monday to update rates and access the host system for data that
remains constant for all customers for the week. In the manual
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 145

5

Creating Database Tables

Creating a Database Table

(nonautomated) version of the River Bank application, agents use a chart
containing the week’s interest rates. By changing a database, the chart is
easily updated to reflect each week’s rates, and agents can conveniently
consult the rate chart as needed during a transaction.
Script Builder can provide the rate chart using either local or remote database
capabilities. A local database table resides in the local ORACLE database on
the Intuity CONVERSANT system. A remote database table is located in an
ORACLE database on a remote networked machine, sometimes called a
host computer.
Each Script Builder application can support up to 10 different database
tables. Each table can have up to 15 fields or columns. When you define the
table, you name each field and give its characteristics (type and length).
The field type determines the general kind of information to be included in the
field (that is, a string of characters, a date, a number, or a time).
ORACLE Errors

If a screen display indicates an ORACLE error, you can retrieve more
information about the ORACLE error number by going to the system prompt
and typing /oracle/bin/oerr ora error_num
where error_num is the ORACLE error number in the reason field of the
system message.
You receive a brief explanation of the error, the “Cause” of the error and the
“Action” to correct the error.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 146

5

Creating Database Tables

Creating a Database Table

These ORACLE error messages are also logged in the System Message
Display screen. You may also see the ORACLE Error Messages and Codes
Manual for an explanation of the error. If the error is unique to the UnixWare
environment, see the ORACLE for UnixWare Technical Reference Guide for
more detailed information.
Each row (record) in a table is related to a single item and includes the
information in each column. The number of records contained in a database
table is limited only by the amount of disk space allocated to the ORACLE
database when it is installed.
! CAUTION:
You should access a database only through Script Builder menus. Any
changes made using ORACLE DBMS commands will have unpredictable
results.
Accessing a
Database Table

To access the database table to edit an existing table or to create a new
table, perform the following procedure:
1 From the Define Application menu (Figure 14 on page 40), select

>Database Tables

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 147

5

Creating Database Tables

Creating a Database Table

The system displays the Table Name menu (Figure 37 on page 148). This
menu lists the names and corresponding database access IDs of all
database tables that have been added to the application. If a table has
been added but not defined, it appears with an asterisk (*) in the Table
Name menu.
Figure 37.

Adding a New
Database Table

Table Name Menu

You can add a new database table to the system, or you can add an existing
database table to your application.
The following rules apply when naming a database table:
•

The name must be from 1 to 11 characters in length.

•

Valid characters are letters (A–Z and a–z), numbers (0–9), and
underscore (_).

•

The application’s first character must be a letter (A–Z, a–z).

•

Names are case sensitive; that is, ABC is not the same as Abc or abc.

Note:

Before using the Script Builder Add a Table screen to add or
access tables that reside in remote ORACLE databases, you must
first establish connections to the database(s) you wish to access

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 148

5

Creating Database Tables

Creating a Database Table

by defining a database access ID for each database. See Chapter
6, “Database Administration,” in Intuity CONVERSANT System
Version 7.0 Administration, 585-313-501, for information on
defining database access IDs.
Adding a Local
Database Table

To add a database table to your application:
1 Press F1 (Add) from the Table Name menu (Figure 37 on page 148).

The system displays the Add a Table window (Figure 38 on page 149).
This window allows you to add a new table and the corresponding
Database Access ID.
Figure 38.

Add a Table Window

2 In the Table Name field, enter the name of the new table. See the rules for

adding a database table in Adding a New Database Table on page 148.
Note:

Make sure each database table has its own unique name among
other applications. When you are adding a database table name,
the system checks with the ORACLE DBMS referenced by the
Database Access ID to see if a table by the same name exists in
that database. If a table with this name already exists, the system

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 149

5

Creating Database Tables

Creating a Database Table

asks if you want to use the same name. If you choose to use that
database table, you become an owner of that table. Note that the
shared database table name will appear in the Table Name menu,
but that it will not have an asterisk preceding it because it has
already been defined. For more information about sharing
databases, see Sharing Database Tables on page 165.
3 In the Database Access ID field, enter the applicable database access
ID to change the default value of this field or press F2 (Choices) for a

menu.
4 Press F3 (Close).

The system adds the database table name and database access ID to the
list of database tables.
The asterisk next to the new database table name indicates that it is
undefined. It has neither structure nor content. You must define a
structure for the database table in order to successfully install your
application. You can define a structure for the database table and not
enter any data.
Note:

If a script accesses multiple tables, some performance
improvement may be gained by defining multiple Database
Access IDs to the same database and splitting script table access
evenly between these multiple database access IDs.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 150

5

Creating Database Tables

Adding a Remote
Database Table

Creating a Database Table

The Intuity CONVERSANT system supports the creation of remote ORACLE
database tables. The remote ORACLE database can be created with
different ORACLE Versions, such as Version 5, Version 6, or Version 7.
ORACLE Version 7 differs from ORACLE Version 6 in the definition of
character fields. For example, in ORACLE Version 6, the field name CHAR
defines a variable-length character string, while in Version 7, the CHAR field
defines a fixed-length character string and the VARCHAR2 field defines a
variable-length character string.
The CHAR field will be automatically upgraded to a VARCHAR2 field when
the ORACLE Version 6 database table is migrated to Version 7. With this
upgrade, it is important that you do not use an existing remote ORACLE
Version 7 table that contains the CHAR field to define a variable length
character string. The CHAR field should instead be replaced by VARCHAR2.
Script Builder uses the oraldb database DIP to interface with the database
tables. The DIP deals only with the tables (remote or local) created by the
SQL*Plus user “sti/sti.” If, for any reason, table(s) in an application cannot be
created and owned by the user “sti/sti,” a few extra operations must be
performed before an application can refer to such a table.
For example, suppose you want to refer to a table “scott_tbl” created by
SQL*Plus user “scott/tiger” in your application. You must complete the
following steps before adding this table to your application:
1 Grant access of the table to the user “sti/sti”:
a Log in to SQL*Plus as “scott/tiger”

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 151

5

Creating Database Tables

Creating a Database Table

b Type grant all on scott_tbl to sti
2 Create a synonym for the user “sti/sti” that uses the same name as the

table name:
a Log in to SQL*Plus using “sti/sti”
b Type create synonym scott_tbl for scott.scott_tbl

Note:

Defining the
Database Table
Structure

The synonym must use the same name as the table name. Any
deviation of the naming causes errors during runtime. Note that
the non-”sti/sti” ownership is only supported on an ORACLE
Version 6 or Version 7 machine (remote or local). If your machine
has ORACLE Version 5 loaded, your application cannot access
tables that were not created/owned by “sti/sti” using the generic
database DIP.

Defining the database table structure is similar to setting up the columns and
rows of a chart. Your options for defining the database table structure are:
•

Adding one or more fields (columns) to the database table
~ Name must be from 1 to 24 characters in length.
~ Legal characters are letters (A–Z and a–z), numbers (0–9) and

underscore (_).
~ First character must be a letter (A–Z or a–z).
•

Defining the field characteristics

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 152

5

Creating Database Tables

Creating a Database Table

The data you will enter in the column later must conform to the
characteristics of the field at the head of the column.
•

Removing a field (column) from the database table

! CAUTION:
The system does not allow you to define and read a database table at the
same time. Therefore, you should redefine information in a database table
during off hours or after any scripts accessing the database table have been
disabled.
! CAUTION:
If an ORACLE database has multiple connections to it (either local or
remote), any changes made to the definition of an existing table within that
database will not be known by any of those connections until a stupefy and
then start_vs has been executed on each machine that has a connection
(that is, a Database Access ID that has been defined) to that database.
A database table that is currently locked by other processes cannot be
redefined (saved). The following message displayed on the screen indicates
that the table is currently locked:
Alter failed...Can’t drop original table
You should make sure that the table is not currently accessed by other
processes before redefining the table. If the problem persists, you may want
to restart the database to clear the condition. The database may keep a table
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 153

5

Creating Database Tables

Creating a Database Table

locked inappropriately, so a restart on the database (where the table resides)
may clear the condition.
To define the structure of a database table:
1 Highlight the database table to be defined from the Table Name menu

(Figure 37 on page 148).
2 Press F4 (Define).

The system displays the Define Table Structure menu (Figure 39 on page
154). It contains a list of all fields, or column headings, for the database
table. For a new database table, the list is empty.
Figure 39.

Define Table Structure Menu

3 Press F1 (Add) to add a field to the database table.

The system displays the Add a Field window (Figure 40 on page 155).
a Type the field name. Field names must be unique within an application

script.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 154

5

Creating Database Tables
Figure 40.

Creating a Database Table
Add a Field Window

b Press F3 (Close) when you are finished typing the new field name.

Note that the name (and column) are added following the field (and
column) currently highlighted in the Define Table Structure menu.
! CAUTION:
After completing the Add a Field window, it is important that you immediately
define the field before you SAVE the data. If you define the field after you
have completed a SAVE, Script Builder may not allow you to redefine the field
if data exists in the table. The exception to this is the redefinition of a field
from num, date, or time to char even if data exists for the table.
4 Press F4 (Define).

The system displays the Define Field window (Figure 41 on page 155).
Figure 41.

Define Field Window

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 155

5

Creating Database Tables

Creating a Database Table

a In the Type field, enter or select the field type. The default is char. See

Data Fields on page 42 in Chapter 3, Data Management, for more
information about field types.
Note:

Depending on the particular ORACLE Version (6 or 7) being
accessed remotely, Script Builder masks the field type, char, to its
appropriate definition. The field will be read as CHAR for ORACLE
Version 6, and as VARCHAR2 for Version 7.

b In the Column Width field, enter a number for the column width.

The second blank is for a special attribute of table fields only and
determines the width of the column for the data. The char field default
width is 10, while the maximum width is 50. The num field default width
is 10, while the maximum width is 11. This width may be more
restrictive than the regular limit of the field’s type.
For example, the size of a number can be no larger than the field width.
If the field width is 4, a number in that field is limited to a range of -999
to 9999 (or +999 if the sign is used). Date fields must have a column
width of 10 to accommodate their formats. Time fields must have a
column width of 11. If you attempt to use a smaller width, Script Builder
sounds a “beep” and a warning message tells you to increase the
width.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 156

5

Creating Database Tables

Creating a Database Table

Also, you can press F4 (Define) to change the field type and/or column
width of an already-defined field. If a record already exists for a
database table, the only type changes allowed are num, date, and time
to char.
Note:

If you shrink the width of a column that contains data, the data is
truncated from the right as necessary to fit, possibly with
undesirable results. For example, the number 1234 in a column
that is changed to a width of 3 is truncated to 123.

c Press F3 (Close) when finished entering the information.
5 To remove a field from a database table, press F2 (Remove).
~ Press F8 (Chg-Keys), then F3 (Save).

! CAUTION:
The column associated with the field, including any data in the column, is
deleted. Once removed, the field, column, and data cannot be recovered.
~ Press F6 (Cancel) to leave the screen without removing the field.

Editing Database Table Contents
Use the edit table feature to add records to the database table or to edit
existing records. For example, when the River Bank database is updated
each week, the same table structure is used. Only the contents are modified.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 157

5

Creating Database Tables

Creating a Database Table

Likewise, the contents of a database can be edited within an unchanging
structure.
In another situation within an application, you may want the caller to access
the database table and be able to make changes to it. This is useful when the
caller needs to change personal information in an account without agent
intervention. These changes are made possible through the Modify Table
action step in the transaction definition. See Chapter 7, Defining the
Transaction, for more information on the Modify Table action step.
Your options for editing the contents of a database table include:
•

Adding one or more records to the table

•

Searching for one or more records in the table

•

Changing the contents of a record already in the table

•

Removing one or more records from the table

Note:

When editing records in a local database table, Script Builder
automatically removes any spaces at the end of a field when
storing the field information in the local database.

Note:

If a record is created outside of Script Builder, be sure to remove
any spaces at the end of a field if you want to use Script Builder at
a later time to edit the field information.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 158

5

Creating Database Tables

Accessing the Edit
Table Window

Creating a Database Table

To edit the contents of a database table:
1 Highlight the database table to be edited from the Table Name menu

(Figure 37 on page 148).
2 Press F6 (Edit).

The system displays the Edit Table window (Figure 42 on page 159).
Figure 42.

Adding Database
Table Records

Edit Table Window

To add records to a database:
1 From the Edit Table window (Figure 42 on page 159), press F1 (Add).

The system displays the Add Record to Table window (Figure 43 on page
160).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 159

5

Creating Database Tables
Figure 43.

Creating a Database Table
Add a Record to Table

There is one blank for each new field of the record to be added to the
table, preceded by the appropriate field name. Any or all blanks for a
given record may be left empty, if desired. Added records are added at
the end of the table.
2 Enter a record.
3 Press F3 (Save) when the record is complete.
Searching for a
Database Table
Record

A search must be completed to change a record. To search for a particular
table record:
1 From the Edit Table window (Figure 42 on page 159), press F5 (Search).

The system displays the Search for Record in Table window (Figure 44 on
page 161).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 160

5

Creating Database Tables
Figure 44.

Creating a Database Table
Search for Record in Table Window

2 Type the desired data next to the proper field name. The data must be

typed exactly as it appears in the table.
You can search for any number of fields. Some or all fields may be left
blank. For example, to start displaying all the records from the beginning
of the table, leave the form field blank.
3 Press F3 (Save) when the form is completed.

The system displays the Edit Table window with the first of the matched
records. If there are no matches, the Search for Record in Table window
remains on the screen with an error message.
4 Press F6 (Next) to move through the records.

Once a record has been matched, you can be remove it, change it, or
display the next record.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 161

5

Creating Database Tables

Changing a
Database Table
Record

Creating a Database Table

To change a database table record:
1 Make the record you want to change appear in the Edit Table window

(Figure 42 on page 159). This is normally the result of a search, or you
can press F6 (Next) to move through the records.
2 Press F4 (Change).

The system displays the Change Record in Table window (Figure 45 on
page 162).
Figure 45.

Change Record in Table Window

3 Move the cursor to each field you want to change, and type the new value,

replacing the old one.
4 Press F3 (Save) to enter the changes into the database table, or press
F6 (Cancel) to leave the database record unchanged.
Removing a
Database Table
Record

To remove a record from a database table:
1 Make the record you want to remove appear in the Edit Table window

(Figure 42 on page 159). This is normally the result of a search, or you
can press F6 (Next) to move through the records.
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 162

5

Creating Database Tables

Creating a Database Table

! CAUTION:
Be careful when executing the F 2 (Remove) function. The system does not
display a warning before removing the local database records.
2 Press F2 (Remove), or press F6 (Cancel) to retain the database record.

The system removes the record from the database table. If duplicate
records exists, the system deletes the duplicates and the record you
indicate. Once removed, the record cannot be recovered.

Removing a Database Table
To remove a database table from your application:
! CAUTION:
Exercise extreme caution when removing database tables, particularly
database tables on remote machines that are also accessible to other remote
machines. If you proceed with the remove function, the entire database table,
including name, structure, and contents, is removed and will be unavailable
for use by your machine and other remote machines.
1 In the Table Name menu (Figure 37 on page 148), select the name of the

database table you want to remove.
2 Press F2 (Remove).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 163

5

Creating Database Tables

Creating a Database Table

The system displays the Remove Table Confirmation window
(Figure 46 on page 164).
Figure 46.

Remove Table Confirmation Window

3 Then, choose:
~ Press F3 (Cont) to remove the table and associated data.

Once removed, the database table cannot be recovered. If the
database table contains no fields, no confirmation is displayed.
~ Press F2 (Own) to remove your ownership of the table.
~ Press F6 (Cancel) if you decide not to remove the table.

! CAUTION:
After removing a database table, you should make sure that all transactions
referencing this table or fields within the table are removed. Once defined as
a database field in the transaction, a field remains a database field even after
the associated table is removed.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 164

5

Creating Database Tables

Sharing Database Tables

Sharing Database Tables
You may choose to use database tables from other applications. Database
tables may be shared in the following ways:
•

By specifying an existing database table name in the Table Name menu
(Figure 37 on page 148).
Specifying table names allows you to own the database table. Ownership
gives you the capability to edit the data within the database table.

•

By naming an existing database table within the transaction definition, but
not specifying the table name in the Table Name menu.
While you may share the data in the database table, you cannot edit data
within the table using the Database screen if you do not own the table.
Data within the table may be changed based on caller input by using a
Modify Table action in the transaction definition of the application.

! CAUTION:
When using shared database tables, be aware that the database table can be
changed by another owner. A system of communication to inform co-owners
of database changes should be in place. If undefined tables or fields appear
while performing a VERIFY of the application, see Chapter 1,
“Troubleshooting,” in the maintenance book for your platform.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 165

5

Creating Database Tables

Restoring Local Database Tables

Tables with the same name residing in different ORACLE databases on
different machines may not be accessed by the same application without first
creating a separate view or synonym of one of the tables. The view name or
synonym is then used to access one of the tables, acting as an “alias” for the
real name. See the “SQL*Plus User’s Guide and Reference” for information
on creating views of tables.

Restoring Local Database Tables
To restore local database tables:
1 In the Script Builder Applications menu (Figure 12 on page 36), highlight

the application for which you are restoring database tables.
2 Insert the appropriate disk or tape into the drive.
3 Press F6 (Restore).

The system displays the Restore Components menu (Figure 47 on page
167).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 166

5

Creating Database Tables
Figure 47.

Restoring Local Database Tables
Restore Components Menu

4 Select

>Local Database Tables

The system displays the message:
Enter "F" to use FLOPPY DISK
Enter "C" to use CARTRIDGE TAPE
Enter "Q" to stop.
5 Enter F if you are restoring from floppy disk, C if you are restoring from

cartridge tape, and Q if you want to quit.
After the database tables have been restored, the following system
response appears:
Restore tables successful

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 167

5

Creating Database Tables

Tips for Database Tables

6 Press EN TE R to return to the Restore Components menu.

See Restoring an Application on page 691 in Chapter 10, Application
Administration, for more information about restoring Script Builder
applications. See Chapter 2, “UNIX Administration,” in Intuity CONVERSANT
System Version 7.0 Administration, 585-313-501, for information about
UnixWare restore service operations.

Tips for Database Tables
This section includes tips for working with database tables in your Script
Builder applications.
Creating Larger
Initial Extend for
Tables/Indexes

Tables created through Script Builder use the system default storage
parameter values which may be too small for some of the application tables.
If you expect the application table may grow larger than 1 MByte, use
SQL*Plus to create the table. In SQL*Plus, you can specify the “storage”
statement when creating a table.
Specifying a larger initial extend to start with reduces the chances of the table
growing into many fragmented extents in the future. For example, if you
estimate the application table will eventually grow to 5 MByte, run sqlplus and

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 168

5

Creating Database Tables

Tips for Database Tables

create the table MYTABLE as follows with 5 MByte to start and expand in 1
MByte trunks if needed:
create table MYTABLE (EMPLOYEE varchar(60), ...)
storage (initial 5m, next 1m);
Without specifying the storage statement, the table starts with the initial
10 KByte size and grows in 80 KByte trunks. The table may contain a lot of
small fragments which makes retrieval of the table slower than the table with
a larger contiguous space. In summary, try to make the initial extend as large
as you expect the table to grow.
Creating a Work
Around for a Table
with More Than 15
Fields

Script Builder supports tables of up to 15 fields. Here is how you can work
around the restriction.
Table for Read Only

Create a view that references no more than 15 fields of the real table (the
view must be owned by the sqlplus user sti). Treat the view as a table and
provide the view name (instead of the table name) when adding the table
to the application.
If all the fields (more than 15) are needed in the application, create
multiple views to reference all fields. All views should contain the same
key field so that your application can link them together. For example, if
the table is the Employee table, all views should contain the
Employee_number field. However, you have to rename the

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 169

5

Creating Database Tables

Tips for Database Tables

Employee_number in each of the views (Script Builder does not allow
duplicate field names).
Table to Be Inserted

As in creating a table for read only (see Table for Read Only on page
169), create multiple views for the table. Insert the record using view1 and
populate all fields for view1. Select the record using view2, for example,
for the record you just inserted. Update the record using view2 to update
the remaining unpopulated fields.
Working Around the The Script Builder Database Administration screen limits the number of
Limit of 10 Tables
tables per application to 10, but you can reference additional tables in the
per Application

Transaction screen. In other words, you can only own up to 10 tables in an
application, but you can read or update an unlimited number of tables in an
application.

Connecting to a
Remote Database

The Intuity CONVERSANT system is able to connect to any version of an
Oracle database using SQL*NET V2. The remote machine must have the
same version of SQL*NET software installed and activated. To use SQL*NET
V2, turn on the listener. There are other requirements besides SQL*NET that
must be met before the application can successfully access the remote
database:
1 A SQL*Plus user sti with password sti must be created.
2 The sti user must have create table privilege.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 170

5

Creating Database Tables

Tips for Database Tables

3 The object (table, view, or synonym) referenced in the application must be

owned by sti. If the table is not owned by sti, a view or synonym must be
created and owned by sti to reference the table. Then the view or
synonym is treated like a table in the Script Builder application.
4 If the remote table contains DATE data type, the LDBCOLS table must be

populated with corresponding entries.
Changing the
Definition of a
Large Database
Table

If a table is already populated with many records (more than 300), do not use
Script Builder to change the table definition. The database DIP will perform
the following operations in response to a Script Builder change table request:
1 Create a temporary table with the new definition.
2 Copy all records from the old table into the new table.
3 Drop the old table.
4 Rename the new table to the correct name.

Completing step 2 may take a significant amount of time depending on the
size of the data. Script Builder waits for the transaction for only 30 seconds,
then determines the disposition of the transaction. It the database DIP takes
more than 30 seconds to perform the transaction, Script Builder times out. If
step 2 takes more than 45 seconds, other messages queued to the DIP are
be lost. If it takes more than 300 seconds, the DIP quits and must be
restarted.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 171

5

Creating Database Tables

Tips for Database Tables

In summary, use SQL*Plus to modify the table definition if a table already
contains more than 300 records.
Informing the
Database DIP of
Changed
Definitions

To improve efficiency, the definition of a table used in Script Builder
applications is cached into the database DIP’s memory. If the table definition
is changed using SQL*Plus, the DIP would not be aware of the changes. You
have to restart the database DIP to make it refresh its memory about the
table before you reverify/reinstall the application. You can either kill the DIP,
or restart the voice system. If you are using Script Builder to modify the table
definition, the DIP picks up the changes in real time. However, you still need
to reverify and reinstall the applications after the table is changed.

Creating Indexes
for Large Database
Tables

If you encounter a “maximum number of extents exceeded” error while trying
to create an index for a relatively large database table, it may be caused by
an ORACLE inefficiency present in both ORACLE Version 6 and ORACLE
Version 7. ORACLE internally uses a temporary segment to do the data
sorting needed for creating the index. In spite of the STORAGE statement
you may have specified for the index table, the space allocation of the
temporary segment is restricted by the tablespace default setting. In a
standard Intuity CONVERSANT environment, the SYSTEM tablespace has
the STORAGE default as (INITIAL 10K NEXT 40 KByte MAXEXTENTS 121).
This allows a segment to grow in 40 KByte trunks as many as 120 times for
total size of up to about 4.8 MByte (10 KByte + 40 KByte * 120) as default. If
the temporary segment is required to go beyond 4.8 megabytes to support
the index creation, the index creating process fails. You will likely get the

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 172

5

Creating Database Tables

Tips for Database Tables

ORA-01556 error (for ORACLE Version 6) or the ORA-01630 error (for
ORACLE Version 7) while trying to create the index.
If you believe the STORAGE statement you specified for the index table is
appropriate, perform the following procedure to work around the problem.
1 Log in as root.
2 Stop the voice system by entering stop_vs

This is recommended because creating an index for a large database
table may consume significant CPU resources. You can skip this step and
perform the rest of the procedure with the voice system running. However,
you should do this only if the traffic load is small enough that enough CPU
resources are available to support the traffic handling while the index
creation is in progressing.
3 Run SQL*Plus as system/manager by entering sqlplus

system/manager
4 Enter select * from sys.dba_tablespaces
5 If the values of INITIAL_EXTENTS, NEXT_EXTENTS and

MAXEXTENTS differ from the defaults set by Intuity CONVERSANT,
which are 10240, 40960 and 121 respectively, take note of the current
value of these variables (you should re-tune your database when you
have completed this procedure).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 173

5

Creating Database Tables

Tips for Database Tables

6 Enter alter tablespace system default storage (INITIAL xM NEXT yM

MAXEXTENTS 121);
where x is the size in megabytes that you want the temporary segment to
start with, and y is the size in megabytes that you want the temporary
segment to expand each time. You can choose to use “K” instead of “M” to
specify sizes in kilobytes. Specify the value and unit carefully. For
simplicity, you can use the values and the unit you specified in the
STORAGE statement for the index table.
7 Exit SQL*Plus by entering quit
8 Re-run your procedure to create the index table.

If the problem persists, it is possible that the STORAGE statement
(INITIAL and NEXT values) is still not appropriate. Repeat step 3, step 6
(with increased values), and step 7. If you believe the problem cannot be
resolved by repeating these steps, continue with step 9.
9 Run SQL*Plus as system/manager by entering sqlplus

system/manager
10 Enter alter tablespace system default storage (INITIAL 10240 NEXT

40960 MAXEXTENTS 121);
If you noted that the values in step 5 were different from these default
values, replace the values you wrote down in step 5.
11 Exit SQL*Plus by entering quit

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 174

5

Creating Database Tables

Tips for Database Tables

12 If the index creation was successful, re-start the voice system by entering

start_vs
13 If the index creation failed in step 8, contact the Lucent Technologies

Technical Support Center.
Note:

See Chapter 6, “Database Administration,” in Intuity
CONVERSANT System Version 7.0 Administration, 585-313-501,
for more information on indexing database tables.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 175

6 Defining Parameters
Overview
The Parameters component of Script Builder allows you to control how an
application responds based on date, time, speech available, and host
computer available. This chapter discusses how to administer the parameter
settings for an application. Topics covered include:
•

Accessing the Parameters Menu on page 177

•

Defining Business Hours on page 178

•

Defining Call Data Events on page 182

•

Defining Holidays on page 188

•

Defining the Host Interface on page 191

•

Defining Seasonal Greetings on page 200

•

Defining Shared Host Applications on page 204

•

Defining Shared Speech on page 207

•

Using Parameter Settings in the Transaction on page 210

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 176

6

Defining Parameters

Accessing the Parameters Menu

Accessing the Parameters Menu
When you are ready to define the parameters that are specific to your
application, you must access the parameters menu. To access the
parameters menu:
1 Select Parameters from the Define Application Menu (Figure 14 on page

40).
The system displays the Parameters menu (Figure 48 on page 177).
Figure 48.

Parameters Menu

2 Select the parameter that you want to define.

Note:

Administer all of your parameters before you begin defining the
Transaction component for the application.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 177

6

Defining Parameters

Defining Business Hours

Defining Business Hours
An installed Script Builder application that is running on the system operates
continuously. However, a part of the application may depend on an external
activity that does not run 24 hours a day, such as agents or a host computer.
Because of this dependency, you may need to use the Business Hours
parameter to limit some services to times when resources are available.
In the River Bank sample application (see Appendix A, Sample Application),
callers can be transferred to customer service representatives who are on
duty from 8:00 AM until 4:30 PM, Monday through Friday.
Hours In and Hours The times when the service representatives are available are called Hours In.
Out
All other times are Hours Out. Use the Parameters component to define

these business hours.
Note:

The system is not logged off from the host computer during the
Hours Out period. If the host is taken down, the system
periodically tries to log in until the host is brought back up.

When the application is running, the system checks the time of day and day
of the week for each call, then determines whether it is an Hours In or Hours
Out call. The system automatically refers to the appropriate subroutine (label)
of a transaction to accommodate time-dependent calls.
Each period between Start time and End time is defined as Hours In. All
other times are called Hours Out.
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 178

6

Defining Parameters

Defining Business Hours

Note that an Hours In time range can span one or more days. For example, to
specify continuous Hours In from 8:00 AM Monday through 5:00 PM Friday,
only fill in the Start time on Monday and the End time on Friday (Figure 49
on page 179).
Figure 49.

Business Hours Screen

The system needs to be able to determine if any time during the week is
Hours In or Hours Out. Check to make sure that there are no overlaps of
times, and that all times excluded are supposed to be Hours Out.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 179

6

Defining Parameters

Defining Business Hours

! CAUTION:
If you use the Business Hours parameter, make sure the UnixWare operating
system date and time have been set correctly. See Chapter 8, “Daily
Administration,” in Intuity CONVERSANT System Version 7.0 Administration,
585-313-501.
Specifying
Business Hours

To specify Business Hours:
1 Access the Parameters menu as described in Accessing the Parameters

Menu on page 177.
2 Select

>Business Hours

The system displays the Business Hours screen (see Figure 49 on page
179 for an example).
3 Change the value in the DO YOU ALLOW SPECIFIC BUSINESS HOURS field
from no (default) to yes by entering y, or press F2 (Choices) to select from

a menu.
Note:

If the value in this field is no, the entire application transaction is
continuously accessible, and you cannot move the cursor
anywhere else on the screen.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 180

6

Defining Parameters

Defining Business Hours

4 For each applicable day:
a Type the desired hour or press F2 (Choices) to select the hour from a

menu. Valid entries are the integers from 1 to 12. Note that 12:00 a.m.
is considered midnight, and 12:00 p.m. is considered noon (to avoid
this sometimes confusing issue, you could specify 12:01 a.m. as
midnight and 12:01 p.m. as noon).
b Type the desired minute or press F2 (Choices) to select the minute

from a menu. Valid entries are the integers from 1 to 59.
c Press F2 (Choices) to select from the menu. Valid entries are AM and

PM.
5 When the Business Hours screen is complete:
a Press F3 (Close) to enter the business hours in the Parameters

definition.
The system reminds you to make sure your transaction definition
specifies the action steps to be performed during the Hours In and
Hours Out time periods. For more information on specifying the action
steps for labels in an application, see Chapter 7, Defining the
Transaction.
b Press F3 (Save) to save the information.
c Select another item from the Parameters menu, or press
F6 (Cancel) to return to the Define Application menu.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 181

6

Defining Parameters

Defining Call Data Events

Defining Call Data Events
Use the Call Data Events parameter to collect and save data. The Call Data
Events parameter allows the system to collect two types of data about every
transaction that occurs on the system. One kind of data is generic data that
applies to every call and is captured automatically by the system. The other
kind of data is application-specific custom data that requires knowledge of the
particular transaction. This type of data must be requested; it is not captured
automatically by the system. Script Builder deals only with the applicationspecific custom data, since generic data is collected already for every call.
ApplicationSpecific Data

You can decide if application-specific data is to be collected and indicate
what data to store. This data is then appended to the call record that is
automatically generated for the generic data.
For example, a banking application could save the caller’s account number
and current balance, so that bank managers can analyze what accounts use
the service and how they use it. Or, perhaps a college registration application
saves the student’s ID number, the number of courses added, and the total
number of course hours registered.
The Call Data Events window (Figure 50 on page 183) is for indicating the
application-specific custom data that is to be collected and saved for each
call. This information can be accessed later for analysis or summarization.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 182

6

Defining Parameters
Figure 50.

Defining Call Data Events
Call Data Events Window

Use Script Builder only for specifying the values of the custom data fields to
be passed to the system for compilation. The system performs call data
compilation and reporting. See Chapter 3, “TAS Script Instructions,” in Intuity
CONVERSANT System Version 7.0 Application Development with Advanced
Methods, 585-313-203.
Specifying Fields

You can specify any field used in the transaction. That is, you can list host
fields and local database fields as well as system and transaction fields. If the
field is used during the transaction, the value it holds when the transaction
ends is saved. If the field is not used during the transaction, the field contains
0 (zero) for type num or null for types char, date, and time. For more
information on field types, see Field Type on page 47 in Chapter 3, Data
Management.
The value in the field when the transaction ends is what gets captured and
stored in the call data record. A transaction ends when a Quit action step is
performed or when a caller hangup is detected. Some fields are used many
times within a call, therefore, earlier values are replaced by the most recently
stored values.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 183

6

Defining Parameters

Defining Call Data Events

An example is the system field $CI_VALUE, the default field for getting a
caller’s input. A transaction might use this field several times. If you want one
of the early values entered by the caller, you must preserve it so that the
value is in a field when the transaction ends, and you must include that field’s
name in the list in the Call Data Events window. To preserve the value, use
the Set Field Value action step. See Chapter 7, Defining the Transaction, for
more information.
Specifying Call Data To specify call data events:
Event Information
1 Access the Parameters menu as described in Accessing the Parameters

Menu on page 177.
2 Select

>Call Data Events

The system displays the Call Data Events window (Figure 50 on page
183).
3 To add a field, press F1 (Add).

The system displays the Enter Name of Field window (Figure 51 on page
185).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 184

6

Defining Parameters

Defining Call Data Events

Figure 51.

Enter Name of Field Window

a Type the name of the desired field or press F2 (Choices) to select from

a menu of all fields referenced in the application.
You may also add a new field, as opposed to a field that already exists
in the application. However, you can not define the new field in the
Enter Name of Field window. You must define each field in its
respective Script Builder component (for example, Host, Local
Database, or Transaction). See Chapter 2, User Interface, and Chapter
7, Defining the Transaction, for further information on creating new Call
Data Event fields.
b Press F3 (Close) to save the additions, or press F6 (Cancel) to close

the window and return to the Call Data Events window.
4 To remove a field from the list, use the cursor movement keys to highlight
the field, then press F2 (Remove).
5 Press F3 (Save) to preserve the additions and/or deletions made.
6 Press F6 (Cancel) to close the menu and return to the Define Application

menu.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 185

6

Defining Parameters

Call Event Limits

Defining Call Data Events

The maximum number of fields that can be captured and stored is 100. The
system reserves a fixed amount of space for application-specific call data.
Because of the way the system uses this reserved space, the exact number
of fields that can be handled in any given application depends on the field
types. When you try to install your application, Script Builder calculates how
much space it uses and how much remains. A warning message appears if
the available space is used up or exceeded. Any fields listed beyond the
system capacity are ignored.
The following are examples of these limits:
•

If all fields you want to save are numeric or short character fields (1, 2, or
3 characters long), you can save 100 fields.

•

If all fields are strings of 7 characters, such as standard 7-digit telephone
numbers, you can save 50 fields.

•

If all fields are dates, which are stored internally as strings of 8
characters, you can save 33 fields.

•

If all fields are social security numbers (9 characters), you can save 33
fields. Each field could come from either caller touch-tone input or from a
host screen or local database. Note that social security numbers are in a
range such that they can be represented within Script Builder as a num
field. That is, you could get a social security number as a 9-digit char field
and save it in a num field. This way you could save 100 such numbers, but,
you would later have to convert the number back to a char field.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 186

6

Defining Parameters

Defining Call Data Events

•

If all fields are 14-character credit card numbers, you can save 25 fields.

•

If all fields are 24-character fields, such as product names retrieved from
the host or a local database, you can store 14 fields.

Note:

No single event can be more than 80 characters in length.

Most applications have fields of different types and sizes. This makes it
difficult to determine exactly how many fields you can save for a particular
application.
! CAUTION:
Call event data is stored and retrieved by Script Builder according to a script
name and an internal event ID. If a call event field is modified, whether
through an ADD or REMOVE of an event field in the appl_name.D file, the
mapping between an internal event ID and an event field is corrupted and the
call data will be incorrect. Therefore, if you want to save or use existing call
event data, copy and rename the script each time you modify an event field in
an existing script. The existing call event data may then be accessed using
the name of the old script.
For more information on sizing the database and how call events affect the
database, see Chapter 6, “Database Administration,” in Intuity
CONVERSANT System Version 7.0 Administration, 585-313-501.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 187

6

Defining Parameters

Defining Holidays

Defining Holidays
Use the Holidays parameter to specify how calls are to be handled during
holidays. It works much like the Business Hours parameter.
Holiday dates are entered on a holiday list. When calls come into the system,
the date is checked, and if the current date is one of those dates in the
holiday list, the transaction begins at the Holiday label. For more information
about using labels, see Chapter 7, Defining the Transaction.
Note:

You do not need to use the Holiday feature; that is, you do not
need to include any dates in the Holiday list. If dates are in the list,
you must provide a Holiday label in the transaction.

Specifying Holidays To specify Holidays:
1 Access the Parameters menu as described in Accessing the Parameters

Menu on page 177.
2 Select

>Holidays

The system displays the Holidays window (Figure 52 on page 189).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 188

6

Defining Parameters

Defining Holidays

Figure 52.

Holidays Window

The Holidays window contains a list of dates in which calls are to be
handled differently because of a holiday. You can remove holidays or add
them to the top of the list. Dates appear in the format of month, day, and
year (MM/DD/YYYY).
Note:

Older applications using the date format of MM/DD/YY are
converted automatically to the date format MM/DD/YYYY during
installation.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 189

6

Defining Parameters

Defining Holidays

3 Each new holiday you add appears below the cursor location in the

Holidays window. To add a holiday, place the cursor in the desired
location, then press F1 (Add).
The system displays the Add Holiday window (Figure 53 on page 190).
Figure 53.

Add Holidays Window

a Use the cursor movement keys to move through the window, filling in
the date of the new holiday, or press F2 (Choices) to select a date.
b After the date is entered, press F3 (Close) to add the date to the

holiday list. At this point, the date is validated. If the date is incorrect for
the calendar year specified (such as 02/29/1999), an error message
appears in the message line.
Note:

The Add Holiday window remains open until all new dates are
added. To close the Add Holiday window, press F 6 (Cancel). If
you press F6 (Cancel) with unsaved information in the Date fields,
a screen appears telling you that changes to this window have not
been saved.

c Press F3 (Save) then F 6 (Cancel) to return to the Parameters menu.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 190

6

Defining Parameters

Defining the Host Interface

4 To remove a holiday, use the cursor movement keys to move to the date

to be removed.
a Press F2 (Remove).
b Select and remove additional dates if required.
c Press F3 (Save) then F 6 (Cancel) to return to the Parameters menu.

Defining the Host Interface
The Host Interface parameter allows you to specify a host interface within the
application. If your application uses a host interface, you must specify certain
parameters of the host environment.
Note:

Host Timeout
Values

The default for a new application is that a host interface is not
being used. If your application does not use a host interface,
Script Builder needs no further information.

Script Builder uses host timeout values in the Host Interface Parameters and
in the transaction to indicate trouble conditions when expecting a screen from
the host computer. The timeout values indicate how long the system will wait
for a screen from the host computer. The timeout values that you need to set
in the Host Interface Parameters screen (Figure 54 on page 198) are
•

Initial Timeout

•

Unrecognized Screen Timeout

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 191

6

Defining Parameters
•

Defining the Host Interface

LU Availability Timeout

Host timeouts occur during a Send Host Screen action step. You specify the
way the transaction responds to the timeout in the following Get Host Screen
action step. See Defining Send Host Screen on page 312 and Defining Get
Host Screen on page 258 in Chapter 7, Defining the Transaction, for more
information.
Initial Timeout

Initial Timeout is the maximum time the system waits for the first screen to
arrive from the host in response to a Send Host Screen action step. Message
HOST001 is logged if the host does not send a screen within the Initial
Timeout value.
Valid values for Initial Timeout are from 0 to 300. Values from 1 to 300 specify
time in seconds. A value of zero (0) specifies that the system waits
indefinitely for a screen from the host computer.
When an Initial Timeout occurs, a HOST_TIMEOUT condition (state) exists
on that session until it is removed by the system. A Get Host Screen action
step executed during a HOST_TIMEOUT state performs the action steps
listed for the HOST_TIMEOUT state if that state is specified. If this state is
not specified, the application does one of the following:
1 Continue with the next action step following the Get Host Screen action if

the assigned session is logging in, logging out, or recovering.
2 Quit if handling a call.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 192

6

Defining Parameters

Defining the Host Interface

Following this, the system removes the HOST_TIMEOUT state. The next
Send Host Screen starts the timer again.
In specifying the Initial Timeout value, consider the host performance. The
goal is to avoid a timeout caused by a typical busy condition, while not
pausing the running application any longer than necessary to detect a
problem condition. The Initial Timeout should be set to the time the host takes
to respond after sending a screen. The first response from the host to a Send
Host Screen action usually takes longer than later responses during the
transaction. To account for this, the Initial Timeout should be set larger than
the Unrecognized Screen Timeout (see Unrecognized Screen Timeout on
page 194). The default value is 60 seconds, although many systems can
work well with a value closer to 10 seconds. For best results, use a value
recommended by someone who knows your host system well.
The application waits up to the Initial Timeout value for the response from the
host only if the request to send a screen was accepted by the 3270 circuit
card. Otherwise, the Send Host Screen action fails immediately and returns
the error HOST004 (for some reason, the host is not talking to your computer).
If the host link is broken, the Send Host Screen action usually returns with
HOST004 instead of HOST001(HOST_TIMEOUT). A Get Host Screen action step
that is executed while a HOST004 error is active performs the action steps
listed for the UNRECOGNIZED_SCREEN state if the state is specified.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 193

6

Defining Parameters

Unrecognized
Screen Timeout

Defining the Host Interface

The Unrecognized Screen Timeout is the time allowed for the host to send an
expected screen (that is, a screen that matches the screens listed) in the Get
Host Screen action. Message HOST002 is logged if the host does not respond
with an expected screen within the Unrecognized Screen Timeout period
(and the HOST_TIMEOUT condition does not exist). When an Unrecognized
Screen Timeout occurs, an UNRECOGNIZED_SCREEN condition (state)
exists. A Get Host Screen action step that is executed during an
UNRECOGNIZED_SCREEN state performs the action steps listed for the
UNRECOGNIZED_SCREEN state if the state is specified.
Each unexpected screen sent from the host restarts the Unrecognized
Screen Timeout timer. For example, if an unexpected screen arrives from the
host with 15 seconds remaining before the 60-second Unrecognized Screen
Timeout value expires, the Get Host Screen action waits another 60 seconds
for the expected screen.
The Get Host Screen action step is completed when one of the following
occurs:
•

An expected screen arrives before the Unrecognized Screen Timeout
occurs – the system performs the action steps listed for the case that is
matched by the expected screen.

•

An Unrecognized Screen Timeout occurs – the system performs the
action steps listed for the UNRECOGNIZED_SCREEN state if that state
is specified.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 194

6

Defining Parameters
•

Defining the Host Interface

A HOST_TIMEOUT state exists – the system performs the action steps
listed for the HOST_TIMEOUT state if that state is specified.

Valid values for Unrecognized Screen Timeout are from 0 to 300. Values
from 1 to 300 specify time in seconds. A value of zero (0) specifies that the
system waits indefinitely between screens from the host computer.
Sometimes when expecting a specific screen from a host, different
intermediate screens appear before the desired screen arrives. If an
Unrecognized Screen Timeout occurs, it may be due to unexpectedly slow
host performance causing eventual failure of an expected screen to arrive.
Give the same considerations to this value as to the Initial Timeout value, as
described in Initial Timeout on page 192.
Logical Unit
The system connection to the host is made via an SDLC/RS-232 and/or
Availability Timeout token ring interface, using up to 128 emulated IBM 3270 terminals. Each

terminal is assigned a logical unit (LU), or channel, to the host. The system
supports up to three cards (two SDLC cards, plus a token ring card), one for
each host connection. The LUs are numbered from 0 to 127. Note, however,
that the maximum system capability is a combined total of 128 LUs on all host
cards.
The LU Availability Timeout is the maximum amount of time, in seconds, that
the system waits for an LU to become available. The valid values range from
0 to 45. Values from 1 to 45 specify time in seconds. The default is zero (0),
meaning that the system should not wait for an LU.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 195

6

Defining Parameters

Defining the Host Interface

Reserve a Logical
Unit

You can specify if the system reserves an LU when a call comes in. This
refers only to the home host application, not to other applications sharing this
host application. If an LU is not reserved, the system assigns an LU the first
time a Get Host Screen or Send Host Screen action step occurs. The easiest
way to provide host access is to reserve an LU at the start of the call and not
release it until the end of the call. This is the system default process for host
applications.

Logical Unit Login
IDs / Passwords

Use the Host Interface Parameters screen to list up to 128 login IDs, and the
corresponding password values, if any. In other words, up to 128 entries to a
host session are available. You specify which entries you want to make
available to the application. When the application is assigned, it attempts to
log in to the host using as many entries as required for the number of LUs
assigned. The system uses the next available (unused) login ID and its
corresponding password for system fields $HOST_LOGINID and
$HOST_PASSWORD, respectively (or for the fields you have selected for
those values).
Note:

You must have as many login IDs and passwords as needed to
accommodate the number of LUs assigned in the application.

Note:

If your application needs only a single login ID and/or password for
all host LUs used, you could set the login ID and/or password as a
constant in your application.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 196

6

Defining Parameters

Defining the Host Interface

! CAUTION:
During development and testing, activate only one LU to minimize recovery
procedures if problems occur.
Specifying Host
Interface
Parameters

To specify the Host Interface parameters:
1 Access the Parameters menu as described in Accessing the Parameters

Menu on page 177 at the beginning of this chapter.
2 Select

>Host Interface Parameters

The system displays Page 1 of the Host Interface Parameter screen
(Figure 54 on page 198).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 197

6

Defining Parameters
Figure 54.

Defining the Host Interface
Host Interface Parameters Screen, Page 1

3 Change the value in the Is a host interface contained in this
application? field from no (default) to yes to specify that a host
interface is being used. Enter y or press F2 (Choices) to select from a

menu.
4 Enter your selected value in each of in the three fields for timeouts.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 198

6

Defining Parameters

Defining the Host Interface

5 In the Is an LU to be reserved when call starts? field, specify
whether or not an LU is to be reserved by entering y or n, or press F2

(Choices) to select from a menu.
Note:

It may be necessary to share LUs because not enough LU voice
channels are in service. In this situation, do not reserve an LU
until it is needed, then release the LU when it is no longer needed
in the transaction. To do this, enter no in this field, then use the
Release LU option in the Get Host Screen action step.

6 If required by your host application, enter a LOGINID and PASSWORD (if

required) for each host session entry you want this application to be able
to use when it is assigned. If your host application does not require a login
ID or password, leave the spaces blank.
7 Press F8 (Chg-Keys) followed by F4 (Nextpage) and F3 (Prevpage) to

display the other Host Interface Parameters screen pages. This screen
includes four pages for additional logins and passwords.
8 When the screen is completed as desired:
a Press F3 (Close) to return to the Parameters menu.
b Press F3 (Save) to save the information.
c Select another item from the Parameters menu, or press F 6 (Cancel)

to return to the Define Application menu.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 199

6

Defining Parameters

Defining Seasonal Greetings

Defining Seasonal Greetings
The Seasonal Greeting parameter allows you to customize a call with a
greeting appropriate for a single holiday or a holiday season. Whenever a call
is received during a holiday season, Script Builder looks for the appropriate
greeting. If seasons overlap, the greeting of each current season is
announced in the order determined by the list of seasons in the Seasonal
Greetings screen.
Each Seasonal Greeting is a single phrase that you must include in the
speech file for the application. The Seasonal Greeting phrase(s) are played
immediately following any Answer Phone action step in the Transaction.
Seasonal Greetings are all played with interrupt enabled.
If the caller responds during the Seasonal Greeting, the greeting is
interrupted and the transaction continues with the next action after Answer
Phone. Often, the next action step is Announce or Prompt & Collect. If the
interrupt is enabled for the next message, that message is also interrupted.
To prevent this, you can select no to inhibit the interrupt. See Chapter 7,
Defining the Transaction.
Specifying
To specify Seasonal Greetings:
Seasonal Greetings
1 Access the Parameters menu as described in Accessing the Parameters

Menu on page 177 at the beginning of this chapter.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 200

6

Defining Parameters

Defining Seasonal Greetings

2 Select

>Seasonal Greetings

The system displays the Seasonal Greetings window (Figure 55 on page
201). The Seasonal Greetings window lists the Starting and Ending
dates along with each Greeting Phrase for your application. The
Seasonal Greetings window also allows you to either add or remove
Seasonal Greetings.
Figure 55.

Seasonal Greeting Window

3 To add a seasonal greeting:
a Press F1 (Add) from the Seasonal Greetings window.

The system displays the Add Seasonal Greeting window (Figure 56 on
page 202).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 201

6

Defining Parameters

Defining Seasonal Greetings

Figure 56.

Add Seasonal Greeting Window

b Use the cursor movement keys to move through the window. Fill in the
START Date, END Date, and Greeting Phrase fields as desired. Dates

are in month/date/year (mm/dd/yyyy) format. The message is
announced during the period beginning at 12:01 a.m. of the start date
until 11:59 p.m. of the end date. If you want the greeting to play for a
single day, make the START Date and END Date fields the same date.
Note:

Older applications using the date format of MM/DD/YY are
converted automatically to the date format MM/DD/YYYY during
installation.
You can press F2 (Choices) for a selection of dates and phrases. The
phrases in the choices menu include all the system phrases. The
custom phrases are listed in the Custom Phrase Tags screen (Figure
57 on page 203). Standard phrases begin with a colon and can be
accessed through the F 2 (Std-Phr) key when the Custom Phrase Tags
screen is open. You can create a phrase appropriate for the season if
one is not listed in the choices menu. The greeting phrase tag is limited

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 202

6

Defining Parameters

Defining Seasonal Greetings
to a maximum length of 50 characters. If you need to record a new
greeting, see Chapter 9, Speech Administration, for more information.

Figure 57.

Custom Phrase Tags Screen

c Press F3 (Close) to add the greeting to the seasonal greetings list.
d Press F3 (Save) in the Parameters menu. The seasonal greeting just

entered is saved.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 203

6

Defining Parameters

Defining Shared Host Applications

4 To remove a seasonal greeting,do the following:
a Move the cursor to the greeting to be removed and press F2

(Remove). The date is removed from the seasonal greeting list.
b Press F3 (Close) to close the Seasonal Greetings window and return

to the Parameters menu. The Seasonal Greeting has been removed
from the Seasonal Greetings list but not from the Parameters file.
c Press F3 (Save) while in the Parameters menu to complete the

removal.

Defining Shared Host Applications
You can have multiple voice response applications sharing one host interface
application, which eliminates the need to develop the same host application
repeatedly. With sharing of host applications, one voice application can also
have access to up to eight different host applications.
If you have an application that uses screens from other host interface
applications, you must list those applications within the Shared Host
Applications parameter. When applications are shared, the shared screens
and fields are available to Script Builder when you define the transaction.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 204

6

Defining Parameters

Defining Shared Host Applications

You can specify up to eight host application names. You can use either
existing or new names. Following these guidelines when creating an
application name:

Specifying Shared
Host Applications

•

The name must be from 1 to 11 characters in length.

•

Valid characters are letters (A–Z and a–z), numbers (0–9), and the
underscore (_).

•

The application’s first character must be a letter (A–Z and a–z). It cannot
be any other character or a digit.

•

Names are case sensitive; that is, ABC is not the same as Abc or abc.

To specify Shared Host Applications:
1 Access the Parameters menu as described in Accessing the Parameters

Menu on page 177 at the beginning of this chapter.
2 Select

>Shared Host Applications

The system displays the Shared Host Applications window (Figure 58 on
page 206).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 205

6

Defining Parameters
Figure 58.

Defining Shared Host Applications
Shared Host Applications Window

3 Enter the application names on the lines in the Shared Host Applications
window, or press F2 (Choices) to make a selection from a menu.
Pressing F2 (Choices) displays all existing application names.

After naming a host application, Script Builder checks the validity of the
input and rejects anything that does not follow the rules.
4 Press F3 (Close) after you enter or select all desired application names.

Script Builder performs a check to make sure that the current application
and all shared applications contain unique screen names and field
names. The system displays a warning message if a nonunique name is
discovered.
5 Press F3 (Save) in the Parameters menu to save the information.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 206

6

Defining Parameters

Defining Shared Speech

6 Select another item from the Parameters menu, or press F 6 (Cancel) to

return to the Define Application menu.

Defining Shared Speech
The Shared Speech Pools parameter allows existing applications to share
common speech phrases. The advantage to sharing speech among
applications is that shared speech phrases need to be administered,
recorded, and stored only once.
If you have no need to share speech among several applications, you do not
need to define Shared Speech Pools.
Enhanced Basic
Two types of speech are available: enhanced basic speech (EBS) and
Speech and Custom custom speech. EBS includes frequently used standard phrases that are not
Speech

dependent on any one application. Examples of standard phrases are
monetary values, time, weekdays, months, and numbers. Custom speech
refers to speech phrases that are designed specifically to fit the application
being developed. For example, the phrase “Hello, welcome to River Bank,
where the customer is always first!” would only be used with the River Bank
application.

Primary and
Secondary Speech
Pools

Script Builder allows you to group speech into one of two different speech
pools: primary and secondary. Normally, custom speech phrases can be
stored in either the primary and/or secondary speech pools, whereas

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 207

6

Defining Parameters

Defining Shared Speech

Enhanced Basic Speech phrases (those with predefined phrase tags) must
be stored in the primary speech pool. Typically, you want to have custom
phrases stored in the home application’s speech pool and the standard
phrases stored in a common or shared speech pool.
Note:

If you specify a primary speech pool, you must put phrases in this
speech pool. If you do not, the installation of the application will
fail.

Note:

If you specify a secondary speech pool, you must create the
speech pool through the Shared Speech Pools screen. If you
specify a secondary speech pool, you must create the secondary
speech pool even if you do not put any phrases in it. If you do
not, the installation of the application will fail.

The Shared Speech Pools window requests the names of the Primary and
Secondary speech pools. The name of the current application is the default.
Once two speech pool names are specified, and if they are different from the
current application, the speech in the current application is not used by the
transaction.
When you select or create a different speech pool name, the system copies
all the phrase tags from the previous speech pool to the new speech pool.
The system asks you to confirm the change. When you verify the application,
the system informs you if the old speech pool contained tags that were not
contained in the new speech pool. You must rerecord, import, or copy those
phrases. When the system completes copying the phrase tags, the speech in

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 208

6

Defining Parameters

Defining Shared Speech

the old speech pool remains unchanged. You may remove the old speech
pool completely if it is not needed.
See Chapter 9, Speech Administration, for more information.
Specifying Shared
Speech Pools

To specify Shared Speech Pools:
1 Access the Parameters menu as described in Accessing the Parameters

Menu on page 177 at the beginning of this chapter.
2 Select

>Shared Speech Pools

The system displays the Shared Speech Pools window (Figure 59 on
page 209).
Figure 59.

Shared Speech Pools Window

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 209

6

Defining Parameters

Using Parameter Settings in the Transaction

3 Use the cursor movement keys to move through the window, filling in the

application names.
Press F2 (Choices) for a list of all the Script Builder applications.
4 In the Speech Format Language field, select a language from the

optional Enhanced Basic Speech languages available on your system.
5 Press F3 (Close) to return to the Parameters menu.

Using Parameter Settings in the Transaction
Within the Parameters component, you specify whether you are using a host
computer with automatic logical unit (LU) reservation, Business Hours, and/or
Holidays. However, you do not specify the activities that take place when a
caller uses the system. This is done within the Transaction component.
Depending on the Parameter settings, you specify that the transaction can
work in several different environments. For each of these environments, the
transaction must include a label to specify how the system should handle a
call.
As each telephone call takes place, the system automatically determines the
proper label to use (based on whether the Business Hours parameter is being
used, whether the call is taking place during in- or out-of-service hours, etc).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 210

6

Defining Parameters

Using Parameter Settings in the Transaction

Applications that do not specify any particular business hours are considered
to be in-service permanently. Applications that do not use a host have a
permanent host down status.
If any dates are given in the Holidays parameter, the application has holiday
status on all dates in the list.
Some action steps are grouped into a process that is identified by a label,
such as HOURS_OUT. The procedure for specifying Transaction labels is
explained in Chapter 7, Defining the Transaction. The following list reviews
the labels that you must include in the Transaction, based on the
environments created by your application’s parameter specifications.
•

Parameters:No Host Definition or Reserve LU Not Used
Business Hours Not Used
The Transaction variation environment and label:
~ Host not used, business hours not used Start:

•

Parameters:Host Definition Provided and Reserve LU Used
Business Hours Not Used
The Transaction environments and labels:
~ Host up

HOST_UP:

~ Host down

HOST_DOWN:

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 211

6

Defining Parameters
•

Using Parameter Settings in the Transaction

Parameters:No Host Definition or Reserve LU Not Used
Business Hours Used
The Transaction environments and labels:

•

~ Service in-hours

HOURS_IN:

~ Service out-of-hours

HOURS_OUT:

Parameters:Host Definition Provided and Release LU Used
Business Hours Used
The Transaction environments and labels:
~ Host up and service in-hours

HOST_UP_HOURS_IN:

~ Host down and service in-hours

HOST_DOWN_HOURS_IN:

~ Host up and service out-of-hours

HOST_UP_HOURS_OUT:

~ Host down and service out-of-hours HOST_DOWN_HOURS_OUT:

Note:

Administer all of your parameters before you begin defining the
Transaction component for the application.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 212

7

Defining the Transaction

Overview
This chapter provides application developers with information about how to
define each standard Script Builder action step in the development of the
transaction for an application.
This chapter includes information about defining the Transaction component
of Intuity CONVERSANT Script Builder. Whether a caller is speaking with an
agent or interacting with a computer, the main part of the caller interaction is
the step-by-step sequence of instructions the agent or computer follows. The
instructions dictate how the agent or computer should serve the caller—for
example, what to say, how to respond to requests, when to retrieve
information from a host computer, etc.
The Transaction component of Script Builder provides the sequence of
instructions, called action steps, for the system to follow. You specify the
action steps for the transaction in the order they are to be executed in the
Define Transaction screen. For an example, see the Define Transaction
screen that includes part of the transaction for the River Bank application
(Figure 60 on page 215).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 213

7

Defining the Transaction

Overview

Some action steps are grouped into a process that is identified by a label,
such as HOURS_OUT. The transaction usually includes comments to explain
the transaction to a fellow developer, such as #Greet caller.
In addition to selecting and listing the action steps in the transaction, you
must define each action step so the system knows how to provide service to
the caller. Most of the information in this chapter describes the screens and
procedures you will use to define each standard action step. References are
made to Chapter 8, Using Optional Features, for defining action steps for
optional features.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 214

7

Defining the Transaction
Figure 60.

Overview
Define Transaction Screen for the River Bank Application

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 215

7

Defining the Transaction

Defining the Transaction

Defining the Transaction
To define the transaction for your application, use the Transaction component
of Script Builder. Defining the transaction includes:
•

Accessing the Define Transaction screen

•

Selecting and arranging action steps in your transaction

•

Defining each action step, as required for your application

You need to select and arrange the action steps to define the transaction.
Then, you need to specify how each action step should perform in the
transaction (exactly what to say when speaking to the caller, exactly what
information to look up in the database, etc). This second process is called
defining the action step.
You can define a transaction using any of the following methods:
•

Select and arrange all the action steps in the transaction, then go back
and define each of the action steps.

Note:

This method is recommended, especially for developers who are
new to programming or new to Script Builder.

•

Define each action step before selecting the next.

•

Select a group of action steps, define the details of each action step in the
group, and then go on to the next group of action steps.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 216

7

Defining the Transaction

Defining the Transaction

Accessing the Define Transaction Screen
The Define Transaction screen allows you to add, arrange, and define the
action steps you want to use in your transaction. To access the Define
Transaction screen:
1 Starting from the Define Application menu (Figure 14 on page 40), select

>Transaction

The system displays the Define Transaction screen (example in Figure 60
on page 215). If you are starting a new application, this screen is empty
except for the start label supplied by the system. Then select, add, copy,
remove, and define action steps according to the procedures described in
this chapter.

Action Steps
Action steps (Table 18 on page 230) are the basic building blocks that
comprise the Transaction component of your application. Each action step
accomplishes a specific task—action steps are available for communicating
with the caller, the host and the database, processing data, directing the flow
of the transaction, and providing comments about other action steps in the
transaction.
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 217

7

Defining the Transaction

Selecting and
Arranging Action
Steps

Defining the Transaction

You select action steps from a menu and arrange them in the Define
Transaction screen in a sequence appropriate to the application. See Figure
60 on page 215 for an example of the Define Transaction screen with action
steps that were selected and arranged to provide the desired transaction.
In general, a transaction flows from one action to the next. It is possible,
however, for the transaction to branch in various directions. For example, a
caller is asked to choose between looking up current interest rates or looking
up account balances. As the designer, you want the transaction to branch to
an appropriate series of action steps to comply with the caller’s request.
Note:

It is a good idea to make a flowchart or other diagram of your
transaction before selecting the action steps. The diagram will
help you identify which groups of action steps need to be included
in each label, and the flow from one label to another one.

A Prompt & Collect action step (Figure 61 on page 220) plays a menu to the
caller and gets a response. One response causes the transaction to branch
to the label
“Give_Interest_Rates” while another response makes it branch to the label
“Give_Acct_Balances.”
Grouping Action
Steps

As the list of action steps develops, some action steps will form groupings,
where all the actions in a group accomplish a single purpose. For example, a
series or group of action steps may focus on looking up current interest rates,

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 218

7

Defining the Transaction

Defining the Transaction

and another group may focus on looking up an account balance. It is often
helpful during transaction development to arrange actions in groups. Then
you can identify each group with a label.
Using Comments

A Comment action step provides background information or explains the
purpose of an action or group of actions. The benefits of using comments
become most apparent when you test or revise your application later. You
can insert a Comment action step before each group (Figure 61 on page
220). Comments are shown with a pound sign (#) prefix. See Defining
Comment on page 242 for more information.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 219

7

Defining the Transaction
Figure 61.

Adding Action
Steps

Defining the Transaction
River Bank Define Transaction Screen

To add action steps to the Define Transaction screen:
1 Use the cursor movement keys to place the cursor where you want to add

the new step. The new action step will be placed below the cursor.
2 Press F1 (Add).

The system displays the Action Choices menu (Figure 62 on page 221).
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 220

7

Defining the Transaction
Figure 62.

Defining the Transaction
Action Choices Menu

3 Select the action step to be inserted (highlight it, then press E N TER ).

The system inserts the new action step in the transaction below the step
currently highlighted.
Note:

You can use the H O M E and EN D keys to scroll through the menu
of action choices.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 221

7

Defining the Transaction
Note:

Defining the Transaction

The following action steps prompt you for additional information
after adding them to your transaction: Comment, Goto Label,
Label, and Transfer Call. For more information, see the section in
this chapter for defining each of these action steps.

4 Repeat Steps 1 through 3 to add all the action steps that you want. Press
F6 (Cancel) when you are finished adding action steps.
5 Press F8 (Chg-Keys), then F 3 (Save). The following message appears at

the bottom of the screen:
Transaction Definition saved.
Copying Action
Steps

You can copy an action step or a range of consecutive action steps from one
place in the transaction to another place in the transaction. The action step
definitions are also copied.
When you copy action steps, the following guidelines apply:
•

Because action step definitions are copied along with the action steps,
you may want to change the definitions of some of the copied steps
because they are used differently in their new location.

•

Certain restrictions apply when copying a range that includes or is part of
an Evaluate action step. For more information, see Defining Evaluate on
page 245.

•

You can copy a range of steps to a location that is within the range being
copied.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 222

7

Defining the Transaction

Defining the Transaction

To copy an action step or a range of consecutive action steps:
1 Select the action step to be copied from the Define Transaction screen
(Figure 60 on page 215) and press F 3 (Copy).

The system prompts you to copy the action step or to indicate a range of
action steps to be copied.
2 Do one of the following:
~ To copy a single action step, press F 3 (Copy) twice to indicate that it is

both the beginning and ending step.
~ To copy a range of action steps, move the cursor up or down to the first
action step in the range and press F3 (Copy). This action step

becomes the beginning of the range. Move the cursor up or down as
desired, then press F 3 (Copy) again; the highlighted action step
becomes the end of the range.
~ To cancel the procedure, press ES C .

The system prompts you to indicate where you want to copy the action
step(s).
3 Move the cursor to where you want to place the copied action step(s) and
press EN TER .

The system inserts the action step(s) below the cursor.
Note:

Press ESC at any time prior to pressing EN TE R to abort the
COPY operation.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 223

7

Defining the Transaction

Moving Action
Steps

Defining the Transaction

You can move an action step or a range of consecutive action steps from one
place in the transaction to another place in the transaction. The action step
definitions are also moved.
To move an action step or range of action steps:
1 Copy the action step(s) according to Copying Action Steps on page 222.
2 Remove the original action step(s) according to the procedure in

Removing Action Steps on page 224.
Removing Action
Steps

You can remove an action step or a range of consecutive action steps from
the transaction.
! CAUTION:
You cannot recover an action step definition that has been removed. As an
alternative to removing action steps, you can use the Goto Label and the
Label action steps to bypass a range of steps you have defined and do not
need, but may want to use later.
To remove an action step or a range of consecutive action steps:
1 Select the first action step to be removed from the Define Transaction
screen (Figure 60 on page 215) and press F 2 (Remove).

The system prompts you to remove the action step or to indicate a range
of action steps to be removed.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 224

7

Defining the Transaction

Defining the Transaction

2 Do one of the following:
~ To remove a single action step, press F2 (Remove).
~ To remove a range of action steps, move the cursor up or down to the
last action step in the range and press F2 (Remove).
~ To cancel the procedure and retain the action step, press ESC .

The system removes from the transaction the action step(s) and
definitions you specify.
Displaying the
Transaction

The Define Transaction screen shows the action steps in either normal or
expanded display. The normal display shows the names of the action steps,
which is helpful while you are developing or debugging the transaction. Once
you have defined the action steps, you can use the expanded display to show
the details of the action steps. This is faster than accessing the individual
screens used to define each action step.
When you expand the display, the following guidelines apply:
•

Lines that are longer than 80 characters are truncated in the display. To
see the entire text of a long line, press F5 (List).

•

For the Prompt & Collect action step, the expanded list shows only those
details that have been changed from their default values.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 225

7

Defining the Transaction

Defining the Transaction

To use the expanded display:
1 From the Define Transaction screen (Figure 60 on page 215), press F7

(Show) to toggle between the normal and expanded display.
The system changes from normal to expanded display, or from expanded
to normal display.
Searching in the
Transaction

You can search the transaction for a specific action step or string of
characters. This procedure makes it easier to find a specific action step in a
transaction that fills more than one screen.
The Script Builder search function looks for regular expressions. This means
that the search string should be in a valid regular expression format,
otherwise the string will be rejected. Here are some guidelines for search
strings:
•

The string can be up to 50 characters long.

•

Searches are case sensitive. For example, if you search for the string
prompt, Script Builder does not match it against the string Prompt.

•

To search for a line containing the numeral 1, followed by any digit from 0
to 9 with a period (. ), enter 1[0-9]. when prompted for a search string.

•

To search for any line ending with the word “Screen,” enter Screen$ when
prompted for a search string.

•

To search for line numbers beginning with a “1”, enter ^ *1

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 226

7

Defining the Transaction
Note:

Defining the Transaction

Special characters have a specific meaning in the UnixWare
operating system. If used in the search string, these characters
may be rejected. Place a backslash (\) in front of these characters
so they will be interpreted literally, such as \$. The special
characters are:
[ ] . (period) ^ $ - (hyphen) + { } ( )

For additional information on regular expressions and special characters,
see the UnixWare System User’s Guide, 585-350-908.
The results of a search are determined by the display status of the
transaction. In the normal display, you can search only for labels, action
step names, and comments. In the expanded display, you can search for
details in the definition displayed for each action step.
To search for a string in the transaction:
1 Press F5 (Search) from any place in the Define Transaction screen

(Figure 60 on page 215).
The system displays the Specify the Search String window (Figure 63 on
page 228).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 227

7

Defining the Transaction
Figure 63.

Defining the Transaction
Specify the Search String Window

2 Type the character string that you want to find.
3 Press F3 (Close).

The system displays the Define Transaction screen (Figure 60 on page
215) again.
4 Press + to search downward through the transaction, or press - to search

upward through the transaction.
The system highlights the first occurrence of the specified string.
Note:

If Script Builder reaches the top or bottom of the transaction while
searching, the system sounds a beep and informs you that the
string was not found in the direction specified.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 228

7

Defining the Transaction

Defining Action Steps

Defining Action Steps
Script Builder provides screens for you to define each action step. You define
an action step by providing further information necessary to accomplish a
specific function in your application. For example, you can identify speech
phrases to be recorded, the name of a database table to be read, or where to
transfer a call. Defining each action step can range from simple (for example,
Answer Phone needs no definition) to fairly complex (for example, Prompt &
Collect requires a prompting message, a description of valid caller input, and
a checklist of decisions to be made based on caller input, what to do in case
the caller makes a mistake, etc). Complex action steps have more than one
screen, with each screen containing several fields.
Table 18 on page 230 summarizes the standard action steps available with
Script Builder. Each action step is discussed in detail throughout the rest of
this chapter, beginning with Defining Announce on page 233. If you have any
optional feature packages installed, other action steps are available through
Script Builder. These optional action steps are discussed in Chapter 8, Using
Optional Features.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 229

7

Defining the Transaction

Table 18.

Defining Action Steps

Script Builder Action Steps

Action Step

Description

Announce

Speaks a message to the caller.

Answer Phone

Answers the telephone.

Comment

Provides reference remarks in the transaction.

Disconnect

Places the telephone onhook.

Evaluate

Chooses to perform an action step, or group of steps, from a number of
options, based on current conditions. (This is analogous to an
If/Then/Else construct.)

External
Function

Temporarily suspends the transaction to perform a function at system
script level, for example substring.

Get Host
Screen

Waits for a screen of information from the host computer.

Goto Label

Continues execution of the transaction at a different location (for example,
Goto GET_CHECK_BAL).
1 of 3

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 230

7

Defining the Transaction
Table 18.

Defining Action Steps

Script Builder Action Steps

Action Step

Description

Label

Establishes a location that is the target of a Goto Label action step.
Several predefined labels are available that the system uses to determine
where to begin execution of the transaction, based on the current state of
the environment.

Modify Table

Allows the caller to modify information in the database tables.

Prompt &
Collect

Speaks a prompting message to the caller, accepts a response from the
caller, and takes action based on the caller input.

Quit

Terminates the transaction.

Read Table

Looks up information from a database.

Send Host
Screen

Sends information or a signal to the host computer.

Set Field
Value

Stores a value in one or more transaction fields.

Transfer Call

Transfers the caller to another telephone number, typically a customer
service representative or an attendant.

Background

Plays prerecorded music or speech in the background.
2 of 3

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 231

7

Defining the Transaction
Table 18.

Defining Action Steps

Script Builder Action Steps

Action Step

Description

Call Bridge

Places an outbound call to a user-defined telephone number and
maintains the connection while the caller interacts with the person on the
other channel. When the third party hangs up, Call Bridge continues with
the next action step.

Execute

Terminates the current application on the channel without hanging up the
call and then starts another application on the same channel.

Make Call

Places an outbound call to a user-defined telephone number. When the
call is connected, Make Call continues with the next action step.

Msg Code

Records the caller’s speech and stores the message in the system.

Msg Delete

Deletes a message that has already been stored in the system.

Type Ahead

Allows a caller to enter touch-tone digits in advance of prompts. The
script then advances the caller to the appropriate point in the script.
3 of 3

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 232

7

Defining the Transaction

Defining Announce

Help for Action Steps
While you are using the define screen for an action step, specific help for the
action step is available by pressing F1 (Help). If this function key is not
displayed, press F 8 (Chg-Keys). The system will include the help function in
the alternate keys.

Defining Announce
Use the Announce action step to speak a message to the caller. The system
can play 1 to 15 phrases, field values, and/or lines of text in succession in a
single Announce action step. Note that you can use text only if the optional
Text-to-Speech (TTS) feature is installed.

Speak with Interrupt?
It is often desirable to allow a caller (especially one who is familiar with the
transaction) to speed up the transaction by cutting off the speech being
played. You specify this feature in the Speak with interrupt? field, which
is the first one in the Define Announce screen (Figure 64 on page 239).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 233

7

Defining the Transaction

Defining Announce

If a message is played with interrupt enabled, it plays normally unless the
caller gives a response, sending an input to the system. As soon as caller
input is detected, talk (speech) is inhibited, and the remainder of the message
is bypassed.
Note that once speech has been inhibited, it remains inhibited in following
action steps until the inhibition is removed. This means that if a message is to
be played in some action step, if that message allows interrupt and talk is
presently inhibited because of a prior action step, that message will also be
bypassed. Make sure your callers will hear all messages you want them to
hear.
The following events remove speech inhibition:
•

A message is played that does not allow interrupt.

•

A Prompt & Collect action step occurs.

•

A Get Host Screen action step occurs.

•

A Read Table action step occurs.

•

A Send Host Screen action step occurs.

•

A Transfer Call action step occurs.

If you want to use two sequential Announce action steps, with speech
interrupt enabled on both, but you want the caller to hear the beginning of the
second message, insert an empty (null) Announce action step between the

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 234

7

Defining the Transaction

Defining Announce

other two, and disable interrupt (enter n) in the empty message. This
removes speech inhibition without playing a message to the caller. Then the
system plays the contents of your second message, with interrupt enabled.

Type
The Announce action step can speak (play) a phrase, field value, or text (if
TTS is available).

Field Name/Phrase Tag/Text String
You can specify an existing phrase or field, or one that you plan to create.
See Using Text-to-Speech on page 391 in Chapter 8, Using Optional
Features, for information about text strings for TTS.
Note:

The Announce action step can reference a field before the field
value is set. This is likely to be a null or zero value. The system
does not generate an error message, and the application attempts
to play the field as specified. The value of the field is determined
when the completed application is called. If the field is null, there is
no voice output for that field when the message is played (for
example, when a database field is used before the necessary
Read Table action step, or when a host field is used before the
necessary Get Host Screen action step).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 235

7

Defining the Transaction

Defining Announce

Field Format
You can specify the format for the system to use when speaking a field value.
Note that phrases are played as recorded, so a format does not apply. The
format determines the speech inflection and the interpretation of data, such
as numbers used in money, dates, and times. See Formats for Spoken
Output on page 53 in Chapter 3, Data Management, for information about
spoken field formats. See Using Text-to-Speech on page 391 in Chapter 8,
Using Optional Features, for information about using TTS formats to speak a
field value.
Note:

Using the NX Field
Format

The spoken field formats available are determined by the optional
Enhanced Basic Speech language specified in the Shared
Speech Pools window.

For some applications, you may wish to specify NX as the field format in the
Define Announce screen. If NX is specified in the Field Format field, the
system speaks the phrase with the internal phrase number defined in the
Field Name/Phrase Tag/Text String field.
Use of the NX format is particularly appropriate for when:
•

The phrase does not have a tag name.
For example, if an application records phrases spoken by callers, the
system can assign arbitrary unique phrase numbers to these phrases as
they are recorded. The application can then use the NX format to speak

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 236

7

Defining the Transaction

Defining Announce

the phrase back to the caller, and/or save these numbers in a database to
be spoken later in a different call.
•

The phrase to be spoken corresponds to a character string from a host.
For example, if the names of companies listed on the stock exchange are
to be spoken, and the host returns their stock symbol, you could provide a
database or a custom DIP that would map the symbols (for example, “LT”)
to a phrase number that contains the recording of that company name.
Once the phrase number is available in a field, the phrase is spoken using
the NX format.

Using Announce versus Prompt & Collect
The Announce action step has the single purpose of playing a message to
provide information to the caller. The Prompt & Collect action step plays
messages to the caller requesting a response, then the response is collected.
You cannot use the Announce action step for playing messages and
collecting input from a caller. If you need to collect input, see Defining Prompt
& Collect on page 273.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 237

7

Defining the Transaction

Defining Announce

Defining the Announce Action Step
To define the Announce action step:
1 With the cursor in the desired position in the Define Transaction screen
(Figure 60 on page 215), press F 1 (Add).

The system displays the Action Choices menu (Figure 62 on page 221).
2 Select

>Announce

The system inserts the Announce action step in the transaction.
3 Press F6 (Cancel).
4 Highlight the Announce action step.
5 Press F4 (Define).

The system displays the Define Announce screen (example in Figure 64
on page 239).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 238

7

Defining the Transaction
Figure 64.

Defining Announce
Define Announce Screen

6 In the Speak with Interrupt? field, enter y or n, or press F 2 (Choices)

and select from the menu to indicate whether you want to allow interrupt.
7 In the Type field, enter p, f, t (for TTS only), or press F2 (Choices) and

select from the menu to indicate the speech type.
8 In the Field Name/Phrase Tag/Text String field, specify a phrase or
field, or enter the text string for TTS. Press F 2 (Choices) for a menu of

phrases and fields already used.
You can change, remove, and amend message contents.
~ To change the details of a line, move to the appropriate line and make

the desired changes.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 239

7

Defining the Transaction
Note:

Defining Answer Phone

If you begin a line with a space, you will be able to edit it later
without retyping the entire line. If you begin a line with any other
character, you must retype the entire line to make any changes.

~ To remove a phrase or field entry from an Announce action step, delete
all data from the line where the phrase or field is entered and press F 3

(Close). When you reopen the action step, the system will move up
lines below the deleted line to close the gap.
~ To add a line above existing lines, you must retype the data on each of

the existing lines, one line lower, to make room for the new line.
9 In the Field Format field, enter a format for field or TTS, or press F2

(Choices) for a menu.
10 Repeat Steps 7 through 9 for each line in the announce message.
11 Press F3 (Close) to save your changes and return to the Define

Transaction screen.

Defining Answer Phone
The Answer Phone action step answers the telephone. It must be included in
the transaction before the first action step that requires interaction with a
caller, such as Announce or Prompt & Collect.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 240

7

Defining the Transaction

Defining Answer Phone

If the transaction includes parameters, such as Business Hours or Holidays,
the system transfers control directly to the appropriate label in the
transaction, depending on the date and time of the call. Therefore, you must
include the Answer Phone action step within each label in the transaction
where it is needed (for example, HOST_UP, HOST_DOWN, HOURS_IN,
HOURS_OUT, etc).
To add the Answer Phone action step:
1 With the cursor in the desired position in the Define Transaction screen
(Figure 60 on page 215), press F 1 (Add).

The system displays the Action Choices menu (Figure 62 on page 221).
2 Select

>Answer Phone

The system inserts the Answer Phone action step in the transaction.
3 Press F6 (Cancel).

The Answer Phone action step requires no definition.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 241

7

Defining the Transaction

Defining Comment

Defining Comment
The Comment action step is useful for organizing the transaction. Often a
sequence of action steps accomplishes a subtask of the overall transaction. It
can be helpful to use a few comments to describe the function of the
sequence as a group, both for future reference when you return to the
application, and when a different designer reviews or wants to use part of the
application.
You define a Comment action step when you add it to the transaction.
Note:

Do not embed Comments between /* and */ characters, as you
would for some computer languages.

The following guidelines apply to the Comment action step:
•

Maximum comment length is 50 characters.

•

A comment may contain any of the printable ASCII characters.

•

A comment may be blank, that is, have a length of zero characters.
You can use a blank line to separate a sequence of action steps to
indicate they work as a group. To enter a blank line, press F3 (Close)
without adding any text to the Add Comments window.

•

The system gives each comment (except the blank comment) a pound
sign (#) character prefix to identify it as being different from the other
action steps.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 242

7

Defining the Transaction

Defining Comment

To add a Comment action step:
1 With the cursor in the desired position in the Define Transaction screen
(Figure 60 on page 215), press F 1 (Add).

The system displays the Action Choices menu (Figure 62 on page 221).
2 Select

>Comment

The system displays the Add Comments window (Figure 65 on page
243).
Figure 65.

Add Comments Window

3 Enter the comment text, or leave it blank to produce a blank line in the

transaction.
Note that you can later change comment text by highlighting the comment
line then pressing F4 (Define).
4 Press F3 (Close).
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 243

7

Defining the Transaction

Defining Disconnect

The system inserts the comment in the transaction, and displays the Add
Comments window (Figure 65 on page 243) again. This window remains
open so you can enter a multi-line comment.
5 Press F6 (Cancel) when you are finished entering your comments.

Once inserted in the transaction, each comment line is an independent
action step and can be copied or removed just like any other action step.

Defining Disconnect
The Disconnect action step disconnects the system from the caller.
Note:

The Disconnect action step does not terminate execution of the
transaction. It is possible to specify action steps to perform system
activities that do not require interaction with the caller, such as
assigning field values to be passed to the Call Data Handler. The
transaction terminates when it reaches a Quit action step or the
end of the transaction. During the time that the transaction
continues running after the Disconnect action step, the system will
respond to a new caller on the same channel with a ringing, but
will not answer until the previous transaction terminates.

To add the Disconnect action step:
1 With the cursor in the desired position in the Define Transaction screen
(Figure 60 on page 215), press F 1 (Add).
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 244

7

Defining the Transaction

Defining Evaluate

The system displays the Action Choices menu (Figure 62 on page 221).
2 Select

>Disconnect

The system inserts the Disconnect action step in the transaction.
3 Press F6 (Cancel).

The Disconnect action step requires no definition.

Defining Evaluate
This section discusses when to use the Evaluate action step and how to
define it.

What the Evaluate Action Step Does
The general structure of the Evaluate action step includes a series of
conditions that are evaluated in order. If the first condition is true, the script
performs a function. If the condition is false, the script does not perform the
function.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 245

7

Defining the Transaction
Note:

Defining Evaluate

If you are familiar with programming, the Evaluate action step is
similar to an If-Then-Else statement.

Use the Evaluate action step to test the relationship between two or more
operands. The relationship can be single or complex. Figure 66 on page 246
shows a simple relationship. The If statement is used to specify an action to
be executed only if the specified condition is true. For example, the script
shown in Figure 66 on page 246 goes to the Label Deposit if the account
balance is less than 100.
Figure 66.

Simple Evaluate Statement

6.Evaluate
If account_balance < 100
7.
Goto Deposit
End Evaluate

Figure 67 on page 247 shows a more complex example. If the If condition is
false, an Else If statement follows and is used to specify an action to be
executed if the specified condition is true. For example, the script shown in
Figure 67 on page 247 goes to the Label Make_Payment if the account
balance is greater than 150.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 246

7

Defining the Transaction
Figure 67.

Defining Evaluate
Complex Evaluate Statement

6.Evaluate
If account_balance < 100
7.
Goto Deposit
Else if account_balance > 150
8.
Goto Make_Payment
End Evaluate

If both the If and Else If statements are false, then an Else statement may
follow and is used to specify an action to be executed (Figure 68 on page
247).
Figure 68.

More Complex Evaluate Statement

6.Evaluate
If account_balance < 100
7.
Goto Deposit
Else if account_balance > 150
8.
Goto Make_Payment
Else
9.
Prompt & Collect
End Evaluate

The first true condition causes action steps under that condition to be
performed. Upon completion of the series of action steps, program flow
continues with the first action step following the Evaluate action step (unless

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 247

7

Defining the Transaction

Defining Evaluate

an action step in the group transfers control elsewhere). The end of the
structure is indicated by an (unnumbered) End Evaluate (Figure 68 on page
247).
Each If and Else If clause specifies a condition that must be true in order
to perform the action steps that follow it. The condition is a comparison of two
expressions. For example, “A = B” is a condition that compares A and B. If
they are equal the condition is true; otherwise, the condition is false. “A” is the
first expression, “B” is the second expression, and “=” is the relation between
the two expressions.
A more complex example of a condition is “A+B < C-7” where “A+B” is the
first expression, and “C-7” is the second expression. If the sum of A and B is
less than the difference between C and 7, the condition is true; otherwise the
condition is false. In this case, the first expression contains two operands, “A”
and “B,” and an operator, “+.” The second expression contains two operands,
“C” and “7,” and an operator, “-.” The “<“ is the relation between the two
expressions.
Only the action steps under one clause in the structure are performed. If
more than one clause happens to have true conditions, the first one in the
series is performed. If no clause has true conditions, the action steps found
under the optional Else clause are performed. If there is no Else clause, then
no action is taken under Evaluate, and control transfers to the first action step
following Evaluate. Only one Else clause can exist, and it must be the last
clause in the Evaluate structure, before the End Evaluate line.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 248

7

Defining the Transaction

Defining Evaluate

Defining the Evaluate Action Step
The purpose of defining the Evaluate action step is to define the Evaluate
structure only; that is, to specify the conditions for the If, Else if, and Else
clauses. You add and define the action steps to be performed under each
clause after you define the Evaluate action step.
Note:

Action steps and clauses within an Evaluate action step are
indented, which helps to clarify that they are contained within the
overall Evaluate action step. The transaction display truncates
lines wider than the display screen, although the lines themselves
are not truncated. To view more of the transaction definition, press
F 7 (Show).

Note:

You can nest Evaluate action steps. The structure for the nested
Evaluate is then indented further and contained entirely within a
clause of the first Evaluate. You can use six levels of nesting.

Note:

Do not copy anything into an undefined Evaluate action step and
do not copy an existing Evaluate action step into an undefined
Evaluate action step. Unpredictable results can occur.

To add and define the Evaluate action step:
1 With the cursor in the desired position in the Define Transaction screen
(Figure 60 on page 215), press F 1 (Add).

The system displays the Action Choices menu (Figure 62 on page 221).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 249

7

Defining the Transaction

Defining Evaluate

2 Select

>Evaluate

The system inserts the Evaluate action step in the transaction. When the
Evaluate action step is first added, it appears as:
Evaluate
End Evaluate

You establish the relationships to be compared when you define the
Evaluate action step.
3 Highlight the Evaluate action step.
4 Press F4 (Define).

The system displays the Define Evaluation window. Figure 69 on page
251 shows the Evaluate action defined for the statement in Figure 66 on
page 246.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 250

7

Defining the Transaction
Figure 69.

Defining Evaluate
Define Evaluation Window

Each clause is defined on its own page, and the If clause is always first
to be defined.
5 Fill in the fields in the window.

An operand can be a field or a constant. An operator can be one of the
four basic arithmetic functions: “+,” “-,” “*,” or “/.” An expression can be a
single operand, or two operands with an operator. In the latter case, the
arithmetic function in the expression is performed before the comparison
is made between the two expressions. A relationship can be any of the
standard comparisons, as described in Data Comparisons on page 72 of
Chapter 3, Data Management.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 251

7

Defining the Transaction

Defining Evaluate

6 Press F5 (Elseif) to add an Else If page after the current page.
7 Press F6 (Else) to add an optional Else page.

The single Else clause at the end of the Evaluate structure provides a
way to specify actions to be performed if none of the other clauses is true.
That is, the Else condition is determined by the previous clauses;
therefore the Else clause form is blank.
8 To display the previous page, press F 3 (Prevpage). To display the next

page, press F4 (Nextpage).
! CAUTION:
In the following Step 9, if you press F 2 (Remvpage), the system removes all
action steps structured to the removed Evaluate statement.
9 To remove the current page, press F2 (Remvpage). The first page of the

Define Evaluation screen cannot be removed.
10 Press F3 (Close) to complete the definition.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 252

7

Defining the Transaction

Defining Evaluate

Nesting Evaluate Statements
In order to successfully create nested Evaluate statements within an
application, you must define the outer statement first. For example, you start
with the following transaction and make sure the Evaluate statement is
defined:
start:
1. Answer Phone
2. Announce
3. Evaluate
If $MATCH_FOUND
End Evaluate
4. Quit

= 12

Then, place the cursor on line #3 and add another evaluate statement. The
transaction looks like the following:
start:
1. Answer Phone
2. Announce
3. Evaluate
If $MATCH_FOUND
4.
Evaluate
End Evaluate
End Evaluate
5. Quit

= 12

Now you have a nested evaluate statement. If you want to next another
evaluate statement, then you need to define the second evaluate statement

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 253

7

Defining the Transaction

Defining Evaluate

(line #4), before you add another evaluate statement. If line #4 evaluate
statement is not define and you add another evaluate statement, then it looks
like the following:
start:
1. Answer Phone
2. Announce
3. Evaluate
If $MATCH_FOUND
4.
Evaluate
End Evaluate
5.
Evaluate
End Evaluate
End Evaluate
6. Quit

= 12

Note that the third evaluate is not nested in the second evaluate. If line #4
evaluate is defined and you put the cursor on line #4 and add another
evaluate statement, then it should be a three-level nested evaluate statement
like the following:
start:
1. Answer Phone
2. Announce
3. Evaluate
If $MATCH_FOUND
= 12
4.
Evaluate
If $CI_VALUE
< 0
5.
Evaluate
End Evaluate

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 254

7

Defining the Transaction

Defining External Function

End Evaluate
End Evaluate
6. Quit

Defining External Function
The External Function action step provides a way to perform an activity
outside the domain of Script Builder, but which can be done using the system
transaction assembler script (TAS) language. The External Function action
step is the point at which the transaction is transferred to external control, and
the point to which control returns with a value from the external function, if
requested. You can use several External Function action steps in a single
transaction.
The system includes predefined external functions. For example, you can use
the predefined substring external function to obtain an area code from a
telephone number, the last four digits from a social security number, or part of
a postal zipcode. You can also use the TAS language to create a new
external function.
You can specify as many as five fields (arguments) to pass values from the
transaction to the function. Very often the first argument is the value the
transaction will use when control is returned to it. You can use an optional
sixth field to receive a return code from the function.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 255

7

Defining the Transaction

Defining External Function

As with other action steps, the system provides function-specific help while
you are using the define screen for the action step. For the Define External
Function screen, two types of help are available:
•

General Help provides general information about external functions

•

Function Specific Help provides information about a specific external
function. Function-specific help is available after you specify a function
name in the Define External Function screen.

Note:

You must provide the function-specific help for new external
functions that you create.

See Using External Functions on page 710 in Chapter 11, Using Advanced
Features, for more information about using and defining external functions,
creating new external functions, and writing help for your new external
functions.
To define the External Function action step:
1 With the cursor in the desired position in the Define Transaction screen

(Figure 60 on page 215), press F1 (Add).
The system displays the Action Choices menu (Figure 62 on page 221).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 256

7

Defining the Transaction

Defining External Function

2 Select

>External Function

3 Press F6 (Cancel).
4 Press F4 (Define).

The system displays the Define External Function screen (Figure 70 on
page 257).
Figure 70.

Define External Function Screen

5 In the Function Name field, press F2 (Choices) for a menu of available

external functions.
6 Enter field names or constants in the Argument 1 through Argument 5

fields as required by the external function and your application.
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 257

7

Defining the Transaction

Defining Get Host Screen

7 Enter a field name in Return Code Is In Field if required for your

application. This field will be type num unless specified otherwise.
8 Press F3 (Close) to complete the definition.

Defining Get Host Screen
Get Host Screen provides a structured list of the possible situations (cases)
that can occur when a screen is expected from the host computer. One case
is used for each possible screen that could be returned from the host.
Typically, two additional cases are specified, one for host timeout and the
other for arrival of an unexpected screen.
Typically, a Get Host Screen action step should follow every Send Host
Screen in the transaction. See Defining Send Host Screen on page 312.
The definition of Get Host Screen specifies only the structure of the action.
After definition, you fill in the action steps to be performed under each case.
Also, only the action steps under one case are performed. After that, control
passes to the first action step following the end of the structure, unless an
action under the performed case has already transferred control elsewhere.
The end of the structure is marked by an unnumbered End Get Host Screen
line. Script Builder allows each Get Host Screen action to accept up to 40
screen cases.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 258

7

Defining the Transaction

Defining Get Host Screen

Figure 71 on page 259 shows an example of a Get Host Screen action step in
a transaction. In this example, the transaction expects the ordernum screen
to arrive, but the HOST_TIMEOUT and UNRECOGNIZED_SCREEN cases
are also included.
Note:

HOST_TIMEOUT (no response received) and
UNRECOGNIZED_SCREEN (unexpected screen received) are
not actual screens but are available as cases so that you can
specify what the transaction will do in these situations.

Figure 71.

Get Host Screen Example

The system waits the amount of time specified in the Parameters component
before determining that a case of HOST_TIMEOUT or
UNRECOGNIZED_SCREEN exists. Because intermediate screens may
arrive prior to the screen expected, the unrecognized screen case is not

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 259

7

Defining the Transaction

Defining Get Host Screen

invoked until at least one (unexpected) screen has been received and the
time specified in UNRECOGNIZED_SCREEN to wait for the next screen has
elapsed.
! CAUTION:
Use both the HOST_TIMEOUT and UNRECOGNIZED_SCREEN cases in
every Get Host Screen action step. If one of these cases occurs during a
caller transaction, but the case is not defined, the system will terminate the
call.
To define the Get Host Screen action step:
1 With the cursor in the desired position in the Define Transaction screen
(Figure 60 on page 215), press F 1 (Add).

The system displays the Action Choices menu (Figure 62 on page 221).
2 Select

>Get Host Screen

3 Press F6 (Cancel).
4 Press F4 (Define).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 260

7

Defining the Transaction

Defining Get Host Screen

The system displays the Define Get Host Screen (Figure 72 on page
261).
Figure 72.

Define Get Host Screen

5 Type the name of the desired screen, or press F2 (Choices) for a menu of

known screens. See Chapter 4, Defining the Host Interface, for more
information about defining host screens.
Note:

If you are sharing screens with another application, at least one of
the shared screens needs to be included in the Get Host Screen.
Otherwise, the other application does not know which logical unit
(LU) to come up on. See Chapter 6, Defining Parameters, for
more information about LUs.

6 Press F3 (Close) to complete the definition, or press F1 (Addpage) to

create an additional case.
7 Press F3 (Prevpage) or F4 (Nextpage) as desired to scroll through the

cases in the structure.
8 To remove an existing case from the structure, press F 2 (Remvpage).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 261

7

Defining the Transaction

Defining Get Host Screen

! CAUTION:
If you press F 2 (Remvpage), the system removes all action steps structured
to the removed Get Host Screen case.
9 Press F5 (Options) if you want to release a logical unit (LU) to be used on

another call, as soon as the Get Host Screen action step is completed.
The system displays the Host Options window (Figure 73 on page 262).
The default value is no. Enter y or press F 2 (Choices) for a menu. See
Chapter 6, Defining Parameters, for more information about LUs.
Figure 73.

Host Options Window

Get Host Screen Error Messages
If a problem arises with a Get Host Screen or Send Host Screen action and
the host computer, the failure can either be a case of an
UNRECOGNIZED_SCREEN or HOST_TIMEOUT. When either case occurs,
a $HOST_ERROR field is established to help identify the trouble spot.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 262

7

Defining the Transaction

Defining Get Host Screen

Use an Evaluate action step in the transaction to check the codes in the
$HOST_ERROR field. The following is an example of how the action steps
should be set up in the transaction:
Get Host Screen
For Screen Name:
HOST_TIMEOUT
Evaluate
If $HOST_ERROR = “ERR_SSCP"
Send Host Screen
Send Screen Name:
Use Aid Key:
PF3
Elseif $HOST_ERROR = “ERR_UNOWNED"
Send Host Screen
Send Screen Name:
Use Aid Key:
PF3
Else
End Evaluate
For Screen Name:
UNRECOGNIZED_SCREEN
Evaluate
If $HOST_ERROR = ERR_HOSTDOWN"
Announce
End Evaluate
For Screen Name:
normal screens
End Get Host Screen

The following is a list of Get Host Screen error messages with their
meanings:
$HOST_ERROR (if $HOST_SCREEN=HOST_TIMEOUT)
•

#define ERR_TIMEOUT

The host did not respond within the timeout period specified in the
Parameters menu. See Chapter 6, Defining Parameters, for more
information.
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 263

7

Defining the Transaction
•

Defining Get Host Screen

#define ERR_DSR

The physical link is down.
•

#define ERR_UNOWNED

The SNA session is unowned; that is, the current session is not an LU
session or an LU sscp session.
•

#define ERR_LULU

The LU is in an LU session with the host.
•

#define ERR_SSCP

The LU is in an LU sscp session (connection to VTAM).
•

#define ERR_BOARD

The serial I/O circuit card returned a card error.
•

#define ERR_NO_LU
No LU is available to send the screen to the host.

$HOST_ERROR (if $HOST_SCREEN=UNRECOGNIZED_SCREEN)
•

#define ERR_UNRECOGNIZED

An unrecognized screen was received from the host.
•

#define ERR_WRONG_SCREEN

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 264

7

Defining the Transaction

Defining Goto Label

The screen specified in the screen action is not the screen currently on
the LU.
•

#define ERR_PROTECTED

The Send Host Screen action specified that data be written into a
protected field on the screen.
•

#define ERR_IN_INHIB

Input is inhibited on the LU; that is, the keyboard is locked.
•

#define ERR_HOSTDOWN

The application is in the host down state. This occurs when all LU(s) are
running recovery sequences.
•

#define ERR_FAILURE

The Send/Get failed.

Defining Goto Label
The Goto Label action step and the Label action step work together. The
Goto Label action step is one way to transfer control (execution) from one
location in the transaction to another. Insert the Goto Label action step in the
transaction where the control is to be moved from. Specify the Label action
step where the control is to be moved to. See Defining Evaluate on page 245
for examples of the Goto Label action step in a transaction.
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 265

7

Defining the Transaction
Note:

Defining Goto Label

You can specify a label that you have not yet created, but it is a
good idea to use a flowchart so that you do not forget some labels.
You should enter labels in the transaction so that you can group
action steps under each label. If you specify a Goto Label for a
Label that you do not create, the system will discover the error
when you verify the application. You must correct the error before
you can install the application.

To define the Goto Label action step:
1 With the cursor in the desired position in the Define Transaction screen
(Figure 60 on page 215), press F 1 (Add).

The system displays the Action Choices menu (Figure 62 on page 221).
2 Select

>Goto Label

The system displays the Add Goto Label window (Figure 74 on page
267).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 266

7

Defining the Transaction
Figure 74.

Defining Label
Add Goto Label Window

3 Specify the label to which execution should be transferred by entering the
name of the desired label, or press F 2 (Choices) to select from a menu.

Note:

For an existing Goto Label action step, you can change the
specified label by highlighting the label line, then pressing
F 4 (Define) to display the Add Goto Label window. Specify the
new label as described in this Step 3.

4 Press F3 (Close) to complete the definition.

Defining Label
The Label action step and the Goto Label action step work together. Use the
Label action step to identify a group of action steps that accomplish a specific
task in your application. Then you can use a Goto Label action step to move
control to a label. A label also receives control of the transaction when the
progress of the transaction arrives at the label through the normal step-bystep sequence.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 267

7

Defining the Transaction

Defining Label

Follow these guidelines for each label name:
•

The name must be 1 to 20 characters in length.

•

Legal characters are letters (A–Z and a–z), numbers (0–9), and
underscore (_).

•

The name must begin with an alphabetic character.

•

Script Builder automatically adds a colon (:) to the end of each label to
identify it as being different from the other action steps. The colon does
not count toward the length limit.

To define the Label action step:
1 With the cursor in the desired position in the Define Transaction screen
(Figure 60 on page 215), press F 1 (Add).

The system displays the Action Choices menu (Figure 62 on page 221).
2 Select

>Label

The system displays the Add Label window (Figure 75 on page 269).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 268

7

Defining the Transaction
Figure 75.

Defining Modify Table
Add Label Window

3 Enter the name of the desired label, or press F 2 (Choices) to select from

a menu of label names.
Note:

For an existing Label action step, you can change the specified
label by highlighting the label line, then pressing F4 (Define) to
display the Add Label window. Specify the new label as described
in this Step 3.

4 Press F3 (Close) to complete the definition.

Defining Modify Table
The Modify Table action step allows a caller to make changes to information
in database table fields. Use it to allow customers to transfer data from one
account to another without the help of a customer service representative. The
Modify Table action step also allows an administrator to modify information in
the database. In the River Bank application (see Appendix A, Sample
Application) the administrator can change interest rate information by calling
in through the system.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 269

7

Defining the Transaction

Defining Modify Table

The Define Modify Table screen (Figure 76 on page 271) allows you to
identify the name of the table to be modified and the specific operation to be
performed. The operation choices are Add, Change, or Remove.
! CAUTION:
You must include a Read Table action step before any Modify Table action
step that will perform a Remove or Change operation. All records that exactly
match the last record retrieved from a Read Table will be affected.
The Modify Table action step will assign a value to each field you specify (up
to 15), based on the value of the expression you define by selecting one or
more operands and an operation (if you specify two operands).
The system variable $RECORDS_CHANGED is set after a Modify Table
action step. It contains the number of records changed by that action. The
value will be a -1 in the case of system failure, a 0 if no records matched
those specified, or a positive number if records were changed.
See Chapter 5, Creating Database Tables, for more information about using
the Modify Table action step.
To define the Modify Table action step:
1 With the cursor in the desired position in the Define Transaction screen
(Figure 60 on page 215), press F 1 (Add).

The system displays the Action Choices menu (Figure 62 on page 221).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 270

7

Defining the Transaction

Defining Modify Table

2 Select

>Modify Table

3 Press F6 (Cancel) to exit the Action Choices menu.
4 Highlight the Modify Table action step in the transaction.
5 Press F4 (Define).

The system displays the Define Modify Table window (Figure 76 on page
271).
Figure 76.

Define Modify Table Window

6 Enter the name of the desired database, or press F2 (Choices) to select

from a menu of database names.
7 Enter the name of the desired operation, or press F2 (Choices) to select
from a menu, then press F3 (Cont).

If you select Remove, the system returns to the Define Transaction
screen (Figure 60 on page 215). If you select Add or Change, the system
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 271

7

Defining the Transaction

Defining Modify Table

displays the Define Modify Table – Update screen (Figure 77 on page
272).
Figure 77.

Define Modify Table-Update Screen

8 You can enter up to 15 field names in the Define Modify Table – Update
screen. Press P gDn and Pg Up to display all 15 fields.

Press F2 (Choices) with the cursor in the Field Name field for a list of all
fields belonging to the current table.
Any field that is not listed in Field Name in the update screen will receive
null data for an Add operation or will be unaffected for a Change
operation.
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 272

7

Defining the Transaction

Defining Prompt & Collect

9 Press F2 (Choices) with the cursor in the 1st Operand/2nd Operand

field to display all fields available to the application.
10 If you select a 2nd Operand, you must also select an Operator. The
system will assign a value to the Field Name that is equal to the

expression after the operation is performed.
11 Press F3 (Close) to complete the definition and return to the Define

Transaction screen (Figure 60 on page 215).

Defining Prompt & Collect
The basic purpose of the Prompt & Collect action step is to prompt for, obtain,
and process transaction input from the caller. This action step is divided into
three functions, each with its own screen:
1 Prompt the caller for a response (input) the system needs for the

transaction. This could be a selection from a menu of choices, or
information from the customer such as an account number. You can
specify whether the caller can or cannot interrupt the prompt message.
2 Specify the parameters of the caller input, such as the number of digits

expected, the field in which the characters should be placed, etc. This is
also the screen where you specify the recognition type for one of the
optional speech recognition features.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 273

7

Defining the Transaction

Defining Prompt & Collect

3 Process the input by comparing it to an evaluation checklist and respond

as specified for each case. You can use the standard or the custom
checklist. The confirm action, available in either checklist, allows you to
play the caller input back and ask for confirmation that the system
received the input correctly.

Prompting the Caller for Input (Page 1, PROMPT)
The PROMPT screen (Figure 78 on page 292) looks and works exactly like
the Define Announce screen. The main difference is in the way they are
used. You ask for input in a PROMPT screen, but you only send out (play)
messages in a Define Announce screen. See Defining Announce on page
233 for discussions Using Announce versus Prompt & Collect on page 237
and Speak with Interrupt? on page 233.
Note:

See Prompt & Collect: Tips on page 301 for additional guidelines
about using speak with interrupt.

The PROMPT screen can play 1 to 15 phrases, field values, and/or lines of
text in succession in a single action step. Note that you can use text only if
the optional Text-to-Speech (TTS) feature is installed.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 274

7

Defining the Transaction

Defining Prompt & Collect

Specifying Caller Input (Page 2, INPUT)
The INPUT screen (Figure 79 on page 295) allows you to specify the input
parameters. Default values are supplied for most of these. Table 19 on page
275 shows the valid inputs and default values for fields in the INPUT screen.
Each of these parameters is discussed following this table.
Table 19.

Caller Input Fields

Field

Required Input

Default Value

Caller Input Field

Name of a field

$CI_VALUE

No. of Tries Used Field

Name of field

$CI_TRIES_USED

No. of Digits Input Field

Name of field

$CI_NO_DIGS_GOT

Min Number of Digits

Integer (1–64)

01

Max Number of Digits

Integer (1–64)

64

TT Terminator Code Active

Yes or no

No

TT Terminator Code Value

One or two touch tones

#

TT Repeat Code Active

Yes or no

No

TT Repeat Code Value

One or two touch tones

None

TT Erase Code Active

Yes or no

No
1 of 2

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 275

7

Defining the Transaction

Table 19.

Defining Prompt & Collect

Caller Input Fields

Field

Required Input

Default Value

TT Erase Code Value

One or two touch tones

None

TT Cancel Code Active

Yes or no

No

TT Cancel Code Value

One or two touch tones

None

No. of Tries to Get Input

Integer (1–9)

03

Initial Timeout

Integer (3–60 seconds)

05

Interdigit Timeout

Integer (3–60 seconds)

05

Recognizer

None

None

Recognition_Type

None

None
2 of 2

Caller Input Field

The Caller Input Field receives the input character string from the caller.
The system field $CI_VALUE is the default. It is a char field of size 67. You
can use any field of type char. Make sure the field size is large enough for the
caller input string, or the system will not retain all of the caller input.
Note:

You should use the $CI_VALUE or another char field to receive
caller input. You can use a field of a different type, but caller input
is defined as type char, so the rules of data conversion would
apply as described in Chapter 3, Data Management.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 276

7

Defining the Transaction

Defining Prompt & Collect

Number of Tries
Used

During caller input, the caller may enter invalid information. The No. Of
Tries Used Field keeps count of the number of input attempts. The field is
reset to zero (0) each time a Prompt & Collect action step is executed in the
transaction. The system field $CI_TRIES_USED, of type num, is the default.
You can substitute another num field. You can use a field of a different type,
but the rules of data conversion would apply as described in Chapter 3, Data
Management. You can specify the reprompt action on Page 3, CHECKLIST,
of the Define Prompt and Collect screen to allow the caller to try again.

Number of Digits
Input

The No. Of Digits Input Field keeps count of the number of characters
currently in the caller input field. The variable $CI_NO_DIGS_GOT, of type
num, is the default. You can substitute another num field. You can use a field
of a different type, but the rules of data conversion would apply as described
in Chapter 3, Data Management.

Minimum Number
of Digits

Use the Min Number Of Digits field to specify the minimum number of
characters required for the caller input string to be considered valid. Any
minimum, from 1 to 64 characters, is permitted, if nothing is specified in the
Recognition_Type field. The default is one character. If you select an invalid
number, the system will set it to a valid number for the recognition type
specified.

Maximum Number
of Digits

Use the Max Number Of Digits field to specify the maximum number of
characters required for the caller input string to be considered valid. Any
maximum, from 1 to 64 characters, is permitted, if nothing is specified in the

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 277

7

Defining the Transaction

Defining Prompt & Collect

Recognition_Type field. The default is 64 characters. If you select an invalid
number, the system will set it to a valid number for the recognition type
specified.
Touch-Tone
Terminator Code
Activity Status

Use the TT Terminator Code Active field to specify if you want the caller to
use a touch-tone terminator code. A typical use for this is when you expect a
variable length input, and it is desirable to avoid the timeout delay that would
otherwise occur while the system waits for input. Selecting yes indicates it
will be used, no (default) indicates it will not.

Touch-Tone
Terminator Code
Value

Use the TT Terminator Code Value field to specify the touch-tone
character (or two-character sequence) to be used to signal the end of the
caller input. When a terminator is used, the terminator string does not
appear in the Caller Input Field. For example, if “#” is used as the
terminator and the caller enters a “123#”, the input is treated as “123.” The
default terminator is the pound symbol (#). You can substitute any touch-tone
character or two-character sequence.

Touch-Tone Repeat
Code Activity
Status

Use the TT Repeat Code Active field to specify if you want the caller to use
a touch-tone repeat code. This allows the caller to have the system repeat
the prompt message. Selecting yes indicates it will be allowed, no (default)
indicates it will not.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 278

7

Defining the Transaction

Defining Prompt & Collect

Touch-Tone Repeat
Code Value

Use the TT Repeat Code Value field to specify the touch-tone character (or
two-character sequence) to be used by the caller to hear the input prompt
again. There is no default.

Touch-Tone Erase
Code Activity
Status

Use the TT Erase Code Active field to specify if you want the caller to use a
touch-tone erase code. When the caller uses an erase code, the system
erases the last digit entered prior to the code. For example, if *# is used as an
erase code and the caller enters a “125*#345”, the input is treated as
“12345.” Selecting yes indicates it will be allowed, no (default) indicates it will
not.

Touch-Tone Erase
Code Value

Use the TT Erase Code Value field to specify the touch-tone character (or
two-character sequence) to be used by the caller to erase the previous touchtone from the input string. There is no default.

Touch-Tone Cancel
Code Activity
Status

Use the TT Cancel Code Active field to specify if you want the caller to use
a touch-tone cancel code. When the caller uses a cancel code, the system
erases the caller input (including the cancel code) for the current prompt so
the caller can enter the complete input again. Selecting yes indicates it will be
allowed, no (default) indicates it will not.
Touch-Tone Cancel Code Value

Use the TT Cancel Code Value field to specify the touch-tone character (or
two-character sequence) to be used by the caller to erase the entire input
string. There is no default.
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 279

7

Defining the Transaction

Defining Prompt & Collect

Number of Tries to
Get Input

Use the No. Of Tries To Get Input field to specify the maximum number
of times the caller is allowed to attempt to enter valid input. The allowable
range is from 1 to 9. The default is 3.

Initial Timeout

Use the Initial Timeout field to specify the maximum amount of time (in
seconds) the system will wait for the caller to enter the first character of input.
The allowable range is from 3 to 60. The default is 5 seconds. Do not use 0.

Interdigit Timeout

Use the Interdigit Timeout to specify the maximum amount of time (in
seconds) the system will wait for the caller to enter any character after
entering the previous character. The allowable range is from 3 to 60. The
default is 5.
Note:

Recognizer

Where the length of the expected input is variable (for example, an
account number from 5 to 7 characters), the interdigit timeout may
indicate completion of valid input. For example, a 5-second silence
after entering six characters indicates the caller is finished
entering input. You can avoid this delay by using a touch-tone
terminator code as described in Touch-Tone Cancel Code Value
on page 279.

Script Builder automatically displays in the Recognizer field the recognizers
that are available on your system. You can use both Dial Pulse Recognition
(DPR) and speech recognition (SR) during the same Prompt & Collect action
step. SR applies to WholeWord speech recognition and FlexWord™ speech
recognition, but only one can be active for each prompt. The active SR

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 280

7

Defining the Transaction

Defining Prompt & Collect

recognizer is determined by what you specify in the Recognition_Type field.
See Chapter 8, Using Optional Features, for more information about including
DPR, WholeWord speech recognition, and FlexWord speech recognition in
your Prompt & Collect action step.
Recognition Type

Use the Recognition_Type field to specify which available DPR recognition
type, and WholeWord recognition type or FlexWord wordlist you want the
system to use for this Prompt & Collect action step.

Analyzing Input from the Caller
(Page 3, CHECKLIST)
The CHECKLIST screen allows you specify how the transaction will respond,
depending on whether the input was invalid, valid, or correct (custom
checklist only). The checklist is a list or table of possible cases (situations).
Specify the next action for the transaction to take when each case occurs (is
evaluated as being true). Each checklist line includes:
•

Input case

•

Optional custom message to be played if the case occurs

•

Action to take next

•

Data to further specify the action (if needed)

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 281

7

Defining the Transaction

Defining Prompt & Collect

Two different checklists are available: the standard and custom. The
standard checklist is used by default. You can select the custom checklist,
which allows you to specify additional cases, including correct input. You can
specify the confirm action, available in either checklist, to play the caller input
back and ask for confirmation that the system received the input correctly.
Standard Checklist

Use the standard checklist (Figure 80 on page 296) when you want to
distinguish only between valid and invalid input. It also allows you to specify
an action to take for each case in the list.
Case

The Case field specifies a situation that could be true for caller input. The
standard checklist includes for the following input cases:
•

Input Ok – True when valid input is received: number of characters
within range, timeout not expired, within allowed number of tries, etc.

Note:

Valid input is not necessarily correct input but rather the input that
is within specified parameters. For example, a caller is asked to
enter a five-digit account number. If the caller does not respond, or
enters just four digits, then the response can easily be classified
as invalid. But any five-digit number the caller enters is valid. The
only practical way to verify if it is correct is to send it to the host
computer to perform a database lookup and see if it is an existing
account.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 282

7

Defining the Transaction

Defining Prompt & Collect

•

Initial Timeout – True when no input was received from the caller
within the allotted time.

•

Too Few Digits – True when an Interdigit Timeout occurs and an
insufficient number of characters has been received.

•

No More Tries – True when either an Initial Timeout or Interdigit Timeout
occurs, and the limit on the number of tries to receive valid caller input has
been reached.

Voice Response

Use the Voice Response field to specify if you want to play a custom caserelated message to the caller (Figure 81 on page 297). For example, in the
case of Initial Timeout, you could play a message saying “Still waiting for
your input.”
Action

Use the Action field to specify the action to be taken when the case occurs.
Note:

Keep the caller in mind when selecting an Action for a Case.
Some combinations would be confusing to a caller, even though
Script Builder accepts them. For example, the case No More
Tries could be followed by the action Reprompt. The system
would ask the caller for input again, after the caller was
unsuccessful at entering the input on a few tries already. A better
choice for No More Tries is Transfer To.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 283

7

Defining the Transaction

Defining Prompt & Collect

The available actions are
•

Continue – Continues execution of the transaction with the next action
step following the Prompt & Collect action step

•

Try Again – Tries to get valid caller input again (without playing the initial
prompt); used when a custom message has been used as a replacement
message for a prompt

•

Reprompt – Tries to get valid caller input again, after first playing the initial
prompt (with a custom message, if specified, being played before the
initial prompt)

•

Goto Label – Identical to the Goto Label action step

Follow these guidelines for each Goto Label:
~ The name must be 1 to 20 characters in length.
~ Legal characters are letters (A–Z and a–z), numbers (0–9), and

underscore (_).
~ The name must begin with an alphabetic character.
~ Script Builder automatically adds a colon (:) to the end of each label to

identify it as being different from the other action steps. The colon does
not count toward the length limit.
See Defining Goto Label on page 265 for more information.
•

Quit – Identical to the Quit action step

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 284

7

Defining the Transaction

Defining Prompt & Collect

See Defining Quit on page 305 for more information.
•

Transfer To – Identical to the Transfer Call action step, except that the
type of transfer within a Prompt & Collect action is always a blind transfer

See Defining Transfer Call on page 318 for more information.
Note:
•

See Prompt & Collect: Tips on page 301 for guidelines about
using Quit following a Transfer To.

Confirm – Repeats the caller input, then asks the caller to confirm that
the input is correct

See Specifying the Confirm Action on page 290 for more information.
Action Data

Use the Action Data field only to specify:

Custom Checklist

•

A label for a Goto Label action

•

A telephone number for a Transfer To action

•

Caller input for a Confirm action

Use the custom checklist (Figure 83 on page 299) when you want to
distinguish between correct and incorrect caller input (in addition to between
valid and invalid input). It also allows you to specify an action to take for each
case in the list. This checklist has the same structure as the standard

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 285

7

Defining the Transaction

Defining Prompt & Collect

checklist. Follow the same guidelines for completing the custom checklist as
you would for completing the standard checklist, as described in Standard
Checklist on page 282.
Using Default Cases

The last four cases in the checklist include three of the same valid input
cases found on the standard checklist (Initial Timeout, Too Few Digits,
and No More Tries), plus a Not On List case for any valid input not
otherwise specified elsewhere in the list on this screen. As in the standard
checklist, each default Case has an Action that you can override.
Creating Custom Cases

You can specify up to 12 custom cases of correct input (in the lines above the
four default cases). The system compares the input to each case and
performs the action specified for the first true case, similar to an “If-ThenElse” statement. For example, your prompt could be:
“For your checking account balance, say or enter 1.
For your savings account balance, say or enter 2.
To speak with a customer service representative, say or enter 0.”
For this example, list “1,” “2,” and “0” as three custom checklist cases. For the
digits 1 and 2, select Goto Label actions and branch off to the appropriate
group of action steps to provide the information requested. For the digit 0,

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 286

7

Defining the Transaction

Defining Prompt & Collect

select a Transfer To action step and specify a telephone number for an
agent.
In many cases, you can describe a correct input but you cannot list all the
correct values. For example, valid customer account numbers could be eight
digits with the first digit always 4 and the last digit always 9, or a stock
number might be six to nine digits in length and always begin with 76.
You can use the pattern symbols (Table 20 on page 287) and special codes
(Table on page 288) available in Script Builder to describe a correct input
case without specifying a value. Because the cases are compared in the
order listed, include the most specific pattern first and more general patterns
later.
Table 20.

Custom Checklist Pattern Symbols

Character

Function

0, 1,... 9

These are standard digits.

*, #

These are special touch-tone keys, which are frequently
used as touch-tone control characters (terminator, erase,
repeat, or cancel codes). These are not included in the
value in the Caller Input Field, but they are part of the
caller input string, so you can include them in a correct
input case pattern.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 287

7

Defining the Transaction

Table 21.

Defining Prompt & Collect

Custom Checklist Special Codes

Character*

Function

A, B, C, D

These are extended digits. The touch-tone standard includes a 16-digit
keypad with a fourth column.

n

This represents any one of the 10 standard digits.

s

This represents either one of the two special digits.

e

This represents any one of the four extended digits.

t

This represents any 1 of the 16 touch-tone digits.

r

This is the repeat character. This special pattern symbol means “match one
or more repetitions of the previous pattern symbol.”

q

This is the quit character. This special pattern symbol means “stop
comparing and accept any input string that has matched up to this point.”

* If you use one of these characters or any other touch tones besides * and # as special codes, they
will only have their special function and will not appear in the input. Therefore, checklist cases that
include them will not be matched.

The literal characters (0,..., 9, *, #, A,..., D) each match one instance of
themselves. The group characters (n, s, e, t) each match one instance from
their group.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 288

7

Defining the Transaction

Defining Prompt & Collect

The above example of an eight-digit account number beginning with 4 and
ending with 9 would match the case “4nnnnnn9.”
The two special pattern symbols “r” and “q” are useful when the input you
want to match has a varying length (within a specified range). Use the “r”
symbol when the input has a varying length portion that includes some
repeated digits. Therefore, the symbol that precedes “r” in the pattern must
be present one or more times. For example, the “5r2” in the Case field would
match any of the following inputs: “52,” “555552,” “552,” etc.
Use the “q” symbol when the first few digits of the input must follow a
specified pattern, but the remainder of the input is more variable. For
example, the Case “76q” means that if the first part of the input matches the
pattern, the remainder of the input can be ignored and the pattern is matched.
The “q” must be the last significant symbol in a pattern description. Script
Builder will ignore any characters after the “q” in a pattern.
You may use the special codes and pattern symbols together. For example,
the “nr” in the Case field would match either of the following inputs if # is a
control character: “1#,” “123#”. However, the input “12*45#” would be invalid
for “nr” because of the asterisk. If you place the “tr#1q” in the Case field, the
following inputs are valid: “124**#1”, 9#1, “##1”. However, the input “123” or
“#1” are not valid. The first invalid case does not provide the pound sign (#) or
termination digit of 1 and the second invalid case does not provide a touch
tone digit as indicated by “t”.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 289

7

Defining the Transaction

Specifying the
Confirm Action

Defining Prompt & Collect

Using Page 3, CHECKLIST, of the Define Prompt and Collect screen (Figure
84 on page 300), you can direct the application to prompt callers for
confirmation of input. This input can be either touch-tone, optional DPR, or
Yes/No in an optional WholeWord speech recognition language. See Using
Dial Pulse Recognition or Speech Recognition on page 401 in Chapter 8,
Using Optional Features, for more information about using these optional
features in a Prompt & Collect action step.
Note:

To use the Confirm action, the system must include a feature to
play the caller input, such as Text-to-Speech or Enhanced Basic
Speech.

You can specify the Confirm action (Figure 84 on page 300) to take an
optional single digit as an argument, in addition to Yes/No (which is default if
you specify a WholeWord recognition type). In the Action Data field, specify
the touch-tone or DPR digit argument you want callers to enter to indicate a
confirmation. If you do not specify an argument (Action Data field is blank),
the transaction treats the confirm as a “continue” when the caller enters any
touch-tone, DPR, or speech input.
The Confirm action also has an associated Voice Response field (Figure 85
on page 301). In this screen, you specify the field that contains the caller
input as well as any phrase you want spoken after that. For example, you
may specify that the system speak the caller input, then the phrase, “If this is
correct, say yes or dial 1.” To open the Voice Response field, position the
cursor on that field, then press F1 (Expand).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 290

7

Defining the Transaction

Defining Prompt & Collect

If the system receives an input that matches the argument, the transaction
continues to the next action step. If the system receives an input that does
not match the argument, the transaction prompts the caller again for the
input.
Note:

You can select and define the Confirm action in the standard
checklist or in the custom checklist.

Defining the Prompt & Collect Action Step
To define the Prompt & Collect action step:
1 With the cursor in the desired position in the Define Transaction screen
(Figure 60 on page 215), press F 1 (Add).

The system displays the Action Choices menu (Figure 62 on page 221).
2 Select

>Prompt & Collect

3 Press F6 (Cancel) to exit the Action Choices menu.
4 Highlight the Prompt & Collect action step in the transaction.
5 Press F4 (Define).
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 291

7

Defining the Transaction

Defining Prompt & Collect

The system displays Page 1, PROMPT, of the Define Prompt and Collect
screen (Figure 78 on page 292).
Figure 78.

Define Prompt and Collect — PROMPT Screen

6 In the Speak with Interrupt? field, enter y or n, or press F 2 (Choices)

and select from the menu to specify if you want to allow interrupt.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 292

7

Defining the Transaction

Defining Prompt & Collect

! CAUTION:
If the prompt message does not allow interrupt, you must remove (trim) all
final (trailing) silence from the prompt message. If the message includes
silence at the end, the caller may begin to enter input while the silence is
being played. Any input entered during that time will be lost, and the caller will
probably be reprompted and wonder why.
7 In the Type field, enter p (Phrase), f (Field), t (Text, for TTS only), or press
F2 (Choices) and select from the menu to indicate the speech type.
8 In the Field Name/Phrase Tag/Text String field, specify a phrase or
field, or enter the text string for TTS. Press F 2 (Choices) for a menu of

phrases and fields already used.
You can change, remove, and amend message contents.
~ To change the details of a line, move to the appropriate line and make

the desired changes.
Note:

If you begin a line with a space, you will be able to edit it later
without retyping the entire line. If you begin a line with any other
character, you must retype the entire line to make any changes.

~ To remove a phrase or field entry from the PROMPT screen, delete all
data from the line where the phrase or field is entered and press F3

(Close). When you reopen the action step, the system will move up
lines below the deleted line to close the gap.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 293

7

Defining the Transaction

Defining Prompt & Collect

~ To add a line above existing lines, you must retype the data on each of

the existing lines, one line lower, to make room for the new line.
9 In the Field Format field, enter a format for field or TTS, or press F2

(Choices) for a menu. Note that phrases are played as recorded, so a
format does not apply. The format determines the speech inflection and
the interpretation of data, such as numbers used in money, dates, and
times. See Formats for Spoken Output on page 53 in Chapter 3, Data
Management, for information about spoken field formats. See Using Textto-Speech on page 391 in Chapter 8, Using Optional Features, for
information about using TTS formats to speak a field value.
Note:

The field formats available are determined by the optional
Enhanced Basic Speech language specified in the Shared
Speech Pools window.

10 Repeat Steps 7 through 9 for each line in the prompt message.
11 When Page 1, PROMPT, is complete, do one of the following:
~ Press F3 (Close) to store your selections and return to the Define

Transaction screen (Figure 60 on page 215), or
~ Press F8 (Chg-Keys), then press F4 (Nextpage).

The system displays Page 2, INPUT, of the Define Prompt and Collect
screen (Figure 79 on page 295).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 294

7

Defining the Transaction
Figure 79.

Defining Prompt & Collect
Define Prompt and Collect — Sample INPUT Screen

12 Use the default values or specify your selections for Caller Input
Field through the Interdigit Timeout field, using the guidelines

discussed above.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 295

7

Defining the Transaction

Defining Prompt & Collect

13 With the cursor in the Recognition_Type field, press F2 (Choices). Then,

for each active recognizer, select the recognition type from those
available. Available WholeWord recognition types and FlexWord wordlists
are all be listed when you press F2 (Choices) for SR Recognition_Type.
14 When Page 2, INPUT, is complete, do one of the following:
~ Press F3 (Close) to store your selections and return to the Define

Transaction screen (Figure 60 on page 215), or
~ Press F8 (Chg-Keys), then press F4 (Nextpage).

The system displays Page 3, CHECKLIST, of the Define Prompt and
Collect screen, with the standard checklist (Figure 80 on page 296)
shown.
Figure 80.

Prompt & Collect, Page 3 Standard Checklist

To use the standard checklist, continue with step 15.
To use the custom checklist, skip to step 16.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 296

7

Defining the Transaction

Defining Prompt & Collect

15 To use the standard checklist:
a Keep the default value of yes in the Do you want to use the
standard checklist? field.
b For each selection in the Case field, enter your selected information in
the Voice Response, Action, and Action Data fields, using the

guidelines discussed above.
Note:

With the cursor in the Voice Response field, press F1 (Expand) to
display the Define Voice Response for an Input Case screen
(Figure 81 on page 297). Enter your selections in the Type, Field
Name/Phrase Tag/Text String, and Field Format fields. You
can also edit or remove lines in this screen.

After entering your information, skip to step 17.
Figure 81.

Sample Define Voice Response For An Input Case

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 297

7

Defining the Transaction

Defining Prompt & Collect

16 To use the custom checklist:
a Change the value in the Do you want to use the standard
checklist? field to no by entering N, or press F2 (Choices) to select

from a menu.
The system reminds you that the custom checklist will replace the
standard checklist (Figure 82 on page 298).
Figure 82.

Custom Checklist Reminder

b When you acknowledge the message, the system displays the custom

checklist (Figure 83 on page 299).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 298

7

Defining the Transaction
Figure 83.

Defining Prompt & Collect
Prompt & Collect, Page 3, Custom Checklist

c Enter in the Case field any custom situations you want to define for this

application. See the discussion above, Table 20 on page 287, and
Table on page 288.
d For each default situation in the Case field, and for ones you create,
enter your selected information in the Voice Response, Action, and
Action Data fields, using the guidelines discussed above.

Note:

Expand the Voice Response field and make entries as described
in step 15.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 299

7

Defining the Transaction

Defining Prompt & Collect

17 To specify the Confirm action:
a Press F2 (Choices) with the cursor in the Action field, and select from

the menu. Note that the Confirm action is available in both the standard
and custom checklists.
The system displays the selected Confirm action (example in Figure 84
on page 300).
Figure 84.

Sample Confirm Action with Action Data

b Enter your selected information in the Voice Response and Action
Data fields, using the guidelines discussed above.

Note:

Expand the Voice Response field and make entries as described
in step 15. (example in Figure 85 on page 301).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 300

7

Defining the Transaction
Figure 85.

Defining Prompt & Collect
Sample Expanded Voice Response Field for Confirm Action

18 When Page 3, CHECKLIST, is complete, press F3 (Close) to store your

selections and return to the Define Transaction screen (Figure 60 on page
215).

Prompt & Collect: Tips
Transfer To and
Quit

The act of transferring a call does not terminate execution of a transaction.
After performing a Transfer To action in a checklist, execution of the
transaction continues with the first step following the Prompt & Collect action
step. Therefore, you should add a Quit action step immediately following any
Prompt & Collect action step that uses the Transfer To action. However,
quitting immediately after transferring should not apply to all the input
conditions (for example, Input Ok). For the input conditions that do not result

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 301

7

Defining the Transaction

Defining Prompt & Collect

in a Transfer To, you can avoid quitting immediately by branching to another
Label in the transaction.
The following is a sample Prompt & Collect action step in a transaction
showing a way to quit immediately after doing a blind transfer for certain input
conditions only. This sample also demonstrates how to avoid quitting for
other input conditions. The sample application does a blind transfer when the
caller times out or does not enter enough touch tones within the Prompt &
Collect action step. If the caller enters valid input, the transaction goes to a
Label to do further processing. However, if the user has no more tries
available, the application quits.
Note:

The Transfer To action within the Prompt & Collect action step
does not perform the same way as the Transfer Call action step.
The Transfer To action is always a blind transfer. See Defining
Transfer Call on page 318.

start:
1. Set Field Value
Field:
phoneNumber = "7325"
Field:
BLIND_SUCCESS = "X"
2. Prompt & Collect
Speak with interrupt
Phrase: Enter acct. no
Input
Min Number of Digits:04
Max Number of Digits:04
TT Terminator Code Value:
"#"
Checklist

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 302

7

Defining the Transaction

Defining Prompt & Collect

Case:
"Input Ok"
Goto OKINPUT
Case:
"Initial Timeout"
Transfer To phoneNumber
Case:
"Too Few Digits"
Transfer To phoneNumber
Case:
"No More Tries"
Goto DONE
End Prompt & Collect
#If we fall out of Prompt & Collect at this point
#then a blind transfer has been done, and we
#can check to see if it was successful
3. Evaluate
If $TRANSFER_RESULT!= BLIND_SUCCESS
#Error in the blind transfer; cleanup and abort
4. Goto DONE
End Evaluate
#At this point, blind transfer was successful so
#quit the script
DONE:
5. Quit
#We get to this point if the Prompt&Collect was
#successful and no blind transfer was done
OKINPUT:
#Process the input and then quit
6. Goto DONE

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 303

7

Defining the Transaction

Defining Prompt & Collect

Interrupt and Touch These rules are in addition to the basic interrupt rules described in Defining
Tones
Announce on page 233.
•

The caller is able to press any key the telephone touch-tone keypad at
any time during a caller transaction, regardless of the active transaction
step. Once the system answers the telephone, anytime the caller presses
a key on the telephone keypad, the corresponding touch tone is sent.

•

Touch tones are detected as they are entered. This allows the system to
process them during messages that allow interrupt.

•

The system processes touch tones received only during the input portion
of a Prompt & Collect action step. Any touch tones previously received are
fed into the input field, up to the maximum number of characters specified
in the action step. If less than the maximum number of characters have
been received, the system waits for the caller to enter additional touch
tones (subject to the timeout constraints of the action step).

•

Any touch tones that are entered while interrupt is off will not be received.
The caller should wait for the prompt to finish.

•

When the system processes a message that does not allow interrupt,
touch tones previously received are removed from memory. This process
is called flushing the buffer.

•

The system flushes the touch tone buffer when any of the following action
steps occur:
~ Get Host Screen

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 304

7

Defining the Transaction

Defining Quit

~ Read Table
~ Send Host Screen
~ Transfer Call

You can flush the buffer of touch tones without taking any other action. To
do this, play a null message (no content) that does not allow interrupt.

•

Defining Quit
When the script reaches a Quit action step, the transaction ends. The system
disconnects the telephone, if it has not already been disconnected by a
Disconnect action step.
To add the Quit action step:
1 With the cursor in the desired position in the Define Transaction screen
(Figure 60 on page 215), press F 1 (Add).

The system displays the Action Choices menu (Figure 62 on page 221).
2 Select

>Quit

The system inserts the Quit action step in the transaction.
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 305

7

Defining the Transaction

Defining Read Table

3 Press F6 (Cancel).

The Quit action step requires no definition.

Defining Read Table
Use the Read Table action step to retrieve information from a database table.
In the Define Read Table screen (example in Figure 86 on page 311) you
specify the name of the database table, whether you want the system to
search from the beginning, the field you want to match, and the value (or
expression) you want to match. If the system finds a match, it lets you know,
and makes the matching record available to the transaction.

Table Name
Specify the name of the database table from those available to the
application.

Search from Beginning
Specify if you want the system to search from the beginning of the table. The
first time a lookup is done in a specific database table in a transaction, the
system begins the search from the top of the database table. If a match is
found, the next lookup begins with the record that follows the previous match
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 306

7

Defining the Transaction

Defining Read Table

(if you specify no in the Search From Beginning field). If a match is not
found, the next lookup starts from the beginning.
By specifying no in the Search From Beginning field, you can search a
database for more than one match. This enables you to locate multiple
records that match a particular set of key values (search criteria). Just
continue to read the same table with the same set of key values until no more
records are matched (for example, $MATCH_FOUND is set to 0–see below).
A Read Table action step on the same table, but with a different set of values,
will interrupt a continuous search for multiple matching records.
Specify yes in the Search From Beginning field if you want to make sure a
search will start from the beginning of the database table. Otherwise, you
could miss a record that is above where the search starts.

Field Name
In each line, select the field name that you want to search for a match. You
can specify a search criteria (key value) for each field in a database table. If
you specify a key value for more than one field, a match will be found only if a
record in the database matches all the fields with key values specified. In
other words, the search criteria work together as a logical AND, not as a
logical OR.
The initial screen contains five sets of blank lines to specify fields and key
values. More are available on additional pages.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 307

7

Defining the Transaction

Defining Read Table

First / Second Operand and Operator
Use the Operand and Operator fields on each line to specify a value or
simple arithmetic expression for the system to use as a search criteria (key
value). Each operand can be a field or a constant. If you specify a value in the
2nd Operand field, you must also specify an operator in the Operator field.
The operator can be one of the four basic arithmetic functions: “+,” “-,” “*,” or
“/.” For an expression, the value is the result of the two operands and the
operator, as described in Defining Evaluate on page 245.

$MATCH_FOUND
If the system finds a record with all specified values in all specified fields, a
“match” has been found. If you refer to the database table field names in the
following transaction steps, the field values will be those of the matched
record.
Script Builder uses a system field of type num, called $MATCH_FOUND, to
indicate whether a match was found in the Read Table action step. The
system increments the $MATCH_FOUND variable for a successful Read
Table action step, regardless of how many matches are found (for example, if
a Read Table action step found five matches, $MATCH_FOUND would be
incremented to 1). If the next READ_TABLE is not a search from the
beginning and matches are found, the $MATCH_FOUND value is
incremented to 2. The value of $MATCH_FOUND is set to 1 if a match is

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 308

7

Defining the Transaction

Defining Read Table

found in a search that starts at the beginning of a database table. The value
of $MATCH_FOUND is set to 0 if no matches are found. If the database DIP
experiences difficulties and drops its connection with the database, the
system returns a value of -4 in $MATCH_FOUND.
! CAUTION:
You can nest a Read Table action step within another Read Table action step,
but this is not recommended. In this case, each search will start from the
beginning of the table. You must specify search criteria carefully to make sure
you get the result you want.

Example
As an example, suppose you want a caller to be able to call River Bank and
receive one of four interest rates: savings, checking, mortgage, and
automobile. You would design the transaction with an interest rate selection
menu in a Prompt & Collect action step, with the four interest categories
offered as choices. Assume the application includes a database table called
“river_db” with three fields: account_type, tt_code, and current_rate. In
Figure 86 on page 311, tt_code is specified for a match in the Field Name
field. The tt_code field contains a single digit, such as 1 through 4,
corresponding to the number used in the menu. Therefore, the number
entered by the caller in $CI_VALUE can be matched with the number in

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 309

7

Defining the Transaction

Defining Read Table

tt_code to find the record with the desired interest rate. Then you could use
an Announce action step to speak the value of account_type and
current_rate to the caller.

Defining the Read Table Action Step
To define the Read Table action step:
1 With the cursor in the desired position in the Define Transaction screen
(Figure 60 on page 215), press F 1 (Add).

The system displays the Action Choices menu.
2 Select

>Read Table

The system inserts the Read Table action step in the transaction.
3 Press F6 (Cancel) to exit the Action Choices menu.
4 Highlight the Read Table action step in the transaction.
5 Press F4 (Define).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 310

7

Defining the Transaction

Defining Read Table

The system displays the Define Read Table screen (example in Figure 86
on page 311). The example shown is for the sample River Bank
application (see Appendix A, Sample Application.
Figure 86.

Sample Define Read Table Screen

6 In the Table Name field, enter the name of the database table to be
examined, or press F2 (Choices) to select from a menu of database table

names in the application.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 311

7

Defining the Transaction

Defining Send Host Screen

7 In the Search From Beginning field, enter Y or press F2 (Choices) to

select yes from a menu if you want the Read Table action to start from the
first record each time. The default is no (see Search from Beginning on
page 306.)
8 For each line, enter or select your choice in the Field Name field.

If you need more than five lines, additional pages are available. Press
F8 (Chg-Keys), then F1 (Addpage). If more than one page is used, press
F3 (Prevpage) and F4 (Nextpage) to move among them.
9 For each line, enter or select your choice in the 1st Operand field.
10 For each line, if you select a 2nd Operand, you must also select an
Operator. The system will search in Field Name for the value of the

expression after the operation is performed.
11 Press F3 (Close) to complete the definition and return to the Define

Transaction screen (Figure 60 on page 215).

Defining Send Host Screen
Use the Send Host Screen action step to specify the name of the screen to
be sent, any fields to be sent, the value for each field, and the aid key to send
the screen.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 312

7

Defining the Transaction

Defining Send Host Screen

Typically, every Send Host Screen action step in the transaction should be
followed by a Get Host Screen. See Defining Get Host Screen on page 258.
You can select the fields that have been defined with a usage of TO_HOST
or BOTH for the specified host screen. See Defining Screen Fields in Chapter
4, Defining the Host Interface.
You can assign to a field the value of a field name, a constant, or a simple
expression (as described above in the Evaluate action step). You must
assign the value in the Send Host Screen action step in order for it to be sent
to the host computer.
In the example (Figure 87 on page 314), in the screen ordernum the system
assigns the value of ccnum to the field order_number, and the value is sent to
the host with the ENTERKEY.
To define the Send Host Screen action step:
1 With the cursor in the desired position in the Define Transaction screen
(Figure 60 on page 215), press F 1 (Add).

The system displays the Action Choices menu (Figure 62 on page 221).
2 Select

>Send Host Screen

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 313

7

Defining the Transaction

Defining Send Host Screen

The system inserts the Send Host Screen action step in the transaction.
3 Press F6 (Cancel) to exit the Action Choices menu.
4 Highlight the Send Host Screen action step in the transaction.
5 Press F4 (Define).

The system displays the Define Send Host Screen (example in Figure 87
on page 314).
Figure 87.

Sample Define Send Host Screen

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 314

7

Defining the Transaction

Defining Send Host Screen

6 In the Send Screen Name field, enter the name of the screen or press
F2 (Choices) to select from a menu.
7 In the Use Aid Key field, press F2 (Choices) to select from a menu of aid

keys.
Note:

You may want to send just an aid key to the host, without sending
any host screen or field. In this case, when you define the Send
Host Screen action step, fill in just the name of the aid key to be
sent, and nothing else in the screen.

8 For each line, enter or select your choice in the Field Name field.

If you need more than five lines, additional pages are available. Press
F8 (Chg-Keys), then F1 (Addpage). If more than one page is used, press
F3 (Prevpage) and F4 (Nextpage) to move among them.
9 For each line, enter or select your choice in the 1st Operand field.
10 For each line, if you select a 2nd Operand, you must also select an
Operator. The system will send to the Field Name the value of the

expression after the operation is performed.
11 Press F3 (Close) to complete the definition and return to the Define

Transaction screen.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 315

7

Defining the Transaction

Defining Set Field Value

Defining Set Field Value
Use the Set Field Value action step to assign a new value to one or more
fields.
You can assign to a field the value of a field name, a constant, or a simple
expression (as described above in the Evaluate action step). If you use mixed
field types, the Script Builder rules of conversion apply (see Data
Conversions on page 77 in Chapter 3, Data Management).
The system sets the field values one at a time, in the order listed. Therefore,
when a field assigned a value in one row is used later as an operand in
another row, the result of the first operation does affect the results of the
second.
To define the Set Field Value action step:
1 With the cursor in the desired position in the Define Transaction screen
(Figure 60 on page 215), press F 1 (Add).

The system displays the Action Choices menu (Figure 62 on page 221).
2 Select
>Set field Value

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 316

7

Defining the Transaction

Defining Set Field Value

The system inserts the Set Field Value action step in the transaction.
3 Press F6 (Cancel) to exit the Action Choices menu.
4 Highlight the Set Field Value action step in the transaction.
5 Press F2 (Define).

The system displays the Define Set Field Value screen (example in Figure
88 on page 317).
Figure 88.

Sample Define Set Field Value Screen

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 317

7

Defining the Transaction

Defining Transfer Call

6 For each line, enter or select your choice in the Field Name field.

If you need more than five lines, additional pages are available. Press
F8 (Chg-Keys), then F1 (Addpage). If more than one page is used, press
F3 (Prevpage) and F4 (Nextpage) to move among them.
7 For each line, enter or select your choice in the 1st Operand field.
8 For each line, if you select a 2nd Operand, you must also select an
Operator. The system will set the Field Name to the value of the

expression after the operation is performed.
9 Press F3 (Close) to complete the definition and return to the Define

Transaction screen.

Defining Transfer Call
Use the Transfer Call action step to transfer the caller to another telephone
number, referred to here as the third party. Typically this is a customer
service representative or attendant. Before using Transfer Call, you should
confirm that the transfer parameters are set to the appropriate PBX switch.
See Chapter 5, “Switch Interface Administration,” in Intuity CONVERSANT
System Version 7.0 Administration, 585-313-501, for analog switch
information.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 318

7

Defining the Transaction

Defining Transfer Call

Three types of transfers are available: blind, intelligent, and Full CCA [Full
CCA requires the optional Call Classification Analysis (CCA) package]. You
can use all three types within a single transaction. All three types of transfers
allow the system to transfer a call to a different extension, using the transfer
and/or three-way calling feature of the PBX.
! CAUTION:
You cannot use the Transfer Call action on a converse vector call.

Transfer Call To
The Transfer Call To field specifies the number to which a call is to be
transferred. In this field, you may enter an appropriate numeric constant (for
example, 6519) or the name of a field of type char that contains an
appropriate string (for example, the field Agent_3 containing 6519). The value
must be from 1 to 16 touch-tone characters. No other characters are
permitted in the value, but the field name may contain alphanumeric
characters (as usual).

Type
Use the Type field to specify whether the type of transfer is to be Blind,
Intelligent, or Full_CCA. Full_CCA is displayed as a choice for the Type
field only if the optional CCA feature has been installed. If you specify
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 319

7

Defining the Transaction

Defining Transfer Call

Intelligent or Full_CCA, you can make selections in the Non-Blind
Transfer Call Data portion of the screen (see Non-Blind Transfer Call Data

on page 324).
Blind Transfer

When you select Blind, the system completes the call as soon as the
extension is dialed without waiting to determine if the third party is busy or
answers. If the third party is busy or no one answers, the original caller
normally hears the busy or ringing tone provided by the PBX. It is not possible
to reconnect the caller in these cases.
Note:

You can define a blind transfer within a Prompt & Collect action
step.

For a blind transfer, the system sets the $TRANSFER_RESULT field to one
of the ASCII one-character values shown in Table 22 on page 321.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 320

7

Defining the Transaction

Table 22.

Blind Transfer Call Dispositions

$TRANSFER_RESULT

Meaning

“X”

Dialing successfully completed

“1”

•

Internal hardware/software error

•

Dialing error

•

Unexpected PBX response

“2”

Timeout

“3”

Illegal dial string

Note:

Intelligent Transfer

Defining Transfer Call

If the transaction terminates before the blind transfer is executed,
none of the above values are returned and the
$TRANSFER_RESULT field is blank.

When you select Intelligent, the system monitors the channel after dialing
is completed to determine if a Busy, Reorder (fast busy), or other failure is
encountered. Intelligent transfer informs you when the extension is answered
or if the extension is not answered after a specified number of rings. The
system monitors the channel using speech energy detection, answer
supervision, and call progress tone detection, depending on what services
are available on the assigned channel. The transaction determines how the

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 321

7

Defining the Transaction

Defining Transfer Call

call should be handled in each of these cases. Intelligent transfer takes a little
longer to classify the call as “complete” or “no answer.” You may want to play
a message to the third party to announce the incoming call so that the third
party is prepared to greet the caller (this is sometimes called a whisper
transfer).
Each of the intelligent transfer call dispositions shown in Table 23 on page
322 is available on a Tip/Ring circuit card, LST1 (with Full CCA or on
AYC21), and LSE1.
Table 23.

Intelligent Transfer Call Dispositions

$TRANSFER_RESULT

Meaning

“A”

Answer detected (voice energy detected) or
answer supervision (DTMF connection tone
from DEFINITY ECS)*

“B”

Busy

“F”

Fast busy

“I”

Intercept tone heard representing an invalid
extension (on DEFINITY® ECS or other Lucent
Technologies PBX)

“N”

Ring, no answer
1 of 2

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 322

7

Defining the Transaction
Table 23.

Defining Transfer Call
Intelligent Transfer Call Dispositions

$TRANSFER_RESULT

Meaning

“h”

Caller disconnected during transfer (DTMF
disconnection tone from DEFINITY ECS)8, †

“t”

Touch-tone entry detected

“-1”

•

Internal hardware/software error

•

Dialing error

•

Unexpected PBX response

“-2”

Timeout

“-3”

Illegal dial string
2 of 2

* DTMF feedback must be properly administered on the DEFINITY ECS and on
the Intuity CONVERSANT system to detect answer supervision or caller disconnect DTMF tones.
† When the $TRANSFER_RESULT is “h,” the caller has disconnected without
waiting for the transfer to complete. The transaction will automatically hang up
(disconnect).
Full CCA Transfer

When you select Full_CCA, more call dispositions are available to the system
than are provided by intelligent transfer. The system monitors the channel
using speech energy detection, answer supervision, and call progress tone

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 323

7

Defining the Transaction

Defining Transfer Call

detection, depending on what services are available on the assigned
channel. See Chapter 8, Using Optional Features, for additional information.

Non-Blind Transfer Call Data
The Non-Blind Transfer Call Data portion of the screen requires
information about what the Script Builder transaction is supposed to do next
based on the result of the transfer.
Maximum Number
of Rings

Use the Maximum Number of Rings field to specify how many rings the
system should wait before determining that the call is not answered.

Answer Phrase

Use the Answer Phrase field to specify the phrase to be spoken to the third
party before the system performs the action specified in the New Caller
State. The system speaks the specified phrase for a Case of Answer.

New Caller State

Use the New Caller State field to specify how to complete the transfer, for
each defined Case of Answer, Busy, No Answer, and Error. You may leave
the caller on hold, complete the transfer connection, or drop the third party
and reconnect the caller to the transaction. Valid choices for this field are
Hold, Complete, and Reconnect.
If the New Caller State field is left blank, the system will keep the caller on
hold, allowing the transaction to take other actions or play to the third party
more complex announcements than the Answer Phrase before completing

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 324

7

Defining the Transaction

Defining Transfer Call

the call (this is sometimes called a whisper transfer). In this case, it is
necessary to use the Reconnect or Complete External Functions. See
Chapter 11, Using Advanced Features, for information on External Functions.
Goto Labels

Use the Goto Labels field to continue to another Label within the
transaction. This is useful to announce a field to the third party. If this field is
left blank, the transaction progresses to the next action.

Defining the Transfer Call Action Step
To define the Transfer Call action step:
1 With the cursor in the desired position in the Define Transaction screen
(Figure 60 on page 215), press F 1 (Add).

The system displays the Action Choices menu (Figure 62 on page 221).
2 Select
>Transfer Call

The system displays the Add Transfer Call window (Figure 89 on page
326).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 325

7

Defining the Transaction
Figure 89.

Defining Transfer Call
Add Transfer Call Window

3 Enter a numeric constant (up to 16 touch-tone characters) or field name

(up to 24 alphanumeric characters) for an extension.
4 Press F6 (Cancel) to exit the Action Choices menu.
5 Highlight the Transfer Call action step in the transaction.
6 Press F4 (Define).

The system displays the Define Transfer Call screen (Figure 90 on page
327).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 326

7

Defining the Transaction
Figure 90.

Defining Transfer Call
Define Transfer Call Screen

7 In the Maximum Number of Rings field, enter your selection. The default

is 1.
8 In the Answer Phrase field, enter the Phrase Tag of the message to be

played to the third party. Use of this field is optional.
9 In the New Caller State field, specify an action for the system to take for
each defined Case.
10 In the Goto Labels field, specify a Label in the transaction for the system

to perform next. Use of this field is optional.
11 Press F3 (Close) to complete the definition and return to the Define

Transaction screen.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 327

7

Defining the Transaction

Defining Transfer Call

Transfer Call: Tips
You can use intelligent transfer to handle Error and Busy cases within a
transaction, but have the system complete the call as soon as it determines
that the telephone is not busy. This is done by specifying the Maximum
Number of Rings field as 1, and selecting the Complete State for both
Answer and No Answer. When this is done, the caller is connected to the third
party as soon as the first ring is heard or the third party answers. If any other
condition occurs, the caller can be reconnected so that a different action is
taken.
Be sure to consider the situation before selecting the value of 1 as the
Maximum Number of Rings. After the first ring, the system interprets the call
as a No Answer and continues accordingly.
Note:

When connected to a DEFINITY ECS, the optional feature
Sending DTMF Feedback Tones to VRU will provide faster and
more reliable connection and disconnection transfer results.

Transfer Call Performance Issues
Be aware of the following performance issues with the Transfer Call action:
•

Because Transfer Call utilizes the transfer capability of a PBX or central
office, you may be limited to transferring to telephone lines within the
capability of that PBX or central office.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 328

7

Defining the Transaction

Defining Transfer Call

•

For PBX or central offices that allow outside transfers, the network tones
that are received may vary and the system may not recognize them
correctly during an intelligent transfer. This could result in some network
tones being recognized as an answer. However, you can overcome this
problem by using the optional for Full CCA feature.

•

Transfer capabilities are not provided with voice channels that are
serviced by trunks, such as PRI, T1 (E&M), or E1 (CAS). Therefore, do
not use the Transfer Call action step for transferring on these types of
channels. A similar capability on these types of trunks is provided through
the Call Bridge action step. See Defining Call Bridge on page 334.

•

If secondary dial tone is expected during dialing and it is necessary that
the system waits for it before completing dialing, then one of the following
special procedures is necessary:
~ A switch transfer sequence can specify the wait for secondary dial tone

if all transfers on the machine use it. Accomplish this by adding a W or
P in the To Initiate Transfer field of the Analog Interfaces screen.
See Chapter 5, “Switch Interface Administration,” in Intuity
CONVERSANT System Version 7.0 Administration, 585-313-501, for
more information.
~ Write an external function using TAS script instructions to do the

complete dialing sequence, including the wait for secondary dial tone.
See Intuity CONVERSANT System Version 7.0 Application

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 329

7

Defining the Transaction

Defining Background

Development with Advanced Methods, 585-313-203, for more
information on TAS script language instructions (including the tic
instruction).

Defining Background
Use the Background action step to connect a caller to background music or
speech that has been prerecorded and loaded on the system. The system
can play any recorded phrase in the background. Each unique background
phrase will be played on only one time division multiplexor (TDM) time slot at
a time. Therefore, all connected callers will be listening to the same part of
the phrase being played. As new callers are added and assigned to channels,
they hear the phrase from where it is currently, rather than from the
beginning. The system restarts the phrase when it has been played to the
end. As long as background is enabled, the script continues to play the
phrase as long as any caller (channel) is listening to it.
The limit on the number of channels that can simultaneously use the
background feature is determined by your system capacity. Each system has
256 time slots, and a maximum number of channels, such as 72. Each active
channel uses two time slots (talk and listen). For a 72 channel system using
barge-in, the limit of background channels would be 256 - (2 X 72)/2 = 56.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 330

7

Defining the Transaction

Defining Background

The number of different phrases that can be played in the background is
limited by the total number of phrases that can be played simultaneously.
This is estimated at 48. Speech breaks may occur if more than 48 phrases
are played simultaneously or there are not at least 2.5 speech buffers per
phrase.
If your application allows other speech to be played on a channel at the same
time that background is played, you should downgrade the number of
channels. If your application does not allow other speech to be played on a
channel at the same time as background, then a 48 channel system will not
exceed the limit of background phrases.
Note:

A time division multiplexor (TDM) bus and a speech and signal
processor (SSP) or signal processor (SP) circuit card must be
installed in the system for the background action to function
properly on Tip/Ring channels.

The setting of a channel to tdm or talk in the Change Options of Voice
Equipment screen makes a difference in how the system plays the
background speech. If the channel is set to tdm, background speech
continues to play at a lower volume while normal (foreground) speech is
played. If the channel is set to talk, background speech is interrupted while
foreground speech is played.
To define the Background action step:
1 With the cursor in the desired position in the Define Transaction screen
(Figure 60 on page 215), press F 1 (Add).
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 331

7

Defining the Transaction

Defining Background

The system displays the Action Choices menu (Figure 62 on page 221).
2 Select

>Background

The system inserts the External Action: Background action step in the
transaction.
3 Press F6 (Cancel) to exit the Action Choices menu.
4 Highlight the External Action: Background action step in the

transaction.
5 Press F4 (Define).

The system displays the Define Background window (Figure 91 on page
333).
Note:

You need to prerecord the phrase before enabling the Background
action step. This is true whether the phrase will be accessed by a
phrase number or a phrase tag name.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 332

7

Defining the Transaction
Figure 91.

Defining Background
Define Background Window

6 In the Background On or Off field, select On (default) to enable

Background, or Off to disable it.
7 In the Phrase Number or Tag field, select either Phrase Number or Tag

to identify music or speech by a phrase number or phrase tag.
8 In the Phrase Identification field, select a phrase number or phrase
tag (depending on your choice in the Phrase Number or Tag field)

defining the background music or speech to be played. If you selected
Phrase Number in the previous field, the Phrase Identification entry
must be the name of a field containing a phrase number or a numeric
constant from 1 to 65535. If you selected Tag in the previous field, the
Phrase Identification entry must be one of the tag names available in
the F2 (Choices) menu or a phrase tag containing an alphanumeric
constant. A phrase tag is limited to a maximum of 50 characters.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 333

7

Defining the Transaction

Defining Call Bridge

9 In the Return Field, specify the field in which an optional return code will

be placed. If the background instruction is successful, the system returns
a positive value. If the instruction is unsuccessful, the system returns a
negative value.
10 Press F3 (Close) to complete the definition and return to the Define

Transaction screen.

Defining Call Bridge
Use the Call Bridge action step to place an outbound call to a third party and
maintain the connection while the caller interacts with the third party on the
called channel (Figure 92 on page 335). When the third party hangs up, the
transaction continues with the next action step. The Call Bridge action step
can connect a caller with a third party when the Transfer Call action step
cannot be used with the PBX or central office.
Note:

A second channel is required to place the outgoing call.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 334

7

Defining the Transaction
Figure 92.

Defining Call Bridge
Define Call Bridge Window

The bridge is typically established in the following sequence:
1 The original caller calls the Script Builder application, assigned to channel

A.
2 The application answers the telephone, interacts with the original caller,

and eventually decides to do a Call Bridge to a third party.
3 The system next does the following Steps a through c under the direction

of the Call Bridge action.
a The system selects an available outbound channel B from the

specified equipment group.
b The system originates a call on the outbound channel to the specified

number and waits for an answer from the third party if it is doing an
intelligent or Full CCA type of outdial.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 335

7

Defining the Transaction

Defining Call Bridge

c For intelligent and Full CCA types of outdials, if the call is answered,

the system bridges channel A and channel B together through the TDM
bus. However, if the call is not answered (for example, busy), the Call
Bridge action returns to the application with a failure indication.
For a blind type of outdial, the system bridges the channels together as
soon as dialing is complete.
4 Once the bridge is established, the original caller and the third party can

speak to one another. Since a blind type of outdial bridges the channels
before the third party answers, the original caller may hear some of the
call progress tones (for example, busy, ringing, etc) resulting from the
outdial on channel B.
5 During this time when the channels are bridged, the application is

suspended indefinitely until either the original caller or the third party
hangs up. If the third party hangs up, the bridge is taken down and the
application returns from the Call Bridge action step with a successful
indication and proceeds with the next action. If the original caller hangs
up, the bridge is taken down and the application terminates unless it
catches the hangup event.
Note:

Script Builder does not directly support catching the hangup
event, but you can write an external function to do this. See
Chapter 11, Using Advanced Features, for more information on
writing external functions. See Intuity CONVERSANT System

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 336

7

Defining the Transaction

Defining Call Bridge

Version 7.0 Application Development with Advanced Methods,
585-313-203, for additional information on the TAS event
instruction.
Note:

The System Monitor screen will display the current application
running on the inbound channel, and the agent application
(included with the system) running on the outbound channel.

The discussion above illustrates a few important points about using Call
Bridge:
•

Two channels are required: one for the original caller and one for the third
party.

•

The TDM bus must be physically connected between the circuit cards of
the channels.

•

The transaction is suspended indefinitely during the Call Bridge action
step until one end hangs up. Then the bridge is taken down and the
transaction continues with the next action step following the Call Bridge.

Note:

If Call Bridge was disabled during the initial software installation,
the Call Bridge action step is still listed in the Action Choices
menu but is not operational.

If Call Bridge was disabled, you can enable Call Bridge without reloading the
software by typing xferdip_on at the UnixWare system prompt. Call Bridge
may later be disabled by typing xferdip_off at the UnixWare system prompt.
Note that you must be logged in as root or have super-user permissions to
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 337

7

Defining the Transaction

Defining Call Bridge

perform either of these commands. See Appendix A, “Summary of
Commands,” in Intuity CONVERSANT System Version 7.0 Administration,
585-313-501, for more information about the xferdip_on and xferdip_off
commands.

Phone Number
The Phone Number field is the telephone number of the outbound call. You
can enter a numeric value (maximum of 16 touch-tone digits) or a field name
(maximum of 24 alphanumeric characters). Valid entries for this field are an
appropriate numeric constant (for example, 12345) or a field that contains an
appropriate numeric constant.

Equipment Group Number
The Equipment Group Number field identifies the group from which the
system will select an available (idle) outgoing channel. The selection in this
field enables some channels and restricts others. The default selection is 02.
See Chapter 3, “Voice System Administration,” in Intuity CONVERSANT
System Version 7.0 Administration, 585-313-501, for information on
assigning channels to equipment groups.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 338

7

Defining the Transaction

Defining Call Bridge

Outcome of Call (Call Disposition)
The Outcome of Call field contains the name of the field in which the system
stores the result of the outdial. The default is $TRANSFER_RESULT. See
Table 24 on page 340 and Table 25 on page 341 for additional information.

Type
The Type field sets the type of call. The default type is Blind. The standard
choices are Blind or Intelligent. If the optional CCA Feature has been
installed, Full_CCA appears as a choice for the Type field.
Blind Call Bridge

When Blind is selected, the bridge is established as soon as the third party’s
number is dialed, without waiting to determine if the third party is busy or
answers. If the third party is busy or no one answers, the original caller
normally hears the busy or ringing tone provided by the PBX.
For a blind bridge, the Outcome of Call field is set to one of the ASCII onecharacter values in Table 24 on page 340 depending on the results of the
bridge.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 339

7

Defining the Transaction

Table 24.

Defining Call Bridge

Blind Call Bridge Dispositions

Code*

Meaning

“X”

Dialing successfully completed

“1”

•

Internal hardware or software error

•

Dialing error

•

Unexpected PBX response

“2”

Timeout

“3”

Illegal dial string

* These codes are available for Tip/Ring, T1(E&M), E1(CAS), LSE1/LST1, and
PRI.
Intelligent Call
Bridge

When Intelligent is selected, the caller is not bridged until the system
recognizes that the third party has answered. The system monitors the
channel after dialing is completed to determine if a Busy, Reorder (fast busy),
or other failure is encountered. It also recognizes when the third party
answers or if the third party does not answer after a specified number of
rings. The system monitors the channel using speech energy detection,
answer supervision, and call progress tone detection, depending on what
services are available on the assigned channel.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 340

7

Defining the Transaction

Defining Call Bridge

For an intelligent bridge, the Outcome of Call field is set to one of the ASCII
one-character values in Table 25 on page 341 depending on the results of the
bridge.
Table 25.

Intelligent Call Bridge Dispositions

Meaning

Available (Y) On
Code

Tip/
Ring

Answer detected (for example, voice
energy detected)

“A”

Y

Answer supervision from switch

“A”

—*

Busy†

“B”

Fast busy†

T1 (E&M) or
E1 (CAS)

LSE1/LST1
(on AYC21)

PRI

Y

Y

—*

Y

Y

Y

—‡

“F”

Y

Y

—‡

Intercept tone heard representing an
invalid extension (on DEFINITY ECS
or other Lucent Technologies PBX)

“I”

Y

—§

Ring, no answer

“N”

Y

Y

Touch-tone entry detected

“t”

Y

ISDN vacant code

“v”

Y

Y

Y

Y
Y
1 of 2

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 341

7

Defining the Transaction

Table 25.

Defining Call Bridge

Intelligent Call Bridge Dispositions

Meaning

Available (Y) On
Code

Tip/
Ring

T1 (E&M) or
E1 (CAS)

LSE1/LST1
(on AYC21)

PRI

Provisioning or protocol error

“1”

Y

Internal hardware or software error,
dialing error, or unexpected PBX
response

“1”

Y

Y

Y

Y

Timeout

“2”

Y

—¶

Y

—¶

Illegal dial string

“3”

Y

Y

Y

Y
2 of 2

* This disposition is not always provided by the switch, the only source of PRI information. If this condition occurs and the switch does not provide the disposition of the call, a timeout value of 2 is returned
(unless Full CCA is used to allow detection of the busy or fast busy tone).
† For PRI channels, the system converts information from the switch into Busy, Fast Busy, or Dialtone
call dispositions. An audible tone may not be present.
‡ This disposition is not always provided by the switch, the only source of PRI information. If this condition occurs and the switch does not provide the disposition of the call, a timeout value of 2 is returned
(unless Full CCA is used to allow detection of the busy or fast busy tone).
§ The intercept tone can be detected using Intelligent CCA on an AYC21 with LSE1 or LST1.
¶ Typically, timeout for T1 (E&M) and PRI channels indicates that the call was either Busy, Fast Busy,
or Ring No Answer.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 342

7

Defining the Transaction

Full CCA Call
Bridge

Defining Call Bridge

When Full_CCA is selected, more call dispositions are available than are
provided by an intelligent Call Bridge. The system monitors the channel using
speech energy detection, answer supervision, and call progress tone
detection, depending on what services are available on the assigned
channel. See Chapter 8, Using Optional Features, for the call dispositions
available when using Full CCA.

Maximum Number of Rings
For intelligent and Full CCA outdials, the Maximum Number of Rings field is
used to determine how long to wait for an answer. After dialing the number,
Call Bridge waits for an answer until one of the following occurs:
•

Call Bridge detects a busy or fast busy or some other call disposition (in
which case Call Bridge returns with an outcome of the call).

•

The number of audible ring tones detected has exceeded the specified
Maximum Number of Rings (in which case Call Bridge returns an “N” for
Ring No Answer).
Ring tone detection is available only for the following:
~ Tip/Ring (using intelligent or Full CCA)
~ LSE1 or LST1 on AYC21 (using intelligent or Full CCA)
~ T1 (E&M) (only with Full CCA)
~ T1-PRI (only with Full CCA)

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 343

7

Defining the Transaction
•

Defining Call Bridge

The amount of time to wait for an answer is exceeded (in which case Call
Bridge returns a “2” for timeout). The amount of time to wait is based on
the specified Maximum Number of Rings.

Note:

Note that for intelligent outdials on PRI, T1 (E&M), or E1 (CAS)
channels, the Maximum Number of Rings determines the amount
of time the system waits for answer supervision. This is because
intelligent CCA on PRI, T1 (E&M), or E1 (CAS) does not rely on
counting the number of audible ring tones to determine whether
the call was answered, as in the case of Tip/Ring or LSE1/LST1.
Instead it relies on the switch to detect the answer and then to
send the answer supervision message. See Table 26 on page 345
for additional information.

Call Bridge waits at least 45 seconds and then approximately 6 seconds
more for each additional ring after the sixth ring.
For example, specifying 8 rings makes Call Bridge wait for at least 57
seconds for an answer, that is, 45 + 12 seconds (6 seconds for each
additional ring).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 344

7

Defining the Transaction

Table 26.

Defining Call Bridge

Maximum Number of Rings Field

Call Bridge
Type

Circuit Card Type

”Maximum Number of Rings”
Meaning

Blind

Tip/Ring or LST1

N/A

Blind

T1 (E&M), E1(CAS), or PRI

N/A

Intelligent

LSE1/LST1 on AYC21, or Tip/Ring

Specifies the number of rings the
system waits for answer detect

Intelligent

T1 (E&M), E1(CAS), or PRI

Specifies the amount of time the
system waits for answer
supervision

Full CCA

Tip/Ring, LSE1, or LST1

Specifies the number of rings the
system waits for answer
supervision

Full CCA

T1 (E&M) or PRI

Specifies the amount of time the
system waits for answer
supervision

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 345

7

Defining the Transaction

Defining Call Bridge

Return Value
The Return Value field is an optional field limited to a maximum of 24
characters. This field contains the result of the Call Bridge. Valid return code
values are:
•

0: Successful completion of bridge (bridge was established and later
dropped because third party has hung up)

•

-1: Outbound channel not available (for example, no idle channels are
available in the specified equipment group, no channels are assigned to
the specified equipment group, or outbound channels are not in service)

•

-2: Third party could not be reached (see the Outcome of Call field for
further explanation)

Defining the Call Bridge Action Step
To define the Call Bridge action step:
1 With the cursor in the desired position in the Define Transaction screen
(Figure 60 on page 215), press F 1 (Add).

The system displays the Action Choices menu (Figure 62 on page 221).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 346

7

Defining the Transaction

Defining Call Bridge

2 Select

>Call_Bridge

The system inserts the External Action: Call_Bridge action step in the
transaction.
3 Press F6 (Cancel) to exit the Action Choices menu.
4 Highlight the External Action: Call_Bridge action step in the transaction.
5 Press F4 (Define).

The system displays the Define Call Bridge window (example in Figure 93
on page 347).
Figure 93.

Sample Define Call_Bridge Window

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 347

7

Defining the Transaction

Defining Call Bridge

6 In the Phone Number field, enter a numeric constant (up to 16 touch-tone

characters) or field name (up to 24 alphanumeric characters) for an
extension.
7 In the Equipment Group Number field, enter or select your choice. Default

is 02.
8 In the Outcome of Call field, enter your choice of a field name. Default is

$TRANSFER_RESULT.
9 In the Type field, enter or select your choice. Default is Blind.
10 In the Maximum Number of Rings field, enter your choice.
11 In the Return Value field, enter your choice of a field name. Use of this

field is optional.
12 Press F3 (Close) to complete the definition and return to the Define

Transaction screen.

Call Bridge: Tips
If the two parties cannot hear each other after the bridged connection is
established, lack of a TDM bus connection could be the problem. For each
channel, make sure that it is included in its specified Equipment Group
Number and that the circuit card is physically connected to the TDM bus. If
either channel is not connected to the bus, the bridge will not function
properly. See Chapter 3, “Voice System Administration,” in Intuity
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 348

7

Defining the Transaction

Defining Call Bridge

CONVERSANT System Version 7.0 Administration, 585-313-501, for
information about determining whether a circuit card is connected to a TDM
bus.
If callers hear a hum or buzzing after the bridged connection is established,
change the impedance setting (if available) for the channel on the Tip/Ring
circuit card. See “Installing or Replacing Circuit Cards” chapter in the
maintenance book for your platform for information on circuit card settings.

Call Bridge Performance Considerations
Be aware of the following performance issues with Call Bridge:
•

For calls outside the PBX or central office on Tip/Ring channels, or on
LSE1/LST1 channels on an AYC21, the network tones that are received
may vary and may not always be recognized correctly by the intelligent
Call Bridge feature. This could result in some network tones being
recognized as an answer. However, this problem may be overcome by
using the optional Full CCA feature (available only for United States and
Canada).

•

T1 (E&M) or E1 (CAS) channels rely on answer supervision to determine
the outcome of the outdial. Network call progress tones (such as busy,
ring no answer) are not detected. Therefore, the only normal outcomes
are answer or timeout. If your application requires the ability to detect

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 349

7

Defining the Transaction

Defining Call Bridge

progress tones on a T1 (E&M) channel, the optional Full CCA feature can
provide this capability (for US and Canada). Note that Full CCA is not
available for E1 (CAS).
•

PRI channels rely on answer supervision to determine the outcome of the
outdial. Usually, the outcome is only answer or timeout. However,
sometimes call dispositions are obtained via ISDN messages from the
switch. If your application requires the ability to detect progress tones on a
T1-PRI channel, the optional Full CCA feature can provide this capability
(for US and Canada). See Using PRI on page 538 in Chapter 8, Using
Optional Features, for more information on using PRI.

•

Touch tones are not passed through the system when Tip/Ring circuit
cards are used in a bridged arrangement. If an application requires
passing tones from one party through the system to another party, then
PRI, T1 (E&M), or E1 (CAS) channels must be used and the DTMF
Muting option must be turned off. See Chapter 5, “Switch Interface
Administration,” in Intuity CONVERSANT System Version 7.0
Administration, 585-313-501, for information on making adjustments
through the Digital Interfaces screen.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 350

7

Defining the Transaction

Defining Execute

Defining Execute
Use the Execute action step to terminate the current application on the
channel without hanging up the call and then start another application on the
same channel. You can execute one application from another an unlimited
number of times per call on a channel. However, there is a limit 552
characters for the arguments used on a channel. Up to 10 arguments can be
passed to the next application with each Execute action step. If desired, a call
data record can be generated for the terminated application. If the executed
application is written using Script Builder, it can use the getarg external
function to access arguments passed via the Execute action step. See
Chapter 11, Using Advanced Features, for information on the getarg external
function.

Application Name
The Application Name field is a required field that identifies the application
to be executed. The Application Name is specified either by a string
constant of up to 12 characters that is enclosed in double quotes (for
example, “chantst”) or by a field name of up to 24 characters that contains the
application name.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 351

7

Defining the Transaction

Defining Execute

Write Call Data Record Now?
The Write Call Data Record Now? field is a required field that indicates
whether to generate a call data record for the current application before
executing the next application.
If you specify yes in the Write Call Data Record Now? field, the system
will create a call data record (including current application name, channel,
start time, duration of call, and any application-specific call data events) for
the current application in the Call Data Database when the Execute action is
invoked at run-time. The call data information for the next application will be
reset as if a new call arrived. Consequently, the application name is set to the
next application, the start time of the call is set to the current time, the
duration of the call is reset back to zero (0), the channel number is set to the
current channel number (no change), and the call data event list is reset to all
zeros (0).
If you specify no in the Write Call Data Record Now? field, the system will
not create a call data record and the start time, duration, and channel of the
current application will be saved for the next application. By not creating a call
data record, the duration can accumulate across applications until the next
time a call data record is created for the specified channel. The call data
events will not be automatically inherited by the next application. However, up
to 10 call data events can be passed to the next application as arguments in
the Execute action.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 352

7

Defining the Transaction

Defining Execute

Argument 1 to Argument 10
The Argument 1 to Argument 10 fields allow you to specify sequentially up
to ten arguments to pass to the next application. Specify an argument either
by a field name of up to 24 characters that holds a string number, a string
constant of up to 50 characters and enclosed in double quotes, or a numeric
constant that is a sequence of digits (0–9) and may be preceded by a minus
sign.
Note that the system converts each argument to char type according to the
rules in Data Conversions on page 77 in Chapter 3, Data Management.
Therefore, the next application should expect the arguments in character
format.
Specify the arguments sequentially, starting with Argument 1. An empty or
unspecified argument that precedes a nonempty argument is passed as a
null string (zero-length). An empty argument following the last nonempty
argument is not passed. There is a limit of 552 characters for arguments. See
the discussion on argument space allocation in Execute: Tips on page 356.

Return Field
The Return Field is an optional field that specifies the field name used to
store the return value of the Execute action. The field name used in the
Return Field is limited to a maximum of 24 alphanumeric characters. The
contents of the field must be of the numeric type. If the Execute action is
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 353

7

Defining the Transaction

Defining Execute

successful, the system does not return to the current application and the
content of the specified Return Field is unchanged. If the Execute action is
unsuccessful, one of the following values is returned in the specified Return
Field of the current application:
•

-1: No application is installed with the given name.

•

-2: There is not enough space to fit all arguments. The 552-character limit
has been exceeded.

Defining the Execute Action Step
To define the Execute action step:
1 With the cursor in the desired position in the Define Transaction screen
(Figure 60 on page 215), press F 1 (Add).

The system displays the Action Choices menu (Figure 62 on page 221).
2 Select

>Execute

The system inserts the External Action: Execute action step in the
transaction.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 354

7

Defining the Transaction

Defining Execute

3 Press F6 (Cancel) to exit the Action Choices menu.
4 Highlight the External Action: Execute action step in the transaction.
5 Press F4 (Define).

The system displays the Define Execute screen (Figure 94 on page 355).
Figure 94.

Define Execute Screen

6 In the Application Name field, enter or select an application name or a

field containing the name.
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 355

7

Defining the Transaction

Defining Execute

7 In the Write Call Data Record Now? field, enter or select yes or no,

depending or your requirements.
8 In the Argument 1 through Argument 10 fields, enter or select the

arguments you have decided to pass sequentially to the next application
on this channel.
9 In the Return Field, enter or select the name of the field to contain the

result of the Execute action step. Use of this field is optional.
10 Press F3 (Close) to complete the definition and return to the Define

Transaction screen.

Execute: Tips
There is a limit of 552 characters for the arguments of all Execute action
steps on a channel. Regardless of how many arguments are passed or how
many Execute action steps are specified in an application, this limit cannot be
exceeded.
With 552 characters, an application can pass 10 arguments each containing
50 characters. Use the following formula to compute the total space required
to pass the application’s arguments:
total_arg_space = summation of the maximum lengths of each argument
overhead = (No_Args * 4) + 2 + No_Args

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 356

7

Defining the Transaction

Defining Make Call

total (in characters) = total_arg_space + overhead
(where No_Args is the number of arguments passed)
The total space required to store the arguments is equal to the sum of the
maximum lengths of the arguments plus the overhead space.

Defining Make Call
The Make Call action step, or call origination, allows a transaction to place an
outbound call to a user-defined telephone number (Figure 95 on page 357).
Typically, applications using Make Call are initiated on a channel using the
soft seizure (soft_szr) command or by an application-specific DIP that does
a soft seizure. See Appendix A, “Summary of Commands,” in Intuity
CONVERSANT System Version 7.0 Administration, 585-313-501, for
information on the soft_szr command.
Figure 95.

Define Make Call Window

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 357

7

Defining the Transaction

Defining Make Call

Phone Number
The Phone Number field is the telephone number of the outbound call. You
can enter a numeric value (maximum of 16 touch-tone digits) or a field name
(maximum of 24 alphanumeric characters). Valid entries for this field are an
appropriate numeric constant (for example, 2345678) or a field that contains
an appropriate numeric constant.

Outcome of Call (Call Disposition)
The Outcome of Call field contains the name of the field in which the
system stores the result of the outdial. The default is $TRANSFER_RESULT.
See Table on page 359 and Table 28 on page 361 for additional information.

Type
The Type field sets the type of call. The default type is Blind. The standard
choices are Blind or Intelligent. If the optional CCA Feature has been
installed, Full_CCA appears as a choice for the Type field.
Blind Make Call

When Blind is selected, the transaction dials the telephone number specified
and continues with the next action step without waiting to determine the
disposition of the call.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 358

7

Defining the Transaction

Defining Make Call

For a blind Make Call, the Outcome of Call field is set to one of the ASCII
one-character values in Table on page 359 depending on the results of the
Make Call action step.
Table 27.

Blind Make Call Dispositions

Code*

Meaning

“X”

Dialing successfully completed

“1”

•

Internal hardware or software error

•

Dialing error

•

Unexpected PBX response

“2”

Timeout

“3”

Illegal dial string

* These codes are available for Tip/Ring, T1(E&M), E1(CAS), LSE1/LST1, and
PRI.
Intelligent Make Call When Intelligent is selected, the transaction dials the telephone number

specified and connects to the called party only when answer detection is
detected for Tip/Ring or LST1 or when answer supervision is detected for
PRI, T1 (E&M), or E1 (CAS) channels. The system monitors the channel
using speech energy detection, answer supervision, and call progress tone
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 359

7

Defining the Transaction

Defining Make Call

detection, depending on what services are available on the assigned
channel. If the called number does not answer (that is, the outcome is no
answer, busy, or if an error occurs) the transaction drops the call. In all the
above cases, the transaction continues on to the next action step.
For an intelligent Make Call, the Outcome of Call field is set to one of the
ASCII one-character values in Table 28 on page 361 depending on the r
results of the Make Call action step.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 360

7

Defining the Transaction

Table 28.

Defining Make Call

Intelligent Make Call Dispositions

Meaning

Available (Y) On
Code

Tip/
Ring

Answer detected (for example,
voice energy detected)

“A”

Y

Answer supervision from switch

“A”

—*

†

Busy

“B”

Fast busy†

T1 (E&M) or
E1 (CAS)

LSE1/LST1
(on AYC21)

PRI

Y

Y

—*

Y

Y

Y

—‡

“F”

Y

Y

—‡

Intercept tone heard representing
an invalid extension (on DEFINITY
ECS or other Lucent Technologies
PBX)

“I”

Y

—§

Ring, no answer

“N”

Y

Y

Touch-tone entry detected

“t”

Y

ISDN vacant code

“v”

Provisioning or protocol error

“1”

Y

Y

Y

Y
Y
Y
1 of 2

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 361

7

Defining the Transaction

Table 28.

Defining Make Call

Intelligent Make Call Dispositions

Meaning

Available (Y) On
Code

Tip/
Ring

T1 (E&M) or
E1 (CAS)

LSE1/LST1
(on AYC21)

PRI

Internal hardware or software error,
dialing error, or unexpected PBX
response

“1”

Y

Y

Y

Y

Timeout

“2”

Y

—

Y

—

Illegal dial string

“3”

Y

Y¶

Y¶

Y
2 of 2

* When connected to a DEFINITY ECS, the optional feature Sending DTMF Feedback Tones to the
Intuity CONVERSANT system provides a simple form of answer supervision for calls on Tip/Ring,
LSE1, and LST1 channels.
† For PRI channels, the system converts information from the switch into Busy, Fast Busy, or Dialtone
call dispositions. An audible tone may not be present.
‡ This disposition is not always provided by the switch, the only source of PRI information. If this condition occurs and the switch does not provide the disposition of the call, a timeout value of 2 is returned (unless Full CCA is used to allow detection of the busy or fast busy tone).
§ The intercept tone can be detected using Intelligent CCA on an AYC21 with LSE1 or LST1.
¶ Typically, timeout for T1 (E&M) and PRI channels indicates that the call was either Busy, Fast Busy,
or Ring No Answer.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 362

7

Defining the Transaction

Full CCA Make Call

Defining Make Call

When Full_CCA is selected, more call dispositions are available than are
provided by an intelligent Make Call. The system monitors the channel using
speech energy detection, answer supervision, and call progress tone
detection, depending on what services are available on the assigned
channel. See Chapter 8, Using Optional Features, for the call dispositions
available when using Full CCA.

Maximum Number of Rings
For intelligent and Full CCA outdials, the Maximum Number of Rings field
determines how long the system will wait for an answer. Note that this field
applies only to intelligent outdials on LSE1/LST1 on AYC21, and Tip/Ring
channels; and Full_CCA outdials on Tip/Ring, T1 (E&M), LST1, and PRI
channels. For outdials on PRI, T1 (E&M), and E1 (CAS) channels, the value
in this field determines the amount of time the system will wait for answer
supervision. The system sets the timeout value based on the number of rings
specified in this field. See Table 29 on page 364 for additional information.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 363

7

Defining the Transaction

Defining Make Call

Table 29. Maximum Number of Rings Field

Make Call Type

Circuit Card Type

”Maximum Number of Rings”
Meaning

Blind

Tip/Ring or LST1

N/A

Blind

T1 (E&M), E1 (CAS), or PRI

N/A

Intelligent

LSE1/LST1 on AYC21 or
Tip/Ring

Specifies the number of rings the
system waits for answer detect

Intelligent

T1 (E&M), E1 (CAS), or PRI

Specifies the amount of time the
system waits for answer supervision

Full CCA

Tip/Ring, LSE1, or LST1

Specifies the number of rings the
system waits for answer supervision

Full CCA

T1 (E&M) or PRI

Specifies the amount of time the
system waits for answer supervision

Defining the Make Call Action Step
To define the Make Call action step:
1 With the cursor in the desired position in the Define Transaction screen
(Figure 60 on page 215), press F 1 (Add).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 364

7

Defining the Transaction

Defining Make Call

The system displays the Action Choices menu (Figure 62 on page 221).
2 Select

>Make_Call

The system inserts the External Action: Make _Call action step in the
transaction.
3 Press F6 (Cancel) to exit the Action Choices menu.
4 Highlight the External Action: Make_Call action step in the transaction.
5 Press F4 (Define).

The system displays the Define Make Call window (example in Figure 96
on page 365).
Figure 96.

Sample Define Make Call Window

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 365

7

Defining the Transaction

Defining Make Call

6 In the Phone Number field, enter a numeric constant (up to 16 touch-tone

characters) or field name (up to 24 alphanumeric characters) for a
telephone number.
7 In the Outcome of Call field, enter your choice of a field name. Default is

$TRANSFER_RESULT.
8 In the Type field, enter or select your choice. Default is Blind.
9 In the Maximum Number of Rings field, enter your choice.
10 In the Return Value field, enter your choice of a field name. Use of this

field is optional.
11 Press F3 (Close) to complete the definition and return to the Define

Transaction screen.

Make Call Performance Considerations
Be aware of the following performance issues with Make Call:
•

For calls outside the PBX or central office on Tip/Ring channels, or on
LSE1/LST1 channels on an AYC21, the network tones that are received
may vary and may not be recognized correctly by the intelligent Make Call
feature. This could result in some network tones being recognized as an
answer. However, this problem may be overcome by using the optional
Full CCA feature (available only for United States and Canada).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 366

7

Defining the Transaction

Defining Message Coding

•

T1 (E&M) or E1 (CAS) channels rely on answer supervision to determine
the outcome of the intelligent Make Call. Network call progress tones
(such as busy, ring no answer) are not detected. Therefore, the only
normal outcomes are answer or timeout. If your application requires the
ability to detect progress tones on a T1 (E&M) channel, the optional Full
CCA feature can provide this capability (for United States and Canada).
Note that Full CCA is not available for E1 (CAS).

•

PRI channels rely on answer supervision to determine the outcome of the
intelligent Make Call. Network tones are not detected. Typically, the only
outcomes are answer or timeout. However, certain call dispositions are
sometimes obtained via ISDN messages from the switch. If your
application requires the ability to detect progress tones on a T1-PRI
channel, the optional Full CCA feature can provide this capability (for
United States and Canada). See Using PRI on page 538 in Chapter 8,
Using Optional Features, for more information on using PRI.

Defining Message Coding
Use the Message Coding action step to record the caller’s speech and store
the message in the system (Figure 97 on page 380). The system stores the
message (of a specified maximum duration) in a specified phrase and talkfile
number.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 367

7

Defining the Transaction

Defining Message Coding

Normally, message coding stops when one of the following occurs:
1 Caller presses a touch tone when speaking
2 Caller stops speaking
3 Caller reaches the maximum specified seconds

Code Rate and Type
The Code Rate and Type field defines the code rate and format type to code
the message feature. Coding types are: ADPCM for Adaptive Delta Pulse
Code Modulation, CELP for Code Excited Linear Prediction, and SBC for Sub
Band Coding. Coding rates are 16, 24 or 32 Kbps. Valid entries for this field
are ADPCM16, ADPCM32, CELP16, SBC16, or SBC24. The default value in
the Code Rate and Type field is ADPCM32.
Higher coding rates generally provide better quality recording but use more
disk space to store the message. CELP16 offers excellent quality while using
a minimum of disk space. However, CELP uses about four times as much of
the SSP processing resource for coding than ADPCM does, and about twice
as much for playback. Table 30 on page 369 provides performance
information for the respective Message Coding choices.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 368

7

Defining the Transaction

Table 30.

Defining Message Coding

Message Coding Performance

Type of
Coding

Rate
(Kbps)

Quality

Disk Space Requirements
(per one second of sound)

ADPCM

32

Excellent

4 Kbytes

CELP

16

Excellent

2 Kbytes

SBC

24

Very good

3 Kbytes

SBC

16

Good

2 Kbytes

ADPCM

16

Fair

2 Kbytes

Table 31 on page 370 provides information on the playback and coding
channel capacity per SSP and SP circuit card for the various code types.
Note that if an IVP circuit card is used, it can code or playback ADPCM or
SBC on all available channels (four or six per card). CELP16 is not available
on an IVP circuit card, but is available on all six channels of the IVC6 circuit
card and the NGTR circuit card.
Note:

You can code and playback CELP16 properly only on the
hardware that supports it. If either operation (coding or playback)
is performed on an unsupported circuit card, the result will be
silence or noise.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 369

7

Defining the Transaction

Table 31.

Defining Message Coding

Message Coding Channel Capacities

Type of Coding

Channel Capacity
(Playback/Coding)
Per SSP Circuit Card

ADPCM16 or ADPCM32

120/120

CELP16

120/60

SBC16 or SBC24

100/100

Maximum Phrase Length
The Maximum Phrase Length field is a field name or constant that defines
the maximum phrase length (in seconds) of the message to be recorded (and
coded) from the caller. Messages exceeding this length are truncated. Valid
ranges for this field are from 0 to 999. The default value is 20 seconds.
Note:

A maximum phrase length of 0 sets the maximum coding time to
45 seconds.

Note:

Consider telling your callers their time limit in the Announce action
step message before the Message Coding action step.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 370

7

Defining the Transaction

Defining Message Coding

Phrase Number or Tag
The Phrase Number or Tag field determines how the phrase to be coded is
specified in the Phrase Identification field. Valid entries are Tag, Phrase
Number, or NX field (Talkfile & Phrase). Tag creates a phrase tag into
which the recording is placed. The default value is Phrase Number. See
Table 32 on page 373 for more information.

Phrase Identification
The Phrase Identification field specifies the phrase to be coded.
Depending on the Phrase Number or Tag field, the Phrase
Identification can be:
•

a phrase tag (limited to a maximum of 50 characters)

•

a phrase number of -1, or from 1 to 65535

•

a field containing the phrase number

•

a field name containing the combined talkfile and phrase number in NX
format

If the Phrase Identification is -1, the system assigns the highest
available phrase number from the specified talkfile. If you have entered Tag
in the Phrase Number or Tag field, the tag does not have to be previously
created. You can enter a new one in this field. See Table 32 on page 373 for
more information.
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 371

7

Defining the Transaction
Note:

Defining Message Coding

If the phrase tag is specified, the talkfile is unused because the
phrase must be in the primary or secondary speech pool. The
Talkfile Number field should contain 0, which the system will
interpret as the current talkfile.

Talkfile Number
The Talkfile Number field defines the talkfile in which the phrase will be
stored. Valid entries for this field are numeric constants ranging from -1 to
255. If the Talkfile Number is -1, the system selects a default number of
255. If the Talkfile Number is 0, the system codes a phrase from the
current talkfile number (specified by the primary speech pool). If there is no
current talkfile and 0 is specified, the system will use the default talkfile
number of 255. If the Phrase Number or Tag field is set to NX field (Talkfile
& Phrase), the Talkfile Number must be set to 0. The default value is -1.
See Table 32 on page 373 for more information.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 372

7

Defining the Transaction

Defining Message Coding

Table 32. How the System Responds to the Phrase Number or Tag, Phrase Identification, and
Talkfile Number Fields

Phrase Number or
Tag

Phrase
Identification

Talkfile
Number

System Response

Phrase Number

-1

-1

The system codes the message in the
highest available Phrase Number in
talkfile 255.

Phrase Number

-1

0

The system codes the message in the
highest available Phrase Number in
the current talkfile.

Phrase Number

-1

1–255

The system codes the message in the
highest available Phrase Number in
the talkfile specified in the Talkfile
Number field.

Phrase Number

1–65535

-1

The system codes the message in the
phrase specified in the Phrase
Identification field in talkfile 255.

Phrase Number

1–65535

0

The system codes the message in the
phrase specified in the Phrase
Identification field in the current
talkfile.
1 of 2

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 373

7

Defining the Transaction

Defining Message Coding

Table 32. How the System Responds to the Phrase Number or Tag, Phrase Identification, and
Talkfile Number Fields

Phrase Number or
Tag

Phrase
Identification

Talkfile
Number

System Response

Phrase Number

1–65535

1–255

The system codes the message in the
phrase specified in the Phrase
Identification field in the talkfile
specified in the Talkfile Number
field.

Tag

A phrase tag

-1

This combination is not allowed

Tag

A phrase tag

0

The system codes the message in the
Tag specified in the Phrase
Identification field in the current
talkfile.

Tag

A phrase tag

1–255

This combination is not allowed.

NX Field
(Talkfile & Phrase)

A field name

0

No other combinations are allowed.
For an NX field, the system codes the
message in the specified phrase and
talkfile.
2 of 2

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 374

7

Defining the Transaction

Defining Message Coding

Initial Timeout
The Initial Timeout field specifies the maximum amount of initial silence
time (in seconds) that the system waits to detect speech. Valid entries are
numeric constants ranging from 0 to 30. If 0 is specified as the Initial
Timeout value, the system waits indefinitely to detect speech from the caller,
that is, timeout is turned off. The default is 5 seconds.
Note:

If no speech is detected within the Initial Timeout interval, the
system returns immediately to the transaction with a return value
to indicate failure.

Completion Timeout
The Completion Timeout field specifies the maximum amount of
completion silence time (in seconds) that the system waits before completing
message coding. Valid entries are numeric constants ranging from 0 to 30
seconds. If 0 is specified as the Completion Timeout value, the system
waits indefinitely to terminate, that is, Completion Timeout is turned off. The
default is 5 seconds.
Note:

If a Completion Timeout silence interval occurs once coding has
started, coding is terminated successfully at that point and the
system returns to the transaction with a return value to indicate a
silence completion.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 375

7

Defining the Transaction

Defining Message Coding

Start Coding At Tone
The Start Coding At Tone field specifies whether to prompt the caller with
an optional tone before beginning message coding. If Yes is selected, a beep
will sound to indicate that message coding has started. If No is selected, no
audible prompt will be given to indicate that message coding has started. The
default is Yes.

Hangup Action
The Hangup Action field specifies the action to take if the caller hangs up
during the message coding. Valid entries for this field are Exit, Return, or
Delete Exit. If Exit is selected and hang up is detected, the coded phrase is
saved and the application is terminated. If Return is selected and hang up is
detected, the coded phrase is saved and the application returns to the
transaction with a return value of -4. If Delete Exit is selected and hang up is
detected, the coded phrase is deleted and the application is terminated. The
default is Exit.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 376

7

Defining the Transaction

Defining Message Coding

Actual Phrase Length Field
The Actual Phrase Length Field is a field name limited to a maximum of
24 characters that returns the actual length in seconds of the coded phrase.
Note that you should specify only a num field type for the Actual Phrase
Length Field.

NX Field (Talkfile & Phrase)
The NX Field (Talkfile & Phrase) is a field name limited to a maximum
of 24 characters that returns the combined Talkfile and Phrase Number of the
coded phrase. The NX Field (Talkfile & Phrase) value is greater than
65536. Note that you should specify only a num field type for the NX Field
(Talkfile & Phrase).
Note:

The NX Field (Talkfile & Phrase) can be played back using
the Announce action step with the NX format and can also be
used to delete the phrase in Message Delete. The external
function unpack_phrNX will give you the Talkfile and Phrase.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 377

7

Defining the Transaction

Defining Message Coding

Return Field
The Return Field is an optional numeric field that contains a return code
from the Message Coding action step. The Return Field is limited to a
maximum of 24 characters. Note that you should specify only a num field
type for the Return Field. Valid return code values are:
•

1: Coding completed normally

•

2: Touch-tone termination

•

3: Completion timeout

•

-1: Insufficient space

•

-2: Code failure

•

-3: Initial timeout

•

-4: Hangup

Defining the Message Coding Action Step
To define the Message Coding action step:
1 With the cursor in the desired position in the Define Transaction screen
(Figure 60 on page 215), press F 1 (Add).

The system displays the Action Choices menu (Figure 62 on page 221).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 378

7

Defining the Transaction

Defining Message Coding

2 Select

>Msg_Code

The system inserts the External Action: Msg _Code action step in the
transaction.
3 Press F6 (Cancel) to exit the Action Choices menu.
4 Highlight the External Action: Msg_Code action step in the transaction.
5 Press F4 (Define).

The system displays the Define Message Coding screen (Figure 97 on
page 380).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 379

7

Defining the Transaction
Figure 97.

Defining Message Coding
Define Message Coding Screen

6 In the Code Rate and Type field, enter or select your choice.
7 In the Maximum Phrase Length field, enter your choice.
8 In the Phrase Number or Tag field, enter or select your choice.
9 In the Phrase Identification field, enter or select your choice.
10 In the Talkfile Number field, enter your choice.
11 In the Initial Timeout field, enter your choice.
12 In the Completion Timeout field, enter your choice.
13 In the Start Coding At Tone field, enter or select your choice.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 380

7

Defining the Transaction

Defining Message Coding

14 In the Hangup Action field, enter or select your choice.
15 In the Actual Phrase Length field, enter or select your choice.
16 In the NX Field (Talkfile & Phrase) field, enter or select your choice.
17 In the Return Field field, enter or select your choice of a field name. Use

of this field is optional.
18 Press F3 (Close) to complete the definition and return to the Define

Transaction screen.

Message Coding: Tips
After you have defined the Message Coding action step, you may press F7
(Show) to expand the Msg_Code to display the information selected for each
field. This example also shows an Evaluate action step on the Return Field.
say_address:
50. Announce
Speak With Interrupt
Phrase:
"please say your new address after the tone"
51. External Action:
Msg_Code
Code_Rate:
"ADPCM 32"
Max_Phr_Len_Sec:
50
Phrase_Type:
"Phrase Number"
Phrase_Id:
-1
Talkfile_Number:
0
Initial_Timeout:
5
Completion_Timeout:
5

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 381

7

Defining the Transaction

Defining Message Coding

Tone_On:
"Yes"
Hangup_Action:
"Return"
Actual_Phrase_Len_Field:
ph_len
Talkfile_Phrase_Field:
nx_field
Return Field:
ret
End External Action
52. Evaluate
If ret = 1
Goto addr_saved
# if return code is 1 (normal completion)
Elseif ret = 2
Goto addr_saved
# if return code is 2 (TT termination)
Elseif ret = 3
Goto addr_saved
# if return code is 3 (completion timeout)
Elseif ret = -3
Goto delete
# if return code is -3 (initial timeout)
Elseif ret = -4
Goto delete
# if return code is -4 (hangup)
Else
# if return code is none of the above
53. Announce
Speak With Interrupt
Phrase:
"our system is experiencing problems"
Phrase:
"please call back later, thank you."
Goto delete
End Evaluate
addr_saved:
54. Announce
Speak With Interrupt
Phrase:
"your new address has been saved."
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 382

7

Defining the Transaction

Defining Message Deleting

55. Announce
Speak With Interrupt
Phrase:
"the new address you entered was"
Field:
nx_field As NX
delete:
56. External Action:
Msg_Delete
Phrase_Type:
"NX Field (Talkfile & Phrase)"
Phrase_Id:
nx_field
Talkfile_Number:
0
Return Field:
rc
End External Action

Note that the field names and sequence used in the expanded Msg_Code
display do not exactly match the field names you used to define the action
step, but they are self explanatory.

Defining Message Deleting
Use the Message Deleting action step to delete a phrase from the system.
This is useful when coded messages are being reviewed or transcribed, and
then discarded. The message to be deleted will normally be one that was
coded using the Message Coding action step. You can also use Message
Deleting to make more disc space available by removing any phrase no
longer needed.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 383

7

Defining the Transaction

Defining Message Deleting

! CAUTION:
Include the Message Deleting action step in applications that can be
accessed only by people with the authority and system knowledge to delete
phrases. Be careful not to delete any phrase required by another application.

Phrase Number or Tag
The Phrase Number or Tag field determines how the phrase to be deleted is
specified in the Phrase Identification field. Valid entries are Tag, Phrase
Number, or NX field (Talkfile & Phrase). The default is Tag.

Phrase Identification
The Phrase Identification field specifies the phrase to be deleted.
Depending on the phrase type that is specified, the Phrase Identification
can be a phrase tag limited to a maximum of 50 characters, a phrase number
ranging from 1 to 65535, a field name containing the phrase number, or a
field name containing the combined talkfile and phrase number in NX format.
If you enter the name of a field containing a combined phrase/talkfile number
(returned by the Message Coding action step), the next field (Talkfile
Number) will be ignored.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 384

7

Defining the Transaction
Note:

Defining Message Deleting

If the phrase tag or NX field is specified, the talkfile should
contain 0 or NULL, which the system interprets as the current
talkfile.

Talkfile Number
The Talkfile Number field defines the talkfile where the coded phrase will
be stored. Valid entries for this field are numeric constants ranging from 0 to
255. If the Talkfile Number is 0, the system deletes the phrase from the
current talkfile number. The default is 0.

Return Field
The Return Field is an optional field name for holding the return status of
the Message Deleting action step. The Return Field is limited to a
maximum of 24 characters. If the Message Deleting instruction is successful,
it returns a positive value. If the instruction is unsuccessful, it returns a
negative value.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 385

7

Defining the Transaction

Defining Message Deleting

Defining the Message Deleting Action Step
To remove a message or phrase using Message Deleting:
1 With the cursor in the desired position in the Define Transaction screen
(Figure 60 on page 215), press F 1 (Add).

The system displays the Action Choices menu (Figure 62 on page 221).
2 Select

>Msg_Delete

The system inserts the External Action: Msg _Delete action step in the
transaction.
3 Press F6 (Cancel) to exit the Action Choices menu.
4 Highlight the External Action: Msg_Delete action step in the transaction.
5 Press F4 (Define).
6 The system displays the Define Message Deleting window (Figure 98 on

page 387).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 386

7

Defining the Transaction
Figure 98.

Defining Type Ahead
Define Message Deleting Window

7 In the Phrase Number or Tag field, enter or select your choice.
8 In the Phrase Identification field, enter or select your choice.
9 In the Talkfile Number field, enter your choice.
10 In the Return Field field, enter or select your choice of a field name. Use

of this field is optional.
11 Press F3 (Close) to complete the definition and return to the Define

Transaction screen.

Defining Type Ahead
Use the Type Ahead action step to allow a caller to enter a number of touchtone digits before the prompts are played. The transaction skips the prompts
and advances the caller to the appropriate action step, thereby saving time
for the caller. You must enable the interrupt feature for any Prompt & Collect

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 387

7

Defining the Transaction

Defining Type Ahead

action step where you want the caller to be able to type ahead. Enter or
select yes in the Speak With Interrupt? field in the Prompt & Collect
action steps. Remember also to enable interrupt in an Announce action step
if you include one between the Prompt & Collect action steps. The system
discards any touch tones entered before an action step with interrupt
disabled. If the system detects a caller input error, the error message should
be played with interrupt set to no to force the message to be heard. In this
case, the caller must be asked to reenter the digits.
Use the Type Ahead action step also to disable this feature.
To define the Type Ahead action step:
1 With the cursor in the desired position in the Define Transaction screen
(Figure 60 on page 215), press F 1 (Add).

The system displays the Action Choices menu (Figure 62 on page 221).
2 Select

>Type_ahead

The system inserts the External Action: Type_ahead action step in the
transaction.
3 Press F6 (Cancel) to exit the Action Choices menu.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 388

7

Defining the Transaction

Defining Type Ahead

4 Highlight the External Action: Type_ahead action step in the

transaction.
5 Press F4 (Define).

The system displays the Define Type_ahead window (Figure 99 on page
389).
Figure 99.

Define Type_ahead Window

6 In the Enable Type_ahead field, accept the default value of yes to enable

the feature, or change the value to no to disable the feature.
7 Press F3 (Close) to complete the definition and return to the Define

Transaction screen.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 389

8 Using Optional Features
Overview
This chapter includes details about how to use optional features with Intuity
CONVERSANT Script Builder.
Note:

The appropriate optional feature package must be installed in
order for the action steps to be available.

Topics covered include:
•

Using Text-to-Speech on page 391

•

Using Dial Pulse Recognition or Speech Recognition on page 401

•

Using Dial Pulse Recognition on page 409

•

Using WholeWord Speech Recognition on page 414

•

Using FlexWord Speech Recognition on page 422

•

Intuity Script Builder FAX Actions Package on page 425

•

Using ASAI on page 489

•

Defining conv_data on page 525

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 390

8

Using Optional Features
•

Using Call Classification Analysis on page 535

•

Using PRI on page 538

•

Using Form Filler Plus on page 547

Using Text-to-Speech

Using Text-to-Speech
Text-to-Speech (TTS) provides an alternative to using recorded speech in a
Script Builder application by taking US English text as input and producing
synthesized speech. In other words, you can use TTS to read text and then to
speak the text in a digitized voice. You can use the text for prompts or for text
retrieval from a file, a database, or a host. TTS is especially useful for
speaking dynamic text; that is, text that changes, such as names and
addresses stored in a database.
You can use TTS in the following areas of your application:
•

Announce action step

•

Prompt & Collect action step

•

tts_file external function

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 391

8

Using Optional Features

Using Text-to-Speech

Using TTS in an Announce or Prompt & Collect Action Step
This section describes how the TTS feature works in both of these action
steps. The procedures for how to make the selections to use the TTS feature
are described in Defining the Announce Action Step on page 238 and
Defining the Prompt & Collect Action Step on page 291 in Chapter 7, Defining
the Transaction.
Specifying Text or
Field

For each Announce (Figure 100 on page 393) or Prompt & Collect (Figure
101 on page 394) action step, you can have up to 15 lines (750 characters) of
text. You can specify Text or Field in the Type field to use TTS. If you specify
Text, you must enter the text to be spoken in the Field Name/Phrase
Tag/Text String field. If you specify Field, you must enter or select the
name of the field from a host or local database to be spoken as text. The field
can be from a host or local database, or from your application.

Entering Text

The text should be in a sentence or in a format appropriate for the text to be
spoken, such as a partial sentence followed by the value in a field. Use
correct punctuation and capitalization to help the system determine where to
place the emphasis in a sentence, so it will sound more natural to the caller.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 392

8

Using Optional Features
Figure 100.

Note:

Using Text-to-Speech
Define Announce Screen

The Text-to-Speech feature recognizes and speaks abbreviations.
However, it spells out text that is in all capital letters unless it
recognizes the text as an abbreviation.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 393

8

Using Optional Features
Figure 101.

Field Format

Using Text-to-Speech
Define Prompt and Collect Screen

The entry in the Field Format field of the screen determines whether the
field contents will be spoken using pre-encoded speech or the TTS feature.
Choosing a field format that begins with “A” (Figure 102 on page 395) invokes
the Text-to-Speech feature.
The choices for the Field Format field lists all the available formats including
the ones for TTS. If there is a lot of text to be read that does not match
another format (such as date, time, dollars, etc), select “A.”

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 394

8

Using Optional Features

Using Text-to-Speech

The choices shown below are those most commonly used. Other valid
formats you can use for numeric and dollar values are AND0-9 and AN$D0-9.
These formats specify from zero to nine places to the right of the decimal
point. For example, the numeric value 123456 spoken with the AND4 format
is spoken “12.3456.”
Figure 102. Choices for Field Format Field, Including Text-to-Speech Formats

The TTS field formats function the same as those for recorded speech. Table
33 on page 396 provides a list of formats.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 395

8

Using Optional Features

Using Text-to-Speech

Table 33. Text-to-Speech Field Formats

Field Value

Field Format
*

Spoken As

12345

A

“12,345”

12345

AC

“one two three four five”

12345

AN

“12,345”

12345

AND2

“123.45”

12345

AN$

“:$12,345”

12345

AN$D2

“$123.45”

1234

ATHMAM

“12 34 PM”

19970315

ADMDYY

“03 15 1997”

19970315

ADMSPDYY

“March 15th 1997”

* The “A” field format causes the contents of a character field to be spoken
by the TTS feature as verbatim text.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 396

8

Using Optional Features

Using Text-to-Speech

Using TTS in the External Function tts_file
When the TTS software is installed, an external function called tts_file is
available. The tts_file external function directs the system to speak text from
an ASCII file and interfaces with the tts_dip to send the file name and start
flag. Use this function to speak text from a file that changes frequently, or a
file that is too large to fit in an Announce action step.
Specify the tts_file external function (Figure 103 on page 397) the same way
as any other external function. The procedure for how to select and define an
external function is in Defining External Function on page 255 in Chapter 7,
Defining the Transaction.
Figure 103.

Define External Function Screen with tts_file Selected

The tts_file external function uses two arguments:
•

Argument 1: field is the talkoff flag. Use this to specify whether
speech playback will stop (“talkoff”) if a caller enters a touch tone.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 397

8

Using Optional Features

Using Text-to-Speech
If this is set to “0,” talkoff is disabled (speech playback continues). If
this is set to “1,” talkoff is enabled.
If talkoff is enabled and a touch-tone digit is received, the system
stops playback of the text and returns to the transaction.

•

Argument 2: field is the file name. Use this to name the file
containing the ASCII text to be played. This file should be in the
/vs/data/tts_files directory. If the file is not in this directory, you
must provide an absolute pathname (for example,
/usr/dpd/filename).

Upon completion, the tts_file external function returns one of the following
values to the field Return Code Is In Field:
•

1: Talkoff occurred

•

0: Function completed successfully

•

-1: TSM say instruction failed

•

-2: Resource needed for say instruction not available

•

-3: ASCII text file not found

•

-4: dbase call failed or timed out

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 398

8

Using Optional Features

Using Text-to-Speech

Text-to-Speech: Tips
Use the following tips to improve your Script Builder application:
•

In general, well-edited text, using punctuation and action verbs, produces
the best speech.

•

Use concise sentences within the Announce and the Prompt & Collect
action steps. Avoid lengthy and run-on sentences.

•

In the Field Name/Phrase Tag/Text String field, the following rules
apply:
~ If you enter a space as the first character, you will be able to edit the

line. Without the space, you must replace the entire line to change it.
~ Line breaks are insignificant. That is, sentences can go from one line to

the next without impacting how the sentence is spoken.
~ A space must be included after the last character on each line. Without

the space, each line will be joined with the next.
•

You may want to insert pauses, or silence, in text to make it sound more
natural. TTS allows you to do this by embedding escape characters
before, after, or within the spoken text. These escape characters can add
silence delays (for example, \!sf50 for a final silence of one-half second),
change the speaking rate, and mark text as belonging to a specific
category such as addresses, telephone numbers, fractions, and proper
names. For detailed information about these escape sequences and other

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 399

8

Using Optional Features

Using Text-to-Speech

TTS ideas, see Appendix E, “Advanced Text-to-Speech Features,” in
Intuity CONVERSANT System Version 7.0 Speech Development,
Processing, and Recognition, 585-313-201.
You can also insert pauses in text through punctuation. The use of a
comma, colon, or period in appropriate places introduces natural pauses
in the synthesized voice as well as changes in voice intonation.
When speaking database information, a pause could also be introduced
by the database lookup itself. For example, “Your Name is...”  “Dr. Glenn Tsuromoto. Press 1 for yes, 2 for no.”
•

Within a Define Announce screen, if more than one field is spoken using
TTS, you may want to speak silence (for example, \!sf50 for a final silence
of one-half second) between each field to make it sound more natural. If
you do not insert silence between the fields, the system can run the
phrases together, causing the speech to sound unnatural.

•

If pre-recorded speech and TTS are mixed within the same action step
with talk-off enabled, the speech is treated as a play request. If a touchtone digit is received during playback, the remainder of the speech and/or
text in the action step is not spoken.
Consecutive action steps containing mixed speech and text with talk-off
enabled are not treated as one play request. However, consecutive action
steps containing only TTS with talk-off enabled are treated as one play
request, meaning that a single touch-tone digit causes the entire group of
action steps not to be spoken.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 400

8

Using Optional Features
•

Using Dial Pulse Recognition or Speech Recognition

The first time TTS is used during a call, the system tries to allocate the
TTS resource. If the licensed resource is available, the text is spoken and
the transaction proceeds normally. After the text is spoken, the resource
is relinquished and must be reallocated the next time TTS is used.
If the TTS resource is not available, the system tries every 2 seconds (up
to the default timeout of 45 seconds) to allocate the TTS resource. At the
end of this time period, if the system is not able to allocate the resource, a
-2 is returned in register 0. This approach allows the system to degrade
gracefully and, in most cases, eliminates the need to do error checking at
the Script Builder level for the TTS resource allocation. For those
applications that must have error control, external functions can be written
and accessed through Script Builder that give their script access to both
r.0 and the nwitime() instruction. The nwitime instruction would be used
to set the wait time before text is spoken for the first time to a value less
than 45 seconds. A second external function would check the contents of
r.0. See Intuity CONVERSANT System Version 7.0 Application
Development with Advanced Methods, 585-313-203, for more information
about the nwitime() instruction.

Using Dial Pulse Recognition or Speech Recognition
Dial Pulse Recognition (DPR) and speech recognition, which includes
WholeWord speech recognition and FlexWord speech recognition, use
resources on the SSP circuit card to compare caller inputs to the recognizer
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 401

8

Using Optional Features

Using Dial Pulse Recognition or Speech Recognition

type selected on page 2 of each Prompt & Collect action. If a match is found,
the system identifies a valid input. This section provides information common
to all three of these recognizers. For information about how to use DPR and
speech recognition in your application script, see Intuity CONVERSANT
System Version 6.0 Application Design Guidelines, 585-310-670, and Intuity
CONVERSANT System Version 7.0 Speech Development, Processing, and
Recognition, 585-313-201.

Defining the SP_Allocate External Action
The script uses the SP_Allocate external action to help ensure that the DPR
or speech recognition system licensed resource is available when it is
needed. Normally, this resource is shared between the transactions running
on separate channels. It is allocated and unallocated automatically at each
point where DPR or speech recognition is used during the transaction.
The SP_Allocate external action can be used before any Prompt & Collect
actions to check the availability of the recognition resource. It can also be
used to allocate explicitly the resource to the transaction until the transaction
terminates or explicitly to unallocate the resource. If the recognition resource
is not available, a Prompt & Collect action step employing recognition will fail
with the message Too few digits.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 402

8

Using Optional Features
Note:

Using Dial Pulse Recognition or Speech Recognition

Design each application so that it will free the recognition resource
as soon as it is no longer needed by the script. SP_Allocate can
tie up the resource when it is being used after it is no longer
needed.

To define the SP_Allocate external action:
1 With the cursor in the desired position in the Define Transaction screen
(Figure 60 on page 215), press F 1 (Add).

The system displays the Action Choices menu (Figure 62 on page 221).
2 Select:

> SP_Allocate

The system inserts the SP_Allocate action step in the transaction.
3 Highlight the SP_Allocate action step.
4 Press F4 (Define).

The system displays the Define SP Allocate screen (Figure 104 on page
404).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 403

8

Using Optional Features
Figure 104.

Using Dial Pulse Recognition or Speech Recognition
Define SP_Allocate Screen

5 In the Recognizer_Allocation: field, select on to enable Speech

Recognizer Allocation. Select off to disable Speech Recognizer
Allocation. The default value is on.
6 In the Recognizer: fields, select DPR, WW, or FW. You can be select

them separately or simultaneously.
7 In the Return Field:, specify the field in which an optional return code

will be placed.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 404

8

Using Optional Features

Using Dial Pulse Recognition or Speech Recognition

The system sets the return field to one of the values in Table 34 on page
405 depending on the status of the SP_Allocate:
Table 34.

SP_Allocate Return Values

0

Success

-1

Failure (reason unspecified)

-2

System resources not available

8 Press F3 (Close) to complete the definition and return to the Define

Transaction screen.

Prompt & Collect Action Step
This section describes how use DPR and speech recognition in a Prompt &
Collect action step. The procedure for how to make the selections are
described in Defining the Prompt & Collect Action Step on page 291 in
Chapter 7, Defining the Transaction.
Specifying Input
Mode

The default input mode is touch tone, which is always available. When DPR,
WholeWord speech recognition, or FlexWord speech recognition software is
installed, the system displays new options in the Define Prompt and Collect
INPUT screen (Figure 105 on page 406). The Recognition_Type: field now

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 405

8

Using Optional Features

Using Dial Pulse Recognition or Speech Recognition

accepts a value to specify a recognition type for the active recognizer(s). This
is a dynamic menu, which displays all recognition types and wordlists
available on your system, regardless of whether you are planning to use them
in the current application.
Figure 105.

Define Prompt and Collect –INPUT Screen

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 406

8

Using Optional Features

Specifying the
Confirm Action

Using Dial Pulse Recognition or Speech Recognition

Using the Define Prompt and Collect–CHECKLIST screen, you can direct
DPR and WholeWord speech recognition applications to prompt callers to
confirm that the system recognized what was spoken or entered. The
Confirm action is one of the choices in the Action field.
You can specify a single touch-tone digit or a DPR digit as an optional
argument in the Action Data field. This optional argument is in addition to the
default “yes” in the WholeWord language used for the selected Recognition
Type. An argument in the Action Data field is required if you want to confirm
touch-tone or DPR input.
The Confirm action has an associated Voice Response screen that the
system plays to the caller before the confirmation. This screen is used to play
back caller input and to ask the caller to confirm her/his input by saying “yes”
or by entering a touch-tone or DPR digit.
The Confirm action, which has an optional touch-tone or dial pulse
confirmation digit associated with it, can be used in one of two ways:
•

If you want to require the caller to confirm the input, whether it was
spoken or entered with touch tones or dial pulses, specify a touch-tone or
dial-pulse digit for the confirmation digit. The input will be accepted if the
user says “yes” or enters the specified digit.

•

If you want to require the caller to confirm the input only if it was spoken,
leave the confirmation digit blank. In this case, the prompt and the
Confirm action are performed only if the caller speaks the input. The
Confirm action will require a spoken “yes” before the input is accepted.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 407

8

Using Optional Features

Using Dial Pulse Recognition or Speech Recognition

If the caller says “yes” or enters a touch-tone or dial-pulse digit that matches
the optional argument, the system continues to the next action step in the
transaction. If the caller says “no” or enters a touch-tone or dial-pulse digit
that does not match the optional argument, the system reprompts the caller
for the input. If you do not specify an optional argument, when the caller
enters a touch tone or dial pulse, the script treats the Confirm action as a
Continue.
$CI_MODE Return
Value

The system sets the $CI_MODE variable to the SSP circuit card number that
was used to perform the DPR or speech recognition. An integer value of 0 or
greater identifies the SSP circuit card. A value of -1 is returned if touch tone
input is received.

$CI_RECOG Return The system sets the $CI_RECOG variable to the recognizer that performed
Value
the recognition. The return field is set to one of the values in Table 35 on page

408 depending on the first successful recognition.
Table 35.

$CI_RECOG Return Values

0

User entered touch tone

1

FLEX_WORD

2

WHOLE_WORD

3

DIALPULSE

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 408

8

Using Optional Features

$FINDBEST

Using Dial Pulse Recognition

Specify a value for the $FINDBEST variable where you want to improve
recognition accuracy by using the recog_dip in applications that use DPR or
speech recognition. Use the Set Field Value action step to define
$FINDBEST (up to 67 characters) before the Prompt & Collect action step.
See Appendix F, “Recognition Post-Processing,” in Intuity CONVERSANT
System Version 7.0 Speech Development, Processing, and Recognition,
585-313-201, for more information about $FINDBEST and recog_dip.

Using Dial Pulse Recognition
The Dial Pulse Recognition (DPR) feature allows users with rotary
telephones or push-button telephones that generate dial pulses, to interact
with system applications. DPR is not as accurate as touch-tone inputs, but it
does allow callers to provide input to your application without talking with an
agent. The system trains itself to learn how the caller’s telephone performs
during the connection. To improve accuracy, wherever possible, ask for
inputs that are separated by three numbers (for example, ask for 8 for “yes”
and 5 for “no”).
The prompt message should encourage the caller to listen to the entire
message before responding. DPR does not allow the caller to interrupt the
prompt message. DPR allows callers to enter a sequence of connected
digits, rather than one at a time. DPR can be used in an application with
WholeWord or FlexWord speech recognition, allowing your callers a choice of
input method. For more information about how to use DPR in your
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 409

8

Using Optional Features

Using Dial Pulse Recognition

application, see Intuity CONVERSANT System Version 6.0 Application
Design Guidelines, 585-310-670, and Intuity CONVERSANT System Version
7.0 Speech Development, Processing, and Recognition, 585-313-201.

Specifying Input Mode
When DPR software is installed, the system displays new options in the
Define Prompt and Collect INPUT screen (Figure 105 on page 406). The
Recognition_Type: field now accepts a value to specify a recognition type
for the active recognizer(s).
Recognition Type

The Recognition_Type: field accepts a value to specify a DPR recognition
type (Figure 106 on page 411). This is a dynamic menu, which displays all
recognition types available on your system.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 410

8

Using Optional Features
Figure 106.

Using Dial Pulse Recognition
Define Prompt and Collect INPUT–Choices for Recognition Type
Field for DPR

Min and Max Number of Digits

The Min and Max Number 0f Digits fields limit the length of caller input
(touch tone or dialed) that can be recognized by the system. Script Builder
validates the Min and Max Number 0f Digits fields and replaces invalid
selections with numbers that are valid for the recognition type selected.
Note:

By setting the Min and Max Number 0f Digits fields to values
greater than 1, you can collect numbers that include more than
one digit. For example, to collect the digit 5, the Min/Max would
each be set to 1. To collect the number 614, the Min/Max would
each be set to 3, since there are three digits in this target number.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 411

8

Using Optional Features

Using Dial Pulse Recognition

$CI_VALUE

The $CI_VALUE variable (up to 67 characters in length) indicates the digits
recognized by the system. You can use this value to tell a caller what the
system received.

Training

To improve DPR accuracy, the system uses a method called training to learn
how to listen to the telephone and network connection for each call. Training
is automatically used for each DPR caller on the first input of 5 or higher, then
it is automatically turned off. It is a good idea to tell your callers to dial 9,
followed by the information you need. Requesting this extra digit is necessary
only on the first Prompt & Collect action step. You can also turn the training
on again during your application if you need to by using the external function
DprReset. This would be necessary only if your application makes calls to
customers.

Verifying DPR Input It could be important to verify a DPR input from a caller. You can increase

accuracy by asking for inputs that are 3 numbers apart, for example 2, 5, and
8. For yes/no inputs, ask for 8 for “yes” and 5 for “no.” Avoid asking for 1 as
an input for yes/no.
The Confirm action in the Define Prompt and Collect CHECKLIST works only
if a WholeWord speech recognition or DPR package is installed. For DPR,
you can customize the Confirm action by specifying the desired response in
the Action Data field, or write a separate Prompt & Collect action step to
verify the caller’s input.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 412

8

Using Optional Features

Defining the
DPR_Disable
External Action

Using Dial Pulse Recognition

If your caller enters a touch tone (DTMF input), you can disable the DPR
recognizer, which would make resources available on the SSP circuit card
and avoid any erroneous recognitions by the DPR recognizer. Touch-tone
input will be shown as a return value of 0 in $CI_RECOG and as a negative
number in $CI_MODE. You can use an Evaluate action step to determine if a
touch tone has been received. Use the external action DPR_Disable (Figure
107 on page 413) to disable or to enable the DPR recognizer.
Note:

There is no separate function to enable DPR, so you enable the
DPR recognizer by selecting enable in the Dial Pulse
Recognizer: field in the Define DPR_Disable screen.

Figure 107.

Define DPR_Disable Screen

In the Return Field:, specify the field in which an optional return code will
be placed. The system sets the return field to one of the values in Table 36 on
page 414 depending on the status of the DPR_Disable:

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 413

8

Using Optional Features

Using WholeWord Speech Recognition

Table 36.

DPR_Disable Return Values

0

Success

-1

Failure (reason unspecified)

-2

System resources not available

Using WholeWord Speech Recognition
WholeWord speech recognition allows the system to understand the words
“yes” and “no,” and the digits zero through nine (and language-specific
synonyms). It can be used
•

In an application transaction

•

Through the external action SR_Prompt for WholeWord speech
recognition

For more information about how to use WholeWord speech recognition in
your application, see Intuity CONVERSANT System Version 6.0 Application
Design Guidelines, 585-310-670, and Intuity CONVERSANT System Version
7.0 Speech Development, Processing, and Recognition, 585-313-201.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 414

8

Using Optional Features

Using WholeWord Speech Recognition

Languages Available
Languages l supported for WholeWord recognition include:
•

Australian English

•

Brazilian Portuguese

•

Canadian French

•

Castilian Spanish

•

Dutch

•

French

•

German

•

Japanese

•

Latin-American Spanish

•

UK English

•

US English

Your Intuity CONVERSANT system can support up to two different
WholeWord speech recognition packages on a single system. This allows
your system to understand callers who respond in either language you make
available.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 415

8

Using Optional Features

Using WholeWord Speech Recognition

Specifying Input Mode
When WholeWord speech recognition software is installed, the system
displays new options in the Define Prompt and Collect INPUT screen (Figure
105 on page 406). The Recognition_Type: field now accepts a value to
specify a recognition type for the active recognizer(s).
Recognition Type

The Recognition_Type: field accepts a value to specify a WholeWord
recognition type (Figure 108 on page 417). This is a dynamic menu, which
displays all recognition types available on your system. Note that WholeWord
recognition types and FlexWord wordlists will be listed. Select a WholeWord
recognition type.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 416

8

Using Optional Features
Figure 108.

Using WholeWord Speech Recognition
Define Prompt and Collect INPUT–Choices for
Recognition Type Field for SR

Min and Max Number of Digits

The Min and Max Number 0f Digits fields limit the length of caller input
(touch tone or spoken) that the system can recognize. Script Builder validates
the fields and replaces invalid selections with numbers that are valid for the
recognition type selected.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 417

8

Using Optional Features
Note:

$CI_VALUE Return
Value

Using WholeWord Speech Recognition

By setting the Min and Max Number 0f Digits fields to values
greater than 1, you can collect numbers that include more than
one digit. For example, to collect the digit 5, the Min/Max would
each be set to 1. To collect the number 614, the Min/Max would
each be set to 3, since there are three digits in this target number.

The $CI_VALUE variable (up to 67 characters in length) indicates the digit or
word recognized by the system. For each recognized digit or word, the
$CI_VALUE will include the digit, or Y or N. See Chapter 4, “Recognizing
WholeWord Speech Input,” in Intuity CONVERSANT System Version 7.0
Speech Development, Processing, and Recognition, 585-313-201, for the
digits and synonyms that are recognized in each language. The value “?” (an
unrecognized input) can be returned as valid input in $CI_VALUE within the
Prompt & Collect Standard Checklist. This return value indicates that speech
energy is present but cannot be interpreted. The recommended action is to
check the validity of the $CI_VALUE by using an Evaluate action step
following the Prompt & Collect action step. If a “?” occurs as the return value,
you can specify the appropriate action you want the script to take, such as
reprompting the caller for input.
Note:

In the Prompt & Collect Custom Checklist, the return code “?” is
classified in the Not on List category. Use the Custom Checklist
to specify the action to take in this case.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 418

8

Using Optional Features

Using WholeWord Speech Recognition

If insufficient energy is received, an empty string, “ “, will be returned. In the
Standard Checklist, this is classified in the Initial timeout category. You can
use an Evaluate action step following the Prompt & Collect action step if you
want to specify a different script action for an empty string input.
Verifying
It could be important to verify a WholeWord speech recognition input from a
WholeWord Speech caller. The Confirm action in the Define Prompt and Collect CHECKLIST
Recognition Input

works only if a WholeWord speech recognition or DPR package is installed.
See Specifying the Confirm Action on page 407 above, or Chapter 7,
Defining the Transaction.

Defining the
SR_Prompt
External Action

The SR_Prompt external action allows a caller to interrupt voice playback
with speech input. Barge-in, also known as recognize during prompt,
operates much like the talkoff feature for touch-tone input. When SR_Prompt
is enabled, those prompts specifying yes for Speak with interrupt? for all
Prompt & Collect action steps are stopped as soon as the system recognizes
enough valid speech input. Prompts that specify no for Speak with
interrupt? are not affected by this action.
If you want to use barge-in, put the SR_Prompt action in your script right after
Answer Phone. In addition, when using the Call Bridge action, the script
should disable the Speak with interrupt? feature before the bridge and
enable it once the bridge is established. This allows the system to adapt to
the specific characteristics of the new connection.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 419

8

Using Optional Features
Note:

Using WholeWord Speech Recognition

SR_Prompt should be turned off and on throughout the
application only when using a Call Bridge action step. Otherwise,
WholeWord speech recognition accuracy at a barge-in prompt is
negatively influenced.

Follow the procedure below to select the SR_Prompt external action:
1 With the cursor in the desired position in the Define Transaction screen
(Figure 60 on page 215), press F 1 (Add).

The system displays the Action Choices menu (Figure 62 on page 221).
2 Select:

> SR_Prompt

The system inserts the SR_Prompt action step in the transaction.
3 Highlight the SR_Prompt action step.
4 Press F4 (Define).

The system displays the Define SR Prompt screen (Figure 109 on page
421).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 420

8

Using Optional Features

Using WholeWord Speech Recognition

Figure 109.

Define SR_Prompt Screen

5 In the Recognize During Prompt: field, select yes to enable the feature.

Select no to disable the feature. The default value is yes.
6 In the Return Field:, specify the field in which an optional return code

will be placed.
The system sets the return field to one of the values in Table 37 on page
421 depending on the status of the SR_Prompt:
Table 37.

SR_Prompt Return Values

0

Success

-1

Failure (reason unspecified)

-2

System resources not available

7 Press F3 (Close) to complete the definition and return to the Define

Transaction screen.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 421

8

Using Optional Features

Using FlexWord Speech Recognition

Using FlexWord Speech Recognition
FlexWord speech recognition allows the system to understand words in
custom wordlists that you determine are needed for your application.
For more information about how to use FlexWord speech recognition in your
application, see Intuity CONVERSANT System Version 6.0 Application
Design Guidelines, 585-310-670, and Intuity CONVERSANT System Version
7.0 Speech Development, Processing, and Recognition, 585-313-201.

Languages Supported
FlexWord speech recognition is available in the following languages (select
one per system):
•

French

•

German

•

Japanese

•

Latin-American Spanish

•

US English

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 422

8

Using Optional Features

Using FlexWord Speech Recognition

Specifying Input Mode
When FlexWord Speech Recognition software is installed, the system
displays new options in the Define Prompt and Collect INPUT screen (Figure
105 on page 406). The Recognition_Type: field now accepts a value to
specify a recognition type for the active recognizer(s).
Recognition Type

The Recognition_Type: field accepts a value to specify a FlexWord speech
recognition wordlist name tag (Figure 110 on page 424). Wordlist name tags
are in all capital letters and are 1–14 characters in length. This is a dynamic
menu, which displays all recognition types available on your system. Note
that both FlexWord wordlists and WholeWord recognition types will be listed.
Select a FlexWord wordlist.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 423

8

Using Optional Features
Figure 110.

Using FlexWord Speech Recognition
Define Prompt and Collect INPUT – Choices for Recognition Type
Field for SR

Min and Max Number of Digits

The Min and Max Number 0f Digits fields limit the length of caller input.
Script Builder validates the selected numbers for the speech recognition type
selected. The Min for all FlexWord wordlists is 1 and the Max is 64. If you set
the Max at less than 64, you risk cutting off some of the data returned to the
script from the recognizer.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 424

8

Using Optional Features

Intuity Script Builder FAX Actions Package

$CI_VALUE Return
Value

The $CI_VALUE variable (up to 67 characters in length) indicates the word
recognized by the system. For example, if the caller inputs the recognized
word “savings,” and the Max Number 0f Digits: field is set to a value equal
to or greater than 7, the return value will be “savings.” However, if the Max
Number 0f Digits: field is set to 3 and a caller inputs the recognized word
“savings,” the return value is “sav”— only the first three letters.

Verifying FlexWord
Input

The Confirm action works only if a WholeWord speech recognition or DPR
package is installed. For FlexWord speech recognition, you can write a
separate Prompt & Collect action step to verify the caller’s input. See Defining
Prompt & Collect on page 273 in Chapter 7, Defining the Transaction.

Intuity Script Builder FAX Actions Package
The Intuity Script Builder FAX Actions can be incorporated quickly into any
Script Builder application. The Script Builder FAX Actions package allows you
to:
•

Develop applications that send faxes to callers or receive faxes from
callers quickly and easily.

•

Integrate fax capabilities into existing Intuity CONVERSANT system
applications.

•

Transmit a stored graphic image to the caller.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 425

8

Using Optional Features

Intuity Script Builder FAX Actions Package

•

Transmit dynamically created text information to the caller.

•

Attach a customized cover page to the fax information requested by the
caller.

•

Transmit multiple faxes to callers.

•

Automatically retry numbers if the called fax machine is busy.

•

Transmit faxes when toll rates are lower, for example, after 5 p.m.

•

Support both Tip/Ring and E1/T1 callers.

•

Support international callers and dialing through restricted trunks that
require the entry of special codes in addition to a normal dialing string.

Requirements to Use the Intuity Script Builder FAX Actions Package
The Intuity Script Builder FAX Actions package consists of the Script Builder
actions that provide fax functionality and the runtime environment necessary
to support applications that use the actions.
To use the Intuity Script Builder FAX Actions package, you require:
•

A functional Intuity CONVERSANT system Version 7.0 system

•

Script Builder

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 426

8

Using Optional Features

Fax File Formats

Intuity Script Builder FAX Actions Package

•

Intuity CONVERSANT FAX Set, which includes the Script Builder FAX
Actions for Lucent Technologies Cards

•

Either a speech and signal processing (SSP) card or a Tip/Ring card

Files to be faxed on the Intuity CONVERSANT system must be either text
files in ASCII text format or fax files in Tag Image File Format (TIFF) Class F.
Conversion Tools

You may require a tool to convert files in other formats to fax files. For
information on installing and using the tif2itf.exe and tif2itif conversion tools
provided with the Intuity CONVERSANT system see Appendix C, "Format
Conversion Tools for Fax Files," in Intuity CONVERSANT System Version
7.0 Administration, 585-313-501.

How Intuity Script Builder FAX Actions Works
The action steps that come with Intuity Script Builder FAX Actions work like
any other Script Builder action steps that appear in the Action Choices menu.
Use the action steps to incorporate fax functionality into your Intuity
CONVERSANT system application. Use the Intuity Script Builder FAX
Actions administrative screens to load and print the graphical images your
application transmits to the caller. Text files can be created in advance or in
real time based upon caller input, and then faxed to the caller. Faxes can be
received from callers and placed into any directory your application specifies.
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 427

8

Using Optional Features

Intuity Script Builder FAX Actions Package

Architectural Components

Figure 111 on page 430 shows the following architectural components that
make Script Builder FAX Actions work:
•

Telephone — Callers can dial into the system using a telephone.

•

Fax machine — This is where the requested faxes are delivered.

•

Global communications network — This is where the communications
infrastructure that connects the caller to the called Intuity CONVERSANT
system.

•

PBX or switch— This typically provides the front-end to the Intuity
CONVERSANT system. This is not strictly required to use Intuity Script
Builder FAX Actions.

•

Tip/Ring or E1/T1 circuit card — This provides voice functionality that
supports the caller’s interaction with the system.

•

Application layer — Includes:
~ Tip/Ring or E1/T1 circuit card: This provides voice functionality that

supports the caller’s interaction with the system.
~ Script Builder: An Intuity CONVERSANT application development tool
~ FAX Actions: The action steps to incorporate fax functionality into the

application

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 428

8

Using Optional Features

Intuity Script Builder FAX Actions Package

~ Script Builder fax-enabled script: The actual voice response

application, built using the FAX actions, that controls the interaction
with the caller
~ TSM: A system process that gets the FAX actions from the script and

passes it to sbFaxProc
~ sbFaxProc: The process that executes the FAX actions
•

Platform layer — Includes all the fax processes, IRAPI and the softFAX
API, fax utilities, and an administrative interface.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 429

8

Using Optional Features

Intuity Script Builder FAX Actions Package

Figure 111.
Telephone

Script Builder FAX Actions Architecture

FAX
machine

Application layer

Voice circuit
card
Global
communications
network

Script
Builder

FAX
actions

(Tip ring
or E1/T1)

SB FAX
enabled
script
TSM

PBX

sbFaxProc

Extension
1000

Platform layer
FAX processes
(faxdaemon, sfpip,
ivc6di, fax_mon,
SFlineDB, etc.)

IRAPI
softFAX API

FAX utilities

Administrative
interface

iocvsbfx KLC 033098

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 430

8

Using Optional Features

Intuity Script Builder FAX Actions Package

Some Uses for Intuity Script Builder FAX Actions in Your Applications
The following list suggests how to use Script Builder FAX Actions in various
applications.
Figure 112. Examples of Uses for Script Builder FAX Actions

Example

Description

Company
brochures

Callers interact with an application to request product
brochures by fax transmission. The product brochures can be
sent immediately or at a later time when the telephone rates
are lower. They can also be sent on the current call if the caller
is calling from a fax machine.

Bank
account
records

Callers enter an account number and then receive a fax of that
account status including a list of the last 20 checks that were
cleared through the account. Callers can fax their loan
application into the system.

Real estate
information

Prospective home buyers notice a sign in the front yard of a
house they are interested in purchasing. They call the number
on the sign, enter the house identification code, then receive a
fax of the house data sheet including a floor plan, asking price,
and the name of the real estate agent.
1 of 4

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 431

8

Using Optional Features

Intuity Script Builder FAX Actions Package

Figure 112. Examples of Uses for Script Builder FAX Actions

Example

Description

Company
savings plan
records

Employees call the automated administrator of their company
savings plan and request the most current account statement.
They can then get their latest account statements immediately
via fax, instead of waiting until the next quarterly statement.

Medical
records

Physicians call a single telephone number and listen via textto-speech (TTS) to up-to-date patient records supplied by the
hospital, pharmacy, or laboratory. They can then have the
medical records faxed to them in their automobile or office.

Customer
service
information

Customers call an application that allows them to receive
faxes about product/system maintenance issues and the
resolutions to those issues. They can listen to the issue
resolutions via audiotext or TTS or can request a fax of the
issue resolution. If they want immediate attention, they can
transfer to a customer service agent.

Travel and
airline
reservations

An airline or travel agency offers customers the option of
receiving a fax of all flights that are consistent with their travel
needs. Once a reservation is made, the customer can receive
a faxed confirmation of the travel arrangement.
2 of 4

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 432

8

Using Optional Features

Intuity Script Builder FAX Actions Package

Figure 112. Examples of Uses for Script Builder FAX Actions

Example

Description

Hotel/confer
ence
services

A hotel simultaneously hosting two industry conferences can
provide an automated service to organizers of both
conferences. These services allow conference attendees to
automatically register and pay for the conference, receive a
fax of their confirmed reservation, and receive a fax of a map
that provides instructions on how to get to the hotel. The
service also allows attendees to hear conference agendas and
descriptions of technical sessions, receive faxes about both
conferences, register for technical tutorials, receive a faxed
registration confirmation, and listen to a replay of the
conference keynote speech which is automatically added to
their room charge.

Tax form
distribution

Corporate and individual tax payers call into an application
that allows them to retrieve tax forms and directions for their
use. Callers can also leave their completed tax form on the
system.
3 of 4

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 433

8

Using Optional Features

Intuity Script Builder FAX Actions Package

Figure 112. Examples of Uses for Script Builder FAX Actions

Example

Description

Callers
queued in
ACD

Callers who reach a service bureau are placed in an automatic
call distributor (ACD) queue awaiting the availability of an
organization representative. While in the ACD, callers listen to
information about new products and services and can elect to
receive information about these products and services via fax.

News/wire
service

Subscribers to a newspapers, other publications, and wire
service can receive late-breaking news reports via fax by
dialing a voice-response application.

Brokerage
services

A brokerage house offers its callers a voice-response service
that allows the caller to buy and sell stocks and bonds. The
caller receives a fax confirming the transaction.

Shipping

Shipping company customers dial a voice-response
application and request a fax with the latest status information
about their shipping job and/or a duplicate of their bill of lading.

Order
entry/verific
ation

A manufacturer’s representative contacts a supplier via the
supplier’s voice-response application and requests several
spare parts. The representative receives a fax with the order
confirmation.
4 of 4

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 434

8

Using Optional Features

Intuity Script Builder FAX Actions Package

Accessing the FAX Actions on the Script Builder Action Choices Menu
The Action Choices menu of Script Builder contains all the Script Builder
action steps available on your system. For example:
•

Answer Phone, for answering the telephone and beginning the application

•

Announce, for playing a voice announcement to the caller

•

Prompt & Collect, for requesting caller input

When you install the Intuity Script Builder FAX Actions on a system, the
following additional action steps appear in the Script Builder Action Choices
menu (Figure 113 on page 436):
•

FAX_Send

•

FAX_Get

•

FAX_CovrPage

•

FAX_Queue

•

Exec_UNIX

•

Concat5

•

FAX_CNG

You can use the action steps provided by the Intuity Script Builder FAX
Actions package like any other action steps in any Script Builder application.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 435

8

Using Optional Features
Figure 113.

Intuity Script Builder FAX Actions Package
Script Builder Action Choices Menu

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 436

8

Using Optional Features

Intuity Script Builder FAX Actions Package

FAX_Send
The FAX_Send action sends faxes that were previously queued using the
FAX_Queue action. If the transmission fails, it will be retried until it is
successfully transmitted or until the specified number of retry attempts is
reached.
FAX_Send: How to
Use It

Use the following procedure to define the FAX_Send action step:
1 With the cursor in the desired position in the Define Transaction screen
(Figure 60 on page 215), press F 1 (Add).

The system displays the Action Choices menu (Figure 113 on page 436).
2 Select:

> FAX_Send

The system inserts the FAX_Send action step in the transaction.
3 Press F6 (Cancel) to exit the Action Choices menu.
4 Highlight the FAX_Send action step.
5 Press F4 (Define).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 437

8

Using Optional Features

Intuity Script Builder FAX Actions Package

6 The system displays the Define FAX_Send screen (Figure 114 on page

438).
Figure 114.

FAX_Send:
Arguments

Define FAX_Send Screen

The FAX_Send action step has seven arguments:
•

FAX Delivery Number: Enter the telephone number to which the fax will
be delivered or CURRENT if the fax is to be sent on the current call. The
telephone number can be entered by the caller or obtained from a
database or host.

Note:

A total of 32 characters can be entered for transmission on either
the Tip/Ring circuit card (analog) or the E1/T1 circuit card (digital).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 438

8

Using Optional Features

Intuity Script Builder FAX Actions Package

Valid entries are:
~ The entry CURRENT

If the field is sent to CURRENT, the entries in FAX Delivery Time, FAX
Retry Interval, and FAX Retry Count are ignored.
~ The name of a field that contains a string constant
~ A string constant enclosed in quotes, for example, “9-6145551212”

The following characters can be used in the FAX Delivery Number:
field: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, asterisk (*), pound sign (#), comma (,),
and dash (-).

Note:

•

Using a comma (,) causes a 1-second pause during dialing on lines
in all equipment groups, both digital (T1) and analog (Tip/Ring). For
longer pauses, multiple commas can be used.

•

For lines in analog equipment groups, using a dash (-) causes a
short (0.1-second) pause during dialing.
The dash (-) cannot be used on digital (T1) lines.

The pauses are useful in situations where a delay is required in the dial
string, for example, when dialing out through a restricted trunk that
requires a pause before input of a PIN (personal identification) number.
For example, the following entry includes a 6-second delay between
the dial string and the 5-digit PIN (12345): "9-6145551212 , , , , , ,
12345"
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 439

8

Using Optional Features
•

Intuity Script Builder FAX Actions Package

FAX Delivery Time: Enter the time the out-of-call (as opposed to the
current call) fax should be delivered. Specify a 2-digit hour (hh) and a
2-digit minute (mm) in the format “hhmm” using a 24-hour clock, or use
the string “immediate”. All values must be contained in quotes.

If the fax does not require immediate delivery, specify a time outside
normal business hours to reduce transmission costs. This field does not
apply to current call deliveries.
•

FAX Retry Interval: Enter the interval (in minutes) between fax retries
for a fax whose delivery has been attempted but has failed. This field
does not apply to current call deliveries.

•

FAX Retry Count: Enter the number of times the fax delivery should be
retried in the case of a failure. This field does not apply to current call
deliveries.

•

TSI String: This field is the user definable “Transmitting Subscriber
Identification” for Group 3 faxes. This contents of this field is printed at the
top of each received page with the page number, date sent, etc. Use this
field to specify the sender’s fax telephone number, company name, or
other numeric string. The string is also displayed on the receiving fax
machine’s LED screen.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 440

8

Using Optional Features
•

Intuity Script Builder FAX Actions Package

Equipment Group: Enter the equipment group number to use for this
action. You can dedicate selected channels to be used by the FAX_Send
action. If this field is blank, the system chooses any fax capable channel
from which to send the fax. This field does not apply to current call
deliveries.

See “Configuration Management” in Chapter 3, “Voice System
Administration,” of Intuity CONVERSANT System Version 7.0
Administration, 585-313-501, for procedures on how to administer the
equipment groups.
•

Return Field: This field contains the result status of the FAX_Send
action. A negative value indicates that a problem was encountered, and
that the caller will not receive the fax requested. Check the return value
and inform the caller of this fact. See "Repairing Script Builder FAX
Actions Troubles" in Chapter 1, "Troubleshooting," in Intuity
CONVERSANT System Version 7.0 System Reference, 585-313-2, for
possible return codes and their explanations. Also see the help file in
/vs/bin/ag/help.

For non-CURRENT deliveries, a positive return value is the numeric
portion (the characters after the dash) of the job ID associated with the
fax transmission. View the job ID in the FAX Transmission Control window
while the fax is still in the transmission queue, or in the faxrpt command
output after the transmission has completed or on the FAX Report screen.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 441

8

Using Optional Features

FAX_Send: Tips

Intuity Script Builder FAX Actions Package

•

Check the return value. If it is an unexpected value, perform some retry
function or inform the caller that the fax could not be sent.

•

Instruct the caller to “Press start on your fax machine now” before
executing FAX_Send with the “CURRENT” option.

•

Speak the Job ID back to callers so that they can keep this number for
their records. Then if they do not receive the fax, you can determine what
happened by looking for the job ID in the FAX Transmission Control
window or faxlog command output.

•

Use the Concat5 action step to attach a trunk access code (TAC) to the
FAX Delivery Number entered by the caller if your PBX supports this
feature. This allows you to control which trunk is used to transmit the fax.

•

Use the Concat5 action step to attach an account code to the FAX
Delivery Number entered by the caller if your PBX supports this feature.
This allows you to control which account pays for the fax transmission.

•

Part of the function of this action step is to convert any text files sent into a
format suitable for fax transmission. The larger the text file you are
transmitting, the longer it takes to convert the file into the proper format
and the longer it takes to complete this action step. Avoid sending large
text files. Ask the caller to “Please wait” if this is unavoidable. Test the
application to determine whether delays are noticeable.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 442

8

Using Optional Features

Intuity Script Builder FAX Actions Package

The default text-to-fax conversion indents text 1 inch from the left of the
page and accepts up to 72 characters per line (excess characters are
wrapped to the next line) and 48 lines per page. Use the text2fax external
function if yor need to convert text files that reuire 80 or 120 chacters per
line and 66 lines per page. See Fax Functions on page 734 in Chapter 11,
Using Advanced Featuresfor more information on text2fax.

FAX_Send:
Example

•

There are no delays when sending faxes loaded into the FAX Loading and
Printing screen since no file conversion is needed.

•

To send multiple text files to the caller, order them one after another in a
single file using the cat command in an Exec_UNIX action step. Then use
the FAX_Send action step to transmit the file to the caller.

•

Once the FAX_Send action step successfully completes, you can safely
remove any temporary fax files sent. They are copied into the
transmission queue and are no longer needed.

•

To send multiple faxes, use the FAX_Queue action step for each fax, then
the FAX_Send action step as the final step.

Figure 115 on page 444 shows an example of how to define a FAX_Send
action step. See FAX_Zapper on page 472 below for a second example.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 443

8

Using Optional Features
Figure 115.

Intuity Script Builder FAX Actions Package
Example of Defining FAX_Send

FAX_Get
The FAX_Get action step directs the system to receive on the current call a
fax from the caller and to place it into the specified directory and file.
This action step can be used to receive a fax from the caller on the current
call, that is, from the fax machine from which the caller is calling. This action
step receives a fax into the system from the caller. Once received from the
caller, the fax is stored in the file specified by the application developer.
FAX_Get: How to
Use It

The following summarizes the recommended sequence for using the
FAX_Get action step in a transaction:
1 Execute FAX_Get.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 444

8

Using Optional Features

Intuity Script Builder FAX Actions Package

2 If the FAX_Get action step returns successfully, ask the caller to “Please

press start on your fax machine now.”
To define the FAX_Get action step:
1 With the cursor in the desired position in the Define Transaction screen
(Figure 60 on page 215), press F 1 (Add).

The system displays the Action Choices menu (Figure 113 on page 436).
2 Select

> FAX_Get

The system inserts the FAX_Get action step in the transaction.
3 Highlight the FAX_Get action step.
4 Press F4 (Define).

The system displays the Define FAX_Get screen (Figure 116 on page
446).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 445

8

Using Optional Features
Figure 116.

FAX_Get:
Arguments

FAX_Get: Tips

Intuity Script Builder FAX Actions Package
Define FAX_Get Screen

The FAX_Get action step has the following arguments:
•

FAX File: Enter the field where the fax received by the system will be
stored. Remember to include the quotation marks when specifying FAX
File. If character fields are used for FAX File, you must include the
quotation marks when you set the field value. You do not need to enter
quotation marks into local data base fields, however.

•

Return Value: A negative value indicates that a problem was
encountered, and the caller’s fax might not be received by the system.
See "Repairing Script Builder FAX Actions Troubles" in Chapter 1,
"Troubleshooting," in Intuity CONVERSANT System Version 7.0 System
Reference, 585-313-205, for possible return codes and their explanations.
Also see the help file in /vs/bin/ag/help.

•

Check the return value. If it is an unexpected value, perform some retry
function or alert the caller that the system is unable to accept the fax.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 446

8

Using Optional Features

FAX_Get: Example

Intuity Script Builder FAX Actions Package

Figure 117 on page 447 shows an example of how to define the FAX_Get
action step.
Figure 117.

Example of Defining FAX_Get

FAX_CovrPage
The FAX_CovrPage action step directs the system to merge two files into a
single fax file. This action step is used for joining graphic images with text
information. By doing this, you can create customized cover pages with
letterhead and/or graphics and logos combined with the text address of the
intended recipient. You can use the Exec_UNIX action step to create the text
portion of the cover sheet. Once created, the cover page is automatically
queued and is delivered with the next FAX_Send action.
FAX_CovrPage:
Arguments

Figure 118 shows the Define FAX_CovrPage screen.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 447

8

Using Optional Features
Figure 118.

Intuity Script Builder FAX Actions Package
Define FAX_CovrPage Screen

The FAX_CovrPage action step has three arguments:
•

Background File: Specifies the file you want to use as the background
for the merged file. This is a required field. The background file must be in
TIFF Class F format. You can use faxes entered in the FAX Loading and
Printing form (see Loading and Printing FAXes on page 464). Valid
entries are:
~ Full pathnames of text or fax files
~ FAX IDs, for example, “fax1”
~ Fields containing full pathnames of text files, fax files, or FAX IDs

Note:
•

Remember to include the quotation marks when entering the
Background File.

Foreground file: Specifies the file you want to use as the foreground
(front) for merged file. This is a required field. This field follows the same
rules as Background File. The foreground file must be ASCII text
format.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 448

8

Using Optional Features

FAX_CovrPage:
Tips

FAX_CovrPage:
Example

Intuity Script Builder FAX Actions Package

•

Return Value: A negative value indicates that an error has occurred.
See "Repairing Script Builder FAX Actions Troubles" in Chapter 1,
"Troubleshooting," in Intuity CONVERSANT System Version 7.0 System
Reference, 585-313-205, for possible return codes and their explanations.
Also see the help file in /vs/bin/ag/help.

•

Ensure that the text file is of a small size so that conversion does not take
long. Also, ensure that the combination of the two files results in a 1-page
fax document.

•

Check the return value. If it is an unexpected value, perform some retry or
recovery function.

Figure 119 on page 450 shows how to use the FAX_CovrPage action step to
create custom cover pages consisting of both graphics file and a text file. See
FAX_Zapper on page 472 for a second example.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 449

8

Using Optional Features
Figure 119.

Intuity Script Builder FAX Actions Package
Using FAX_CovrPage to Create a Custom Cover Page
Background file

Foreground file

Please deliver this FAX to:

HERE IS THE FAX YOU REQUESTED:

Mr. Developer
Lucent Technologies
1234 Main Street
Big City, ST 56789

Voice Number: (614) 860-4216
FAX Number: (614) 868-3608

Delivered by the
INTUITY CONVERSANT System and
the Script Builder FAX Actions

This is how to define the FAX_CovrPage action to
produce the customized cover page below.

FAX Delivery Number:
FAX Delivery Time:
FAX Retry Interval:
FAX Retry Count:
TSI String:
Equipment Group:
Return Field:

9-6148683660
"immediate"
"20"
"6"
"Intuity CONVERSANT"
return_field

HERE IS THE FAX YOU REQUESTED:

Delivered by the
INTUITY CONVERSANT System and
the Script Builder FAX Actions

This is the resulting 8½" x 11"
customized cover page placed in
the file "/tmp/coverpage" that will
accompany the FAX requested by
the caller. Use the FAX_Send
action to send the cover page and
the FAX requested by the caller.

Please deliver this FAX to:

Mr. Developer
Lucent Technologies
1234 Main Street
Big City, ST 56789

Voice Number: (614) 860-4216
FAX Number: (614) 868-3608

ogcvfax KLC 032698

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 450

8

Using Optional Features

Intuity Script Builder FAX Actions Package

FAX_Queue
FAX_Queue queues a file for transmission as a fax. The fax being queued
must exist or exist at the time the action is executed. This action step should
be used for each fax requested by a caller.
FAX_Queue:
Arguments

Figure 120 on page 451 shows the Define FAX_Queue screen.
Figure 120.

Define FAX_Queue Screen

The FAX_Queue action step has two arguments:
•

FAX File: Specifies the name of the file you want queued for fax
transmission. The field has the following requirements:
~ You can specify the entire pathname of the file, or a character field that

includes the name of the file to be queued. If a fax file in
/usr/faxdb/FR/WORKFAX is specified, the file name is sufficient (for
example, fax1).
~ If you are specifying an actual file, enclose the path/file in quotation

marks
~ The file is either in ASCII text or TIFF Class F format.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 451

8

Using Optional Features
Note:
•

Intuity Script Builder FAX Actions Package

A fax loaded through the Loading and Printing Screen is in the
TIFF Class F format.

Return Value: A negative value indicates that an error was
encountered. Most likely, the file that was queued could not be found. See
"Repairing Script Builder FAX Actions Troubles" in Chapter 1,
"Troubleshooting," in Intuity CONVERSANT System Version 7.0 System
Reference, 585-313-205, for possible return codes and their explanations.
Also see the help file in /vs/bin/ag/help.

Exec_UNIX
The Exec_UNIX action step directs the system to execute a UnixWare
command or shell script. This action step is useful for creating text files to
transmit to the caller. For example, if a caller enters an account number, a
shell script can be executed to perform a database query that creates a
formatted text file comprising the caller’s account statement. You can then
fax the account statement to the caller using the FAX_Send action step.
Exec_UNIX: How to
Use It

Figure 121 on page 453 shows the Define Exec_UNIX screen.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 452

8

Using Optional Features
Figure 121.

Intuity Script Builder FAX Actions Package
Define Exec_UNIX Screen

! CAUTION:
As when operating at the system console, you can execute almost ANY
command or shell script using the Exec_UNIX action step, including
commands that are harmful to the system. Test your command or shell script
thoroughly before executing it from within a Script Builder application.
Exec_UNIX:
Arguments

The Exec_UNIX action step has three arguments:
•

Command String: Enter the full pathname of the command that you want
to execute. This is a required field. Valid entries are a character constant,
for example, “banner hello world > /tmp/junkfile,” or a field name that
contains a character constant.

Note:

Remember to include the quotation marks when entering the
Command String.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 453

8

Using Optional Features

Exec_UNIX: Tips

Intuity Script Builder FAX Actions Package

•

Return String: Enter the field that contains the return string that results
from execution of the Command String. This is an optional field. For
example, if the file /tmp/junkfile contains the text “hello world” and the
Command String is “grep hello /tmp/junkfile,” the Return String will
contain “hello world.” If the file /tmp/junkfile does not contain the word
“hello,” the Return String will be empty. The system reads into the
Return String all characters (up to a maximum of 127) that it
encounters before any new-line character appears or before an end-of-file
condition occurs. The Return String is automatically null terminated.

•

Return Value: This field contains the return value from the UnixWare
command execution. See "Repairing Script Builder FAX Actions Troubles"
in Chapter 1, "Troubleshooting," in Intuity CONVERSANT System Version
7.0 System Reference, 585-313-205, for possible return codes and their
explanations. Also see the help file in /vs/bin/ag/help.

•

Do not execute commands with long execution times that might introduce
call delays. If this is unavoidable, ask the caller to “Please wait.”

•

When using Exec_UNIX with TTS, execute a command that returns text.
Then speak the text to the caller using the returned text as input for an
Announce action step.

•

If using Exec_UNIX to create text files to fax to the caller, use the Concat5
action step to attach the channel number to the text file name. This will
prevent an Exec_UNIX action step running on one channel from

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 454

8

Using Optional Features

Intuity Script Builder FAX Actions Package

overwriting the text file created using an Exec_UNIX action step on
another channel. See FAX_Zapper on page 472 below for an example of
how to do this.
•

You can embed Script Builder system variables, such as $CI_VALUE,
within the command line by constructing the command line using the
Concat5 action step. For example, you can use Exec_UNIX to execute the
command /att/trans/sb/FAX_Zapper/mkcv $CI_VALUE where mkcv is a
shell script in the /att/trans/sb/FAX_Zapper directory and $CI_VALUE is
the telephone number entered by the caller.
You can not enter this command in the Command String: field of your
Exec_UNIX action step because you cannot mix string constants and
system variables. However, you can create this command using the
Concat5 action step. Use Concat5 to concatenate the string
“/att/trans/sb/FAX_Zapper/mkcv” to the field $CI_VALUE, putting the
resulting string in the variable command_line which has been defined as a
character type field of length 50. Then, enter the command_line variable
directly into the Exec_UNIX Command String: field. Exec_UNIX will now
execute the command string /att/trans/sb/FAX_Zapper/mkcv
$CI_VALUE.
This type of operation is done in the sample application in FAX_Zapper on
page 472. The sample application uses the FAX_CovrPage action step to
create a customized cover page. The top of the cover page is a graphic
image and the bottom of the cover page is text containing the fax delivery
number. The bottom of the cover page is created dynamically using

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 455

8

Using Optional Features

Intuity Script Builder FAX Actions Package

Exec_UNIX to execute the shell script mkcv which takes as input the
caller’s fax delivery number and the channel on which the transaction
occurs.
•

Exec_UNIX:
Example

Check the return value. If it is an unexpected value, perform some retry or
recovery function.

Figure 122 on page 456 shows an example of how to define the Exec_UNIX
action step. See FAX_Zapper on page 472 below for a second example.
Figure 122.

Example of Defining Exec_UNIX

Concat5
Use the Concat5 action step to concatenate (join together) up to five strings
to make a resulting single string. A typical use for Concat5 is to create an
unique file name for use in the FAX_Send or other FAX action steps, or to
piece together a command line for use with the Exec_UNIX action step.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 456

8

Using Optional Features

Concat5: How to
Use It

Intuity Script Builder FAX Actions Package

To define the Concat5 action step:
1 With the cursor in the desired position in the Define Transaction screen
(Figure 60 on page 215), press F 1 (Add).

The system displays the Action Choices menu (Figure 113 on page 436).
2 Select:

> Concat5

The system inserts the Concat5 action step in the transaction.
3 Highlight the Concat5 action step.
4 Press F4 (Define).

The system displays the Concat5 screen (Figure 123 on page 458).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 457

8

Using Optional Features
Figure 123.

Concat5:
Arguments

Intuity Script Builder FAX Actions Package
Concat5 Screen

The Concat5 action step has eight arguments:
•

Destination: Specify the name of the field where the resulting string will
be placed. You supply the field name and Concat5 fills the field with the
result of the concatenation.

•

String1: Specify the first string to be concatenated. Valid entries are
fields or string constants (for example, “string1”).

•

String2: Specify the second string to be concatenated. The rules for
String1 also apply here. This is a required field.

•

String3:, String4:, and String5: Specify the third, fourth, and fifth
strings to be concatenated respectively. The rules for String1 also apply
here. These fields are optional. If you do not use these fields, leave the
default string “ “.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 458

8

Using Optional Features

Concat5: Tips

Intuity Script Builder FAX Actions Package

•

Max Destination Length: Specify the largest allowed length of the
resulting string. If set to 0, a maximum length of 255 is assumed. The
default is the system maximum of 255 characters.

•

Return Value: Specifies the return value field. The value placed here is
equal to the length of the Destination: string.

•

Check the return value. If it is an unexpected value, perform some retry or
recovery function.

•

Use this action step to create unique file names for faxes and files created
using the other fax action steps.

Also see the help file in /vs/bin/ag/help.
Concat5: Example

Figure 124 on page 460 shows an example of how to define the Concat5
action step.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 459

8

Using Optional Features
Figure 124.

Intuity Script Builder FAX Actions Package
Example of Defining Concat5

FAX_CNG
Note:

FAX_CNG: What It
Does

You cannot use the FAX_CNG action step on calls arriving on
E1/T1 channels.

The FAX_CNG action step allows the application to detect FAX CNG tone.
FAX CNG tone is the tone emitted by a transmitting fax machine after the
start button has been pressed. Using this action step, your application can
listen for the FAX CNG tone and if found, can transfer the call to a fax
machine, a PC equipped with a fax modem, or any other fax reception
system or device that will respond to the CCITT Group 3 fax standard tone.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 460

8

Using Optional Features

Intuity Script Builder FAX Actions Package

When FAX CNG tone detection is activated using the FAX_CNG action step,
the system listens for FAX CNG tone during the next Prompt & Collect action
step. If the system detects FAX CNG tone, it places the value “E” in the
Caller Input Field: (for example, $CI_VALUE). Specify this field in the
Define Prompt and Collect INPUT screen.
Note:

FAX_CNG: How to
Use It

Ring, busy and interflow tones are not detected during the time
that FAX CNG tone detection is active. All other tones, including
touch tones, are detected, however. Deactivate FAX CNG tone
detection soon after FAX CNG tone detection is complete.

To define the FAX_CNG action step:
1 With the cursor in the desired position in the Define Transaction screen
(Figure 60 on page 215), press F 1 (Add).

The system displays the Action Choices menu (Figure 113 on page 436).
2 Select:

> FAX_CNG

The system inserts the FAX_CNG action step in the transaction.
3 Highlight the FAX_CNG action step.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 461

8

Using Optional Features

Intuity Script Builder FAX Actions Package

4 Press F4 (Define).

The system displays the Define FAX_CNG screen (Figure 125 on page
462).
Figure 125.

FAX_CNG:
Arguments

FAX_CNG: Tips

Define FAX_CNG Screen

The FAX_CNG action step has two arguments:
•

FAX CNG Detection Mode: Specify whether the FAX CNG detector is
being activated or deactivated. Select either listen, which activates FAX
CNG detection, or reset, which deactivates FAX CNG detection.

•

Return Field: A negative value indicates a problem was encountered. If
the FAX_CNG action step is successful, the value is 0. See "Repairing
Script Builder FAX Actions Troubles" in Chapter 1, "Troubleshooting," in
Intuity CONVERSANT System Version 7.0 System Reference, 585-313205, for possible return codes and their explanations. Also see the help
file in /vs/bin/ag/help.

•

Check the return value. If it is an unexpected value, perform some retry or
recovery function.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 462

8

Using Optional Features

Intuity Script Builder FAX Actions Package

•

Reset FAX CNG detection as soon as possible.

•

Use a Prompt & Collect action step to get a single touch tone (touch-tone
gate) for best results. If your Prompt & Collect action step expects three
touch tones, it will wait until the third FAX CNG tone is detected before
continuing or might time out if the correct number of touch tones are not
received within the interdigit time-out interval. See FAX_Zapper on page
472 below for an example of this.

•

FAX CNG tone has a 3 second period. In other words, the tone beeps
every 3 seconds. To be sure to catch it, listen for 6 seconds. This
ensures that you do not "catch it between beeps." That is, make the
"Initial Timeout" parameter on page 2 of the "Define Prompt & Collect"
equal to 6.

•

Use the FAX_CNG action step to receive FAXes into a system mailbox. To
do this, once FAX CNG tone is detected, use the FAX_Get action step.

FAX_CNG: Example Figure 126 on page 464 shows an example of how to define the FAX_CNG

screen.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 463

8

Using Optional Features
Figure 126.

Intuity Script Builder FAX Actions Package
Example of Defining FAX_CNG

Loading and Printing FAXes
Sending Graphic
Files and Text Files

Script Builder FAX Actions can send either graphic files and/or text files to the
caller.
Graphic Files

Load graphic files into the system using the FAX Loading and Printing
screen. During loading, the pages are faxed into the system and stored as
files on the system hard disk. The system uses the TIF Class F file format.
Once loaded into the system, these faxes are available to the FAX_Send and
FAX_CovrPage action steps.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 464

8

Using Optional Features

Intuity Script Builder FAX Actions Package

Text Files

Text files, like graphic files, are stored on the system hard disk. However,
they are stored in text format. To create text files, you can:

Accessing the FAX
Loading and
Printing Screen

•

Use a text editor such as “vi” from the system console.

•

Echo text into a file from the system console or from a running application
(for example, “echo hello world > /tmp/textfile” puts the text “hello world”
into the text file /tmp/textfile).

•

Execute a database query and put its output into a text file.
1 Start at the Voice System Administration menu (Figure 127 on page 465).

Figure 127.

Voice System Administration Menu

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 465

8

Using Optional Features

Intuity Script Builder FAX Actions Package

2 Select:

>Application Package Administration
> Script Builder FAX Actions

The system displays the Script Builder FAX Actions menu (Figure 128 on
page 466).
Figure 128.

Script Builder FAX Actions Menu

3 Select:

> FAX Loading and Printing

The system displays the FAX Loading and Printing screen (Figure 129 on
page 467).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 466

8

Using Optional Features
Figure 129.

Intuity Script Builder FAX Actions Package
FAX Loading and Printing Screen

4 Provide the following information on the FAX Loading and Printing screen:

Note:

Your system comes with ten faxes loaded: fax1, fax2, ..., fax3.

~ Code — This is an arbitrary four-digit code for each fax.
~ FAX ID — Entries in this field must be in the form faxN, where N is a

number. For example, fax1, fax2,..., fax100, fax101,..., fax998, fax999.
Fax999 is the highest FAX ID allowable. To load more than 999 faxes
into your system, see Loading More Than 999 Faxes into the System
on page 484.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 467

8

Using Optional Features
Note:

Intuity Script Builder FAX Actions Package

When you enter the FAX ID, the system displays an asterisk in
front of it. This means the fax has not yet been loaded into the
system. When the fax is loaded into the system, the asterisk
disappears.

~ Comments — Enter information here that will help you remember what

the fax is. This is an optional field.
Loading the Fax

1 To load the faxes, press the FA X- AD M key.

The system displays the FAX Administration menu (Figure 130 on page
468).
Figure 130.

FAX Administration Menu

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 468

8

Using Optional Features

Intuity Script Builder FAX Actions Package

2 Press the LO AD -F X key.

The system displays the Enter A FAX Channel for Loading window
(Figure 131 on page 469).
Figure 131.

FAX Channel for Loading Window

3 Enter the channel number.

The system displays an information screen (Figure 132 on page 469).
Figure 132.

Loading Fax Information Screen

4 Complete the following Steps a through d:
a Place the document you want to load into your fax machine.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 469

8

Using Optional Features

Intuity Script Builder FAX Actions Package

b Dial the fax channel extension.
c Press the start button on your fax machine.
d Press any key to continue.
Printing the Fax

To print a fax:
1 Press PR IN T-F X from the FAX Administration menu (Figure 130 on page

468).
The system displays the Destination for PRINT window (Figure 133 on
page 470).
Figure 133.

Destination for PRINT Window

2 Enter the telephone number of a fax machine to which the fax is to be

printed. Valid entries are:
~ A string constant enclosed in quotes, for example, “9-6148683608”
~ The name of a field that contains a string constant

The following characters can be used in the Destination Number:
field: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, asterisk (*), pound sign (#), comma (,),
and dash (-).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 470

8

Using Optional Features

Note:
Searching for
Available Faxes

Intuity Script Builder FAX Actions Package

•

Using a comma (,) causes a 1-second pause during dialing on lines
in all equipment groups, both digital (T1) and analog (Tip/Ring). For
longer pauses, multiple commas can be used.

•

For lines in analog equipment groups, using a dash (-) causes a
short (0.1-second) pause during dialing.
The dash (-) cannot be on digital (T1) lines.

1 To search for a fax available to the system, press S EA RC H from the FAX

Loading and Printing screen (Figure 129 on page 467).
The Search for FAX screen appears (Figure 134 on page 471).
Figure 134.

Search for FAX Screen

2 In the Search field:, select one of the following to use as the key for the

search:
~ Code
~ FAX ID
~ Comments

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 471

8

Using Optional Features

Intuity Script Builder FAX Actions Package

3 In the Search for: field, select the value of the field that you are

searching for (for example, Top of Cover Page).
4 Press SAV E to begin the search.

The system places the cursor on the result of the search, if any.

FAX_Zapper
FAX_Zapper is a user-modifiable, remotely administrable fax-back or fax-ondemand application. It uses Script Builder FAX Actions to allow callers to:
•

Retrieve faxes of their choosing from a menu of available faxes —
Faxes can be sent to any fax machine or can be sent directly to the caller
if calling from a fax machine.

•

Send voice-annotated faxes to the system fax mailbox

•

Reach an attendant

•

Transfer to an extension

•

Listen to an information announcement

The application can be modified from either the system console through
Script Builder or remotely using a telephone and/or fax machine. Remotely,
the user can:
•

Retrieve faxes left by callers in the system mailbox

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 472

8

Using Optional Features

Intuity Script Builder FAX Actions Package

•

Broadcast a fax to a broadcast mailing list

•

Administer the broadcast mailing list

•

Administer the main system prompts
~ Greeting
~ Main Menu
~ Fax Menu
~ Good-bye Message

•

Change faxes available for callers to retrieve

Figure 135 on page 474 shows a simplified functional diagram for the
FAX_Zapper. Figure 136 on page 475 shows a more detailed flow diagram.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 473

8

Using Optional Features
Figure 135.

Intuity Script Builder FAX Actions Package
FAX_ Zapper Functional Diagram

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 474

8

Using Optional Features
Figure 136.

Intuity Script Builder FAX Actions Package
FAX_Zapper Flow Diagram

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 475

8

Using Optional Features

Intuity Script Builder FAX Actions Package

Installing and Using To install and use the FAX_Zapper:
the FAX_Zapper
1 Make sure you have the floppy disks containing FAX_Zapper. There are

four disks:
~ One for the transaction
~ One for the application databases
~ Two for the speech
2 From the Voice System Administration menu (Figure 127 on page 465),

select:

> Script Builder Applications

The system displays the Script Builder Applications menu (Figure 137 on
page 477).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 476

8

Using Optional Features
Figure 137.

Intuity Script Builder FAX Actions Package
Script Builder Applications Menu

3 Select:

> ADD NEW APPLICATION

The system displays the New Application screen (Figure 138 on page
478).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 477

8

Using Optional Features
Figure 138.

Intuity Script Builder FAX Actions Package
New Application Screen

4 Add an application named FAX_Zapper.
5 Press F6 (Restore) and follow the instructions on the screen to restore

the entire application.
! CAUTION:
If you do not use the name FAX_Zapper, the application will not be able to
find needed files where it expects to find them. You can rename the
application if desired once it is RESTORED via Script Builder. If you do, be
sure to change the references to FAX_Zapper in the application as
appropriate.
6 Verify and install the application using Script Builder.
7 Make sure at least one fax channel is in service. See “Configuration

Management,” in Chapter 3, “Voice System Administration,” in Intuity
CONVERSANT System Version 7.0 Administration, 585-313-501, for
information about how to administer a channel.
8 Assign FAX_Zapper to a voice channel.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 478

8

Using Optional Features

Intuity Script Builder FAX Actions Package

Call the application from a fax machine (to put faxes in or to get faxes out
on the current call) or from a telephone (to retrieve faxes by entering a
delivery number or to administer the FAX_Zapper).
9 The default ADMIN_SECURITY_CODE is “1234.” Enter this when

prompted by the FAX_Zapper.
Modifying
FAX_Zapper

For the sake of simplicity and to make the application suitable for most users,
the FAX_Zapper does not use host, text-to-speech, or speech recognition
operations. However, you can modify FAX_Zapper to use these and any
other system capabilities.
Table 38 on page 479 lists examples of modifications and how you can make
them. These are only suggestions. There are many ways of implementing
any given capability.
Table 38. FAX_Zapper Modifications and How to Implement Them

Modification/Additional
Capability

How to Implement

Re-record the Hello, Main
Menu, Fax Menu or Goodbye prompts

Call the FAX_Zapper and use the
telephone-based administration (default
password is “1234”) or use Script
Builder’s Speech Administration screens.
1 of 3

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 479

8

Using Optional Features

Intuity Script Builder FAX Actions Package

Table 38. FAX_Zapper Modifications and How to Implement Them

Modification/Additional
Capability

How to Implement

Change one of the eight
faxes available for callers
to retrieve

Call the FAX_Zapper from a fax machine
and use the telephone-based
administration or use Script Builder FAX
Actions FAX Loading and Printing.

Increase the number of
faxes available for callers
to retrieve

Use Script Builder to change the logic of
the fax menu to add choices. Then use
Script Builder FAX Actions FAX Loading
and Printing to load the faxes.

Increase the number of fax
mailboxes

Use Script Builder to modify the program
flow to allow callers to specify the
intended recipient of the fax. Create a
new local database table to hold the
details of each mailbox: owner,
password, etc. Create logic to allow
mailbox owners to retrieve faxes.

Provide broadcast fax
mailing lists for each
mailbox owner

Use Script Builder to modify the program
flow. Create a new local database table
to hold the details of each mailbox
owner’s mailing lists.
2 of 3

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 480

8

Using Optional Features

Intuity Script Builder FAX Actions Package

Table 38. FAX_Zapper Modifications and How to Implement Them

Modification/Additional
Capability

How to Implement

Expand audiotext
information

Use Script Builder to modify the program
flow. Use Script Builder Speech
Administration to record the audiotext
information or implement a telephonebased recording capability like the one in
the current FAX_Zapper.

Change the name of the
FAX_Zapper

Use Script Builder to copy FAX_Zapper
to a name of your choosing. Be sure to
modify any pathnames in the application
that contain FAX_Zapper.
3 of 3

Application Performance Considerations
The following information and suggestions will help optimize the performance
of applications that use Script Builder FAX Actions.
Note:

As an application developer, you are responsible for making sure
your application is logically correct and as pleasant for the caller to
use as possible. Thorough testing, including testing under load, is
recommended before any application is made available to callers.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 481

8

Using Optional Features

Intuity Script Builder FAX Actions Package

•

Make sure that any commands, programs, or shell scripts you execute via
the Exec_UNIX action step do not have long execution times. The longer
the execution time, the longer the potential delay to the caller. If delays are
unavoidable, be sure to ask the caller to “Please wait.” If necessary, limit
the number of channels on which the service is running.

•

Sending text files is more processing intensive than sending fax images.
This is because the system must first convert the text file to fax format
before transmission can occur. File conversions could create delays that
are noticeable to the caller. If you use the same text file repeatedly
throughout a single call, a single application, or among several
applications, enter the text file into the system as a fax image via the FAX
Loading and Printing screen. Use text files only when they involve
dynamic information. Avoid using large text files whenever possible.

Fax Broadcasting
A fax broadcasting capability allows the administrator to create and modify a
broadcast mailing list containing the telephone numbers of fax machines that
will receive the broadcast. It also allows the administrator to load a fax into
the system and broadcast this fax to the mailing list created.
Note:

The FAX_Zapper application contains a fax broadcasting
capability that can be used as a model for fax broadcasting within
a running application.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 482

8

Using Optional Features

Intuity Script Builder FAX Actions Package

Another way to broadcast faxes is from the console command line. You can
write a utility that sends a fax to many recipients using the faxit command.
See faxit on page 488 for more detail.
The shell script language fragment below shows one way to broadcast a fax.
In this utility, the fax “/tmp/FAXfile” is sent to four telephone numbers (5551111,..., 555-4444). The fax is sent immediately instead of waiting for the
economy delivery time.
### Start broadcasting shell script
# create a text file containing the “hello world” banner
echo hello world > /tmp/FAXfile
for phone_number in 5551111 5552222 5553333 5554444
do
# send the hello world banner to each number
/vs/bin/tools/faxit /tmp/FAXfile $phonenumber “no”
done
### End broadcasting shell script

Another option in broadcasting a fax is to read the telephone number
destinations from a file instead of “hardcoding” them within the shell script.
That way, the address list can be updated easily. This shell script can be
executed
•

From the command line

•

From crontab

•

By a Script Builder application using the Exec_UNIX action step and
called from a remote location

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 483

8

Using Optional Features

Intuity Script Builder FAX Actions Package

Loading More Than 999 Faxes into the System
FAX IDs in the FAX Loading and Printing screen go up to “fax999.” This
means that the FAX Loading and Printing screen and the directory that
supports it can hold only 999 faxes at a time. However, you can load your
faxes into this screen, then move them to a different directory. This enables
you to load as many faxes into the system as the hard disk will contain. The
following procedure summarizes how to load more than 999 faxes into the
system.
1 Load the fax through the FAX Loading and Printing screen as described in

Loading and Printing FAXes on page 464. These faxes are stored on the
system hard disk in the directory /usr/faxdb/FR/WORKFAX. The file
names are the same as the FAX ID (for example, “fax1” through “fax999”).
2 Copy the file from /usr/faxdb/FR/WORKFAX to a different location of

your choosing.
3 In your FAX_Queue action step, reference the moved file by its full

pathname.
For example, if you move the file /usr/faxdb/FR/WORKFAX/fax1 to the
file /usr/mydir/myfax, enter /usr/mydir/myfax into the Fax File: field in
your FAX_Queue action step.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 484

8

Using Optional Features

Intuity Script Builder FAX Actions Package

How to Use the faxlog Command
Every fax transmission or reception attempt results in an entry to the faxlog
command output. The faxlog command provides the following information for
each fax:
•

Indication of whether fax is incoming or outgoing

•

Start time of the transmission or reception

•

Job identification of the fax

•

Destination of the fax [a dash (–) indicates an incoming fax]

•

Length of the transmission or reception

•

Number of pages

•

Status of the fax

Figure 139 on page 486 shows the output from the faxlog command. See
Appendix A, “Summary of Commands,” of Intuity CONVERSANT System
Version 7.0 Administration, 585-313-501, for additional information.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 485

8

Using Optional Features
Figure 139.

Intuity Script Builder FAX Actions Package
faxlog Output

Using Script Builder FAX Actions in Non-Script-Builder (TAS) Applications
To use the Script Builder FAX Actions capabilities within non-Script-Builder
(or TAS script applications) use the code fragments generated by Script
Builder FAX Actions as models. This code is in the /vs/bin/ag/eascripts
directory.

Troubleshooting
Script Builder FAX Actions and Script Builder provide diagnostic and
troubleshooting information with the tools described in this section. See the
maintenance book for your platform for more troubleshooting information.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 486

8

Using Optional Features

Intuity Script Builder FAX Actions Package

HELP Screens

To access HELP screens, press HE LP when defining any Script Builder FAX
Actions action step. The HELP screen provides information about how to use
the particular action step.

Script Builder
Action Step Return
Values

You can generally diagnose problems related to using the Script Builder
action steps including Script Builder FAX Actions using the values returned
by the action steps (return values). For the most part, negative return values
indicate problems. If you receive a negative return value, see the HELP
screens associated with the action step that returned it, the troubleshooting
section in the maintenance book for your platform, or the explain text
associated with any resulting error log entries. These sources will give you
information about how to interpret the return value and actions necessary to
remedy the problem.

Application Tracing The tracing utility allows you to monitor each step of a running application

including any DIP interactions that occur. See Appendix A, “Summary of
Commands,” in Intuity CONVERSANT System Version 7.0 Administration,
585-313-501, for more information about the trace command. You can
frequently use the error indications in trace output to identify problems. Trace
the sbFaxProc for information about the Script Builder FAX Actions DIP. To
trace the sbFaxProc, enter /vs/bin/trace sbFaxProc at the system console.
To exit trace, press DE L .

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 487

8

Using Optional Features

Intuity Script Builder FAX Actions Package

FAX Transmission
Control

The FAX Transmission Control screen provides a list of and information
about the faxes currently in the transmission queue. From there you can
remove faxes from the transmission queue. For information on how to use the
FAX Transmission Control screen, see Chapter 4, “Feature Package
Administration,” in Intuity CONVERSANT System Version 7.0 Administration,
585-313-501.

faxit

The faxit command allows you to queue a fax and/or send a fax from the
UnixWare prompt. To use it, enter one of the following:
•

To queue a fax, enter: /sbfax/bin/faxit -q -f FAX_File

•

To send a fax, enter: /sbfax/bin/faxit -s -n delivery_number
[-t delivery_time _in_hhmm] [-i retry_interval_in_minutes]
[-c retry_count] [-T “TSI_string”] [-G Equipment_Group]

•

To queue and send a fax, enter: /sbfax/bin/faxit -S -f fax_file
-n delivery_number [-t delivery_time_in_hhmm]
[-i retry_interval_in_minutes] [-c retry_count] [-T “TSI_string”]
[-G Equipment_Group

Refer to Appendix A, “Summary of Commands,” of Intuity CONVERSANT
System Version 7.0 Administration, 585-313-501, for complete syntax of the
faxit command.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 488

8

Using Optional Features

Error Log Reports

Using ASAI

The Intuity CONVERSANT system logger keeps track of information the
system generates about its own performance, including FAX Actions. When
problems occur in an application or in the system, symptoms frequently
appear in the logger. Each Log message has associated explain text that
explains the message and provides detail that the actual message does not
contain. See Appendix A, “Summary of Commands,” in Intuity
CONVERSANT System Version 7.0 Administration, 585-313-501, and Intuity
CONVERSANT System Reference, 585-313-205, for more information about
how to access the error log information and the explain information.

Using ASAI
The Adjunct/Switch Application Interface (ASAI) is an optional feature
package that provides computer telephony integration (CTI) between
DEFINITY Generic 3 and adjuncts. The ASAI digital signaling interface
package provides a set of predefined capabilities that allow the voice system
to monitor and route calls on the DEFINITY Generic 3. When used in
conjunction with Tip/Ring (T/R), Line Side E1, or Line Side T1 interfaces, the
ASAI interface allows the voice system to monitor and control incoming calls.
It allows access to Automatic Number Identification (ANI) and called party
number (DNIS) and supports ASAI transfer, which is faster and more reliable
than a flash transfer. The full library of ASAI interface software is provided
with the ASAI feature package.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 489

8

Using Optional Features
Note:

Using ASAI

You can use the ANI and DNIS to specify an application for a
caller by assigning *DNIS_SVC to a channel in the Assign
Channel Service screen. Then assign ranges of ANIs and DNISs
in the Assign Number Service screen. Specify the application in
the Service Name field. See Chapter 3, “Voice System
Administration,” in Intuity CONVERSANT System Version 7.0
Administration, 585-313-501.

See Chapter 3, “Adjunct/Switch Application Interface,” in Intuity
CONVERSANT System Version 7.0 Communication Development, 585-313202, for information about establishing the ASAI interface. See Chapter 4,
“Feature Package Administration,” in Intuity CONVERSANT System Version
7.0 Administration, 585-313-501, for information about administering the
ASAI package.
This section contains information on the action steps used to access the
Adjunct/Switch Application Interface (ASAI) capabilities from the Script
Builder environment. The ASAI action steps are listed in Table 39 on page
491.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 490

8

Using Optional Features

Table 39.

Using ASAI

ASAI Action Steps in Script Builder

Action Step

Description

For calls to agents:
A_Callinfo

Used to access ASAI call information on an agent line

A_Tran

Used on system agent (Tip/Ring or LSE1/LST1) line to
transfer a call to a live ACD, live agent, or other station
on the PBX

For call routing:
A_Event

Used to retrieve information related to a call being
monitored by an ASAI domain

A_RouteSel

Used to send an ASAI route select message to the
Private Branch Exchange (PBX)

Defining A_Callinfo
The A_Callinfo action step is used to access call information obtained from
ASAI for a call on a system agent line. The A_Callinfo action returns the
calling party number and called party number associated with an incoming
call to the transaction script environment. The A_Callinfo action also returns a

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 491

8

Using Optional Features

Using ASAI

call ID which identifies the call. In addition, if touch-tone digits entered by the
caller have been collected by the switch, A_Callinfo returns these digits. If the
call was delivered to a switch through a trunk and ANI information for the call
is not available, the Trunk Group Id is returned instead of the calling party
number.
To add the A_Callinfo action step:
1 With the cursor in the desired position in the Define Transaction screen
(Figure 60 on page 215), press F 1 (Add).

The system displays the Action Choices menu (Figure 113 on page 436).
2 Select:

> A_Callinfo

The system inserts the A_Callinfo action step in the transaction.
3 Highlight the A_Callinfo action step.
4 Press F4 (Define).

The system displays the Define A_Callinfo window (Figure 140 on page
493).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 492

8

Using Optional Features
Figure 140.

Defining the
A_Callinfo Fields

Using ASAI
Define A_Callinfo Window

Each of the fields in the Define A_Callinfo window must contain a field name
which returns the following information. See Table 40 on page 496 for a
summary of the information in each of these fields.
! CAUTION:
Specify only “num” field types for those fields in the Define A_Callinfo window
that return numbers, that is, specify num fields or constants for those fields
that are of type num.
•

Calling Party Number: field stores the calling party number, up to 20
characters in length. If the A_Callinfo action step is successful, this field
contains the calling party number, which is the ANI or the caller’s

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 493

8

Using Optional Features

Using ASAI

extension (if available). If the calling party number is not known or the call
was routed from a non-ISDN trunk, a string of length 0 (null value) is
returned.
•

Called Party Number: field stores the called party number (DNIS), up to
20 characters in length. If the Called Party Number is not known, a
string of length 0 (null value) is returned.

•

Switch Data: field stores up to 16 characters. If the switch prompts the
caller for touch-tone digits, the digits are returned in the Switch Data
field. If no digits are collected by the switch, a string of length 0 (null value)
is returned.

•

Trunk Group Id: field indicates whether the incoming call was routed
from a non-ISDN trunk on the switch. If the call was not placed through a
trunk, the value returned is 0.

•

Call Id: field stores the Call Id (assigned by the switch) that identifies
the incoming call. If the Call Id is not known, the value returned is 0.

•

Cause Value: field returns an error cause if the request for call
information is not successful. Note that the error cause is returned if the
Return Field contains a value of -3. See the maintenance book for your
platform for a complete listing of cause values.

•

Universal Call Id: field contains the unique identifier or tag for each
call. If this call is a transfer, the contents of this field is returned to the
A_Tran action step.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 494

8

Using Optional Features

Using ASAI

•

User to User Info: field contains the user-to-user information element
received from the DEFINITY. This field can contain any customer-setable
information to passed by the script along the network.

•

ANI II Digits: field contains a number (0< II < 99) that describes the
class of service of the calling customer (residential, coin, wireless, etc).
This value is used for North American inbound ISDN-PRI trunks.

•

Return Field: field holds the return status of the A_Callinfo action step.
If the A_Callinfo action step is successful, it returns a number greater than
or equal to zero. If A_Callinfo is unsuccessful, it returns one of the
following negative values:
~ -1: A_Callinfo could not send the request for call information. Check

the Message Log Report for system errors. See Chapter 8, “Daily
Administration,” in Intuity CONVERSANT System Version 7.0
Administration, 585-313-501, for additional information.
~ -2: A_Callinfo did not receive a response from the ASAI for the request

for information. Check to see if the ASAI system is running.
~ -3: ASAI could not process the request for information. Check the

Cause Value field for information on why the request failed.
~ -4: The ASAI link is down and call information cannot be received from

the switch. See the maintenance book for your platform about
troubleshooting the ASAI digital link.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 495

8

Using Optional Features

Using ASAI

~ -5: The system received an illegal request. The call is not being

monitored so no call information is available. Make certain that
A_Callinfo is being used only in a script assigned to a system agent
line (channel) and that the domain with which the call is associated is
being monitored by the system. See Chapter 4, “Feature Package
Administration,” in Intuity CONVERSANT System Version 7.0
Administration, 585-313-501, for information on channel administration
and domain administration, including how to monitor a channel.
~ -6: The switch did not respond with the call information.
Table 40.

A_Callinfo Fields

Field

Input/Output

Required?

Field Type

Field Size

Calling Party Number

Output

Required

Char

20

Called Party Number

Output

Required

Char

20

Switch Data

Output

Required

Char

16

Trunk Group ID

Output

Required

Num

–

Call Id

Output

Required

Num

–

Cause Value

Output

Required

Num

–

Universal Call Id

Output

Optional

Char

20
1 of 2

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 496

8

Using Optional Features
Table 40.

Using ASAI

A_Callinfo Fields

Field

Input/Output

Required?

Field Type

Field Size

User to User Info

Output

Optional

Char

32

ANI II

Output

Optional

Num

–

Return Field

Output

Optional

Num

–
2 of 2

Defining A_Tran
The A_Tran action is used by voice scripts running on system agent (Tip/Ring
or LSE1/LST1) lines to transfer a call to a live ACD, live agent, or other
station on the PBX. To do so, the A_Tran action takes control of the incoming
call, puts the call on hold, places a call to the Destination Number and, if the
call is not busy or denied, merges the original call with the call to the
Destination Number. If the call is busy or denied, A_Tran drops the call to the
Destination Number, reconnects to the original caller, and relinquishes
control of the original incoming call.
Note:

A_Tran merges the original incoming call with the second call only
after determining that the second call has been placed
successfully. This is important when using A_Tran to transfer to
VDNs/vectors. The second call is considered to have been placed
successfully if it becomes queued or alerts at an agent’s

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 497

8

Using Optional Features

Using ASAI

telephone. Before the two calls are merged to complete the
transfer, the original caller remains on hold. In some cases, you
may want the system to perform additional vector processing after
the call is transferred (for example, play announcements or
perform call prompting operations). You must force the transfer to
complete before such operations are performed. Examples
include queuing the call to the agent split before playing
announcements and queuing the call to a dummy split before
performing call prompting operations. No ports or stations need
be dedicated to establish a dummy split. To ensure that a “queue
to” step causes calls to be queued to a dummy split, however, the
dummy split should be made vector controlled and queue slots
should be assigned to it.
To add the A_Tran action step:
1 With the cursor in the desired position in the Define Transaction screen
(Figure 60 on page 215), press F 1 (Add).

The system displays the Action Choices menu (Figure 113 on page 436).
2 Select:

> A_Tran

The system inserts the A_Tran action step in the transaction.
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 498

8

Using Optional Features

Using ASAI

3 Highlight the A_Tran action step.
4 Press F4 (Define).

The system displays the Define A_Tran window (Figure 141 on page 499).
Figure 141.

Define A_Tran Window

Defining the A_Tran Each of the fields in the Define A_Tran window must contain a field name or
Fields
constant which returns the following information. See Table 41 on page 504

for a summary of the information in each of these fields.
! CAUTION:
Specify only num field types or constants for fields of type num.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 499

8

Using Optional Features

Using ASAI

•

Destination Number: field contains either a number or the name of a
field that contains a number indicating where the call is to be transferred.
This field must be a valid extension number (for example, ACD hunt group
extension, VDN, or station) or external address (for example, Direct
Distance Dialing Number). The Destination Number can be up to 20
digits in length. If calls will be transferred to a number that is not on the
switch, the Destination Number can contain a Trunk Access Code or
Automatic Alternate Routing/Automatic Route Selection.

•

Split Extension: field is used only for direct agent calls. This field
contains either a number or the name of a field that contains a number
identifying a valid ACD split. This field can be up to 5 digits in length. If this
field is used, the call is treated as a direct agent call and transferred to the
agent identified in the Destination Number field via the split identified in
the Split Extension field. If the Split Extension field contains no
digits (null value), the call is treated as a normal call rather than a direct
agent call. An empty split extension is entered by leaving the field blank
as opposed to entering “ “.

•

Priority Call: field indicates whether the call is to be delivered as a
regular or priority call. This field must contain either yes or no or a field
name that can contain either of these two values. Select yes if you want
the call delivered as a priority call. Select no if you want the call delivered
as a regular call. If you do not select yes, the call is delivered as a regular
call.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 500

8

Using Optional Features

Using ASAI

•

VIS Data: contains up to 20 characters of any type of information that is
saved and later used by the A_Event action. The data provided in this
field is sent in the VIS Data field that appears in all messages received by
the A_Event action for the transferred call, provided that the call is
reported on either a CTL, VDN, or ACD type domain for the non-voice
application.

•

Call State: stores the status of the call. If a call transfer was attempted,
this field holds one of the following values:
~ 0: Call State information is not available.
~ 1: The Destination Number is ringing (alerting).
~ 4: The transfer was denied. Check the Cause Value field for additional

information.
~ 5: The Call to the Destination Number is queued until a line becomes

available.
~ 7: The Destination Number is busy.
~ 8: The destination address seized a non-ISDN trunk (trunk seizure).
~ 9: The destination address is interworking with a non-ISDN trunk (cut-

through).
Note:

The Call State field contains the status of the call when A_Tran
returns 0, -53, -60, -61, and -62 in Return Field.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 501

8

Using Optional Features
•

•

Using ASAI

Cause Value: returns an error cause if the transfer is not successful.
Note that the Cause Value field contains the reason for the failure if
A_Tran returns -16, -17, -18, -19, or -20 in the Return Field. Otherwise, if
A_Tran is successful, the Cause Value is set to -1. See the maintenance
book for your platform for a complete listing of Cause Values.
Universal Call Id: contains the unique identifier or tag for every call

received.
•

User to User Info: contains the user-to-user information element to be
sent. This field can contain any customer-setable information to passed
by the script along the network.

•

Return Field: returns a code indicating whether A_Tran was
successful. A_Tran attempts to complete (merge) the transfer if the call is
not busy or denied. If the A_Tran action is successful, it returns a number
greater than or equal to zero. Otherwise A_Tran reconnects back to the
original caller if necessary and returns one of the following negative
values:
~ -1: A_Tran could not send the request to take control of the original call.

Check the Message Log Report for system errors. See Chapter 8,
“Common Administration,” in Intuity CONVERSANT System Version
7.0 Administration, 585-313-501, for more information.
~ -2: A_Tran did not receive a response from the ASAI for the request to

take control of the original call. Check to see if the ASAI system is
running.
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 502

8

Using Optional Features

Using ASAI

~ -4: The ASAI Link is down and transfer information cannot be

performed. See the maintenance book for your platform for information
on troubleshooting the ASAI digital link.
~ -5: The system received an illegal request. The call is not being

monitored so no transfer information is available. See Chapter 4,
“Feature Package Administration,” in Intuity CONVERSANT System
Version 7.0 Administration, 585-313-501, for information on channel
administration and domain administration.
~ -6: The switch did not respond with the transfer information.
~ -8: The original call doesn’t exist on the specified channel.
~ -9: ASAI could not send the request to the switch. See the

maintenance book for your platform for information on troubleshooting
the ASAI digital link.
~ -10: ASAI ran out of all cluster IDs.
~ -11: The Destination Number field exceeds 20 characters.
~ -12: The Destination Number field is empty.
~ -13: The Split Extension field exceeds 5 characters.
~ -14: The VIS Data field exceeds 20 characters.
~ -16: A_Tran did not receive an error from the ASAI system when trying
control of the original call. Check the Cause Value field.
~ -17: A_Tran received an error from the ASAI system when trying to put
the original call on hold. Check the Cause Value field.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 503

8

Using Optional Features

Using ASAI

~ -18: A_Tran received an error from the ASAI system when trying to
place the to the Destination Number. Check the Cause Value field.
~ -19: A_Tran received an error from the ASAI system when trying to

complete (merge) the transfer. Check the Cause Value field for
information on why the request failed.
~ -20: A_Tran dialed out to the Destination Number but the call was
busy or denied. Check the Call State and Cause Value fields for the

reason why the request failed.
Table 41.

A_Tran Fields

Field

Input/Output

Required?

Field Type

Field Size

Destination Number

Input

Required

Char

20

Split Extension

Input

Optional

Char

5

Priority Call?

Input

Required

Char

4

VIS Data

Input

Required

Char

20

Call State

Output

Required

Num

–

Cause Value

Output

Required

Num

–
1 of 2

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 504

8

Using Optional Features
Table 41.

Using ASAI

A_Tran Fields

Field

Input/Output

Required?

Field Type

Field Size

Universal Call Id

Output

Optional

Char

20

User to User Info

Input

Optional

Char

32

Return Field

Output

Optional

Num

–
2 of 2

Defining A_Event
The A_Event action step retrieves information related to a call being
monitored by an ASAI domain. This action must be used with all scripts
assigned to a domain. The A_Event action step can return the following types
of events:
•

Abandon Events — A monitored call is dropped or the caller hung up.

•

Connect Events — A monitored call is being delivered to an agent.

•

End Events — A monitored call has ended normally (that is, it was not
abandoned).

•

Route Request Events — The switch has requested routing for a
particular call.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 505

8

Using Optional Features

Using ASAI

•

Abnormal Route End Events — The switch is reporting that the routing
failed due to some reason specified in the Cause Value field.

•

Trunk Seizure — A monitored call is being delivered to an agent.

! CAUTION:
Do not use the A_Event action step in a script assigned to a voice channel.
This action step is not compatible with voice domain transactions.
To add the A_Event action step:
1 With the cursor in the desired position in the Define Transaction screen
(Figure 60 on page 215), press F 1 (Add).

The system displays the Action Choices menu (Figure 113 on page 436).
2 Select:

> A_Event

The system inserts the A_Event action step in the transaction.
3 Highlight the A_Event action step.
4 Press F4 (Define).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 506

8

Using Optional Features

Using ASAI

The system displays the Define A_Event window (Figure 142 on page
507).
Figure 142.

Define A_Event Window

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 507

8

Using Optional Features

Defining the
A_Event Fields

Using ASAI

Each of the fields in the Define A_Event screen must contain a field name
(Table 42 on page 515) which returns the following information:
! CAUTION:
Specify only num field types or constants for fields of type num.
•

Connected Party Number: returns a number or extension, depending on

the event being reported.
~ For the “C” (Connect) event, the field returns the alerted extension

(answering extension) if the “C” event is triggered on the alerting or
connect message from the switch.
~ If A_Event indicates the call has ended (the Return Field value is
“E”), the Connected Party Number field contains the number of the

last connected or alerted party.
~ If A_Event indicates the call is abandoned (the Return Field value is
“A”), the Connected Party Number field returns an alerted agent

extension or a string of length 0 (null value) depending on when the call
was abandoned. If the call was abandoned before agent selection, the
Connected Party Number field returns a string of length 0 (null value).
~ The Connected Party Number field returns the string TRUNK for the

“T” (TRUNKSZR) event. If the call was abandoned after agent
selection, the Connected Party Number field returns the extension of
the agent that was alerted for the call prior to the abandon.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 508

8

Using Optional Features

Using ASAI

If the Connected Party Number is not known, a string of length 0 (null
string) is returned.
~ If A_Event is reporting a route request (the Return Field value is “R”),

a string of length 0 (null value) is returned. The value can be up to 20
characters in length.
•

Calling Party Number: stores up to 20 characters. If the A_Event
action is successful, this field contains the calling party number, which is
the ANI or the caller’s extension. If the Calling Party Number is not
known or the call was routed from a non-ISDN trunk, a string of length 0
(null value) is returned. If the value returned from the Other Call Id
field is not 0, then the Calling Party Number returns the number of the
original calling party.

•

Called Party Number: stores the called party number. The value
returned in the Called Party Number field can be up to 20 characters in
length. If the Called Party Number is not known, a string of length 0 (null
value) is returned. If the value returned from the Other Call Id field is
not 0, then the Called Party Number returns the number that was
originally dialed.

•

Switch Data: stores up to 16 characters. If the switch prompts the caller
for touch-tone digits, the digits are returned in the Switch Data field. If no
digits are collected by the switch, a string of length 0 (null value) is
returned.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 509

8

Using Optional Features

Using ASAI

•

Trunk Group Id: indicates whether the incoming call was routed from a
non-ISDN trunk on the switch. If the call was not placed through a trunk
the value returned is 0.

•

Call Id: stores the Call Id (assigned by the switch) that identifies the
incoming call. If the Call Id is not known, the value returned is 0.

•

Other Call Id: returns a number (assigned by the switch) that identifies
the original call that was transferred. The script developer can use this
field to associate subsequent events that occur from a previous call. If the
field is 0, then A_Event cannot relate this event with any other call. If the
call is a new incoming call to a monitored domain, the field is always 0. If
it is a transfer call, the field value depends on the type of transfer that was
completed. A consult transfer returns a nonzero value only when the
transfer call is directed to a nonmonitored domain. A blind transfer always
returns a nonzero value. See the information on agent-to-agent transfers
in Chapter 4, “Adjunct/Switch Application Interface,” in Intuity
CONVERSANT System Version 7.0 Communication Development, 585313-202.

•

LAI Display Info: returns the Look Ahead Interflow (LAI) display
information for the call. The value returned in this field depends on the call
flow and whether or not the LAI feature (a PBX feature) is used. When the
LAI feature is used to connect calls from one call center to another, this
information can be used to determine which call center application was
handling the caller on the originating switch. The originating switch can be
administered such that the LAI Display Info field will contain the

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 510

8

Using Optional Features

Using ASAI

originally dialed number the caller used at the originating switch. If the LAI
feature is not used to connect calls from one switch to another, a string of
length 0 (null value) is returned.
•

VIS Data: returns a value previously saved in the VIS Data field of the
A_Tran action in a voice script. If the call was not previously transferred
using A_Tran, a string of length 0 (null value) is returned. For example, a
voice script that responds to an incoming call to the system (on a channel
administered for ASAI) collects information from the caller and saves
information in the VIS Data field of the A_Tran action and then uses
A_Tran to transfer the call to a domain administered on the system. When
A_Event reports the Abandon, Connect, Trunk Seizure, or End events
(Return Field contains “A”, “C,” “T,” or “E”) for that call, this field returns
the saved information.

•

Routing ID: contains a unique number that identifies the route request if
A_Event is indicating a route request (that is, the Return Field contains
an “R”). This number is needed if the A_RouteSel action is used to
respond to the route request. If the Routing ID is not known, the value
returned is 0.

•

Cause Value: returns an error cause from the switch if the request to
route the call is not successful. Note that the error cause is returned if the
Return Field contains a value of “r” or 114 (indicating an ABNORMAL
ROUTE END event). Possible error causes include the following:

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 511

8

Using Optional Features

Using ASAI

~ “0”: The Destination Number provided in the A_RouteSel action is

invalid and does not exist on the switch.
~ “1”: The switch is unable to route the call to the Destination Number

because the destination is busy (that is, the destination currently has
an active call).
~ “8”: The call dropped while waiting for a routing response. The caller

probably hung up before the call has been routed.
~ “12”: The vector processing on the switch encountered steps other

than wait, announcement, goto, or stop after the adjunct routing
command.
~ “13”: Upon routing to the Destination Number (for direct agent call), the

Destination Number is not logged in to the specified Split Extension.
~ “14”: The Destination Number (for direct agent call) is not a member of

the specified Split Extension in the A_RouteSel action step.
Each ABANDON, CONNECT, END, ROUTE REQUEST, TRUNK
SEIZURE, and ABNORMAL ROUTE END event returns information
pertaining to the event. Table 43 on page 516 indicates what fields the
A_Event action step returns for each event.
•

Universal Call Id: contains the unique identifier or tag for each call. If
this call is a transfer, the contents of this field is returned to the
A_RouteSel action step.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 512

8

Using Optional Features

Using ASAI

•

User to User Info: contains the user-to-user information element
received from the DEFINITY. This field can contain any customer-setable
information to passed by the script along the network.

•

ANI II Digits: contains a number (0< II < 99) that describes the class
of service of the calling customer (residential, coin, wireless, etc). This
value is used for North American inbound ISDN-PRI trunks.

•

Return Field: a return code indicating what type of event (if any) is
being reported. If the A_Event action is successful, it returns a number
greater than or equal to zero. See Table 44 on page 518 for additional
information. If A_Event is unsuccessful, it returns one of the following
negative values.
~ -1: A_Event could not send the request for call information. Check the

Message Log Report for system errors. See Chapter 8, “Common
Administration,” in Intuity CONVERSANT System Version 7.0
Administration, 585-313-501, for additional information.
~ -2: A_Event did not receive a response from the ASAI for the request

for information. Check to see if the ASAI system is running. See the
maintenance book for your platform for more information.
~ -4: The ASAI link is down and call information cannot be received from

the switch.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 513

8

Using Optional Features

Using ASAI

~ -5: The system received an illegal request. The channel requesting the

information is not a channel assigned by an ASAI domain to receive
event messages. Make certain that you are using A_Event only in a
non-voice script.
When developing a program using Script Builder, A_Event returns an
integer value in the Return Field to indicate the type of event
(ABANDON, END, CONNECT, ROUTE REQUEST, TRUNK SEIZURE, or
ABNORMAL ROUTE END) that is being reported. The possible values
65, 67, 69, 82, 84, or 114 correspond to the ASCII representation of the
first letter for each type of message.
For example, if an ABANDON is being reported, you can use the following
evaluate statement:
Evaluate:
if ReturnCode = “‘A’”
is the same as
if ReturnCode = 65
65 = “‘A’” — ABANDON
67 = “‘C’” — CONNECT
69 = “‘E’” — END
82 = “‘R’” — ROUTE REQUEST
84 = “‘T’” — TRUNK SEIZURE
114 = “‘r’” — ABNORMAL ROUTE END
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 514

8

Using Optional Features

Table 42.

Using ASAI

A_Event Fields

Field

Input/Output

Required?

Field Type

Field Size

Connected Party Number

Output

Required

Char

20

Calling Party Number

Output

Required

Char

20

Called Party Number

Output

Required

Char

20

Switch Data

Output

Required

Char

16

Trunk Group Id

Output

Required

Num

–

Call Id

Output

Required

Num

–

Other Call Id

Output

Required

Num

–

LAI Display Info

Ouput

Required

Char

15

VIS Data

Output

Required

Char

20

Routing ID

Output

Required

Num

–

Cause Value

Output

Required

Num

–

Universal Call Id

Output

Optional

Char

20
1 of 2

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 515

8

Using Optional Features

Table 42.

Using ASAI

A_Event Fields

Field

Input/Output

Required?

Field Type

Field Size

User to User Info

Output

Optional

Char

32

ANI II Digits

Output

Optional

Num

–

Return Field

Ouput

Optional

Num

–
2 of 2

Table 43.

Fields Returned by A_Event for Each Event

A_Event Field

Event (X if field returned)
TRUNKSZR CONNECT
ABANDON END

ROUTE
REQUEST

ABNORMAL
ROUTE END

Connected Party
Number

X

Calling Party Number

X

X

X

Called Party Number

X

X

X

Switch Data

X

X

X

Trunk Group Id

X

X

X
1 of 2

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 516

8

Using Optional Features
Table 43.

Using ASAI

Fields Returned by A_Event for Each Event

A_Event Field

Event (X if field returned)
TRUNKSZR CONNECT
ABANDON END

ROUTE
REQUEST

ABNORMAL
ROUTE END

Call Id

X

X

X

Other Call Id

X

X

LAI Display Info

X

X

VIS Data

X

Routing ID

—*

Cause Value

X

X

X

Universal Call Id

X

X

X

User to User Info

X

X

X

ANI II Digits

X

X

X

Return Value

X

X

X
2 of 2

* The Routing ID field returns the ASAI cluster Id of the domain that reported these events.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 517

8

Using Optional Features

Table 44.

Using ASAI

A_Event Return Field Value Meaning

Return Value

Meaning

Explanation

65

ABANDON

The caller abandoned the call before the agent answered
it.

67

CONNECT

If CONNECT is sent on alerting message, this indicates
that the agent specified in the Connected Number field
has been alerted. If CONNECT is sent on connect
message, then this indicates that the agent specified in
the Connected Number field has answered the call.

69

END

The call ended. The caller has been disconnected or has
hung up after the call was answered by an agent.

82

ROUTE
REQUEST

The switch is requesting that the call be routed by the
system. The number to be routed is in the Called Number
field. The Routing ID field contains an identifier that must
be used in the corresponding Routing ID field of the
A_RouteSel action.
1 of 2

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 518

8

Using Optional Features

Table 44.

Using ASAI

A_Event Return Field Value Meaning

Return Value

Meaning

Explanation

84

TRUNK
SEIZURE

A E1/T1 channel answered the call. The Connected
Number field is set to “TRUNK.” In order to receive this
return value, the A_Event TRUNK parameter in the
/vs/data/asai/parameters file must be changed to “1” and
the voice sytem must be restarted.

114

ABNORMAL
ROUTE END

The switch indicates that the routing was unsuccessful.
Either the Destination Number or the Split Extension
specified in the A_RouteSel action is invalid, the call was
abandoned before a route selection was made, or vector
processing was administered incorrectly. Check the
Cause Value field for the specific reason.
2 of 2

Defining A_RouteSel
The A_RouteSel action is used to send an ASAI route message to the PBX.
The A_RouteSel action is used in conjunction with the A_Event action and
can be used to construct scripts assigned to Route (RTE) type domains.
Note:

Do not use the A_RouteSel action step in scripts assigned to
Control (CTL), Automatic Call Distribution (ACD), or Vector
Directory Number (VDN) type domains, or in voice scripts.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 519

8

Using Optional Features

Using ASAI

To add the A_RouteSel action step:
1 With the cursor in the desired position in the Define Transaction screen
(Figure 60 on page 215), press F 1 (Add).

The system displays the Action Choices menu (Figure 113 on page 436).
2 Select:

> A_RouteSel

The system inserts the A_RouteSel action step in the transaction.
3 Highlight the A_RouteSel action step.
4 Press F4 (Define).

The system displays the Define A_RouteSel window (Figure 143 on page
521).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 520

8

Using Optional Features
Figure 143.

Defining the
A_RouteSel Fields

Using ASAI
Define A_RouteSel Window

Each of the fields in the Define A_RouteSel window must contain a field
name or constant which returns the following information. See Table on page
525 for a summary of the information in each of these fields.
! CAUTION:
Specify only num field types or constants for fields of type num.
•

Destination Number: contains either a number or the name of a field
that contains a number indicating where the call is to be routed. It must be
a valid extension number (for example, ACD hunt group extension, VDN,
or station) or external address (for example, Direct Distance Dialing
Number), and can be up to 20 digits in length. If calls are routed to a
number that is not on the switch, the Destination Number can contain a
Trunk Access Code or Automatic Alternate Routing/Automatic Route
Selection prefix digit.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 521

8

Using Optional Features
Note:

Using ASAI

A route request can be rejected by setting the field identified by
the Destination Number field to the null string. In this case, the
call will not be adjunct routed. Subsequent treatment for the call
depends on what type of default vector processing has been
administered on the switch.

•

Split Extension: is used only for direct agent calls. This field contains
either a number or the name of a field that contains a number identifying a
valid ACD split. The Split Extension can be up to 5 digits in length. If
this field is used, the call is treated as a direct agent call and routed to the
agent identified in the Destination Number field via the split identified in
the Split Extension field. If the Split Extension field contains no
digits (null value), the call is treated as a normal call rather than a direct
agent call. An empty split extension is entered by leaving the field blank
as opposed to entering “ “.

•

Priority Call: indicates whether the call is to be delivered as a regular
or priority call. This field must contain either yes or no or a field name
which can contain either of these two values. Select yes if you want the
call delivered as a priority call. Select no if you want the call delivered as
a regular call. If you do not select yes, the call is delivered as a regular
call.

•

Routing ID: contains a unique number that identifies the call being
routed. This value must match the Routing ID previously retrieved in the
A_Event action.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 522

8

Using Optional Features

Using ASAI

•

Cause Value: returns an error cause if the route select is not successful.
Note that the error cause is returned if the Return Field contains a value
of -3. See the maintenance book for your platform for more information.

•

User to User Info: contains the user-to-user information element to be
sent to the DEFINITY. This field can contain any customer-setable
information to passed by the script along the network.

•

Return Field: contains a return code indicating whether the action was
successful. If the A_RouteSel action is successful, it returns a number
greater than or equal to zero. If A_RouteSel is unsuccessful, it returns
one of the following negative values:
~ -1: A_RouteSel could not send the request to route the call to ASAI.

Check the Message Log Report for system errors. See Chapter 8,
“Common Administration,” in Intuity CONVERSANT System Version
7.0 Administration, 585-313-501, for more information.
~ -2: A_RouteSel did not receive a response from the ASAI for the

request to route the call. Check to see if the ASAI system is running.
~ -3: The ASAI system could not route the call. Check the Cause Value

field for information on why the call could not be routed.
~ -4: The ASAI Link is down and route select information cannot be

received from the switch. See the maintenance book for your platform
for information on troubleshooting the ASAI digital link.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 523

8

Using Optional Features

Using ASAI

~ -5: The system received an illegal request. The channel using

A_RouteSel is not for a RTE domain. A_RouteSel is being used in a
script that has not been assigned to an RTE domain. See Chapter 4,
“Feature Package Administration,” in Intuity CONVERSANT System
Version 7.0 Administration, 585-313-501, for more information on
assigning A_RouteSel to a domain.
~ -6: The switch did not respond after receiving the route select

information.
~ -7: Bad Routing ID. The Routing ID specified in A_RouteSel is invalid.

Check to make sure that the same Routing ID received from ROUTE
REQUEST Event is used in the A_RouteSel action.
~ -8: The call is no longer active.
~ -9: ASAI could not send the request the switch. See the maintenance

book for your platform for information on troubleshooting the ASAI
digital link.
~ “53”: Bad Routing ID. The Routing ID specified in A_RouteSel is

invalid. Check to make sure that the same Routing ID received from
ROUTE REQUEST Event is used in the A_RouteSel action.
~ -11: The Destination Number exceeds 20 characters.
~ -13: The Split Extension exceeds 5 characters.
~ -15: The Routing ID is 0 or less.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 524

8

Using Optional Features

Defining conv_data

Table 45. A_RouteSel Fields

Field

Input/Output

Required?

Field Type

Field Size

Destination Number

Input

Required

Char

20

Split Extension

Input

Optional

Char

5

Priority Call?

Input

Required

Char

3

Routing ID

Input

Required

Num

–

Cause Value

Output

Required

Num

–

User to User Info

Input

Optional

Char

32

Return Field

Output

Optional

Num

–

Defining conv_data
The conv_data action step facilitates the creation of a two-way routing
mechanism between the switch and the Intuity CONVERSANT system. This
enables data, in the form of touch tones, to be received from the switch at the
beginning of a transaction (data passing). Applications residing in the system
can be accessed and initiated, and data can be collected and sent back to
the switch at the end of the transaction (data return).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 525

8

Using Optional Features

Defining conv_data

This action is used in conjunction with the Prompt & Collect action step for
each application that the switch accesses and initiates. The Prompt & Collect
action step is used in the transaction to implement data passing from the
DEFINITY ECS.
Without the use of the converse vector command on the DEFINITY ECS,
once a call terminates on a system channel, it is no longer under the control
of the switch. It is then up to the system to process the transaction further and
route the response back to the switch by using the Transfer Call action.
! CAUTION:
You cannot use the Transfer Call action on a converse vector call.
With the converse vector command, control over call-routing is retained by
the switch.
•

The conv_data (converse data return) action is applicable only when the
Intuity CONVERSANT system is used with the DEFINITY ECS or other
compatible switch. The conv_data action supports the DEFINITY ECS
call vectoring (routing) feature by enabling the switch to retain control of
vector processing in the system environment. It specifically supports the
DEFINITY ECS converse vector command.

•

The conv_data action step can only be implemented on
Tip/Ring and Line Side E1/T1 (LSE1/LST1) channels.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 526

8

Using Optional Features

Defining conv_data

•

If the conv_data action step is implemented on LSE1/LST1 channels, the
Converse First Data Delay parameter on the Systems-Parameters
Features screen on DEFINITY ECS must be set to 1 instead of zero
(default setting).

•

Unlike Tip/Ring channels which wait to encounter a dial tone before
returning the Converse Data digits, LSE1/LST1 channels will not listen for
a dial tone. They function in accordance with the delay intervals identified
on the Dial Tone Delay parameter field of the Intuity CONVERSANT
system Digital Protocols screen. With heavy traffic on the DEFINITY ECS,
this pre-established time lag on an LSE1/LST1 channel can be too short
for a dial-tone to be encountered in time for the Converse Data digits to
be returned. This exception can be avoided on LSE1/LST1 channels,
either by lengthening the Dial Tone Delay parameter, or by increasing the
number of Touch Tone receivers on the DEFINITY ECS. Additionally,
applications running on these channels could be designed to report an
error condition if the returned Converse Data digits are not fully received
by the switch.

See Chapter 4, “Converse Vector Step Routing,” in Intuity CONVERSANT
System Version 7.0 Communication Development, 585-313-202, for
information on establishing the converse vector interface.
Defining a transaction to use the converse vector command is a two-step
process. The first step involves defining parameters to facilitate data-passing
from the switch within the framework of the application being developed. This

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 527

8

Using Optional Features

Defining conv_data

is accomplished through the Define Prompt and Collect screens. The second
step involves defining data-return parameters to enable the collected data to
be sent back to the switch.

Defining Data-Passing Parameters
The basic purpose of using the Prompt & Collect action step is to define datapassing parameters. First, in order to get meaningful data from the switch,
input fields must be defined (for example, the number of touch-tone
characters expected, identification of fields in which the characters are to be
placed, etc). Second, the data received from the switch could be analyzed for
further processing at the system level.
The first step involves setting data-passing parameters for up to two actions
on the Define Prompt and Collect screens. The number of actions to be
performed by an application must match the number of specified actions
received from the switch at the beginning of the transaction.
In addition, the converse vector command on the DEFINITY ECS enables up
to two groups of touch tones, data1 and data2, to be passed to the Intuity
CONVERSANT system. Each group requires a separate definition on the
Prompt & Collect screens.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 528

8

Using Optional Features
Note:

Defining conv_data

The Define Prompt and Collect INPUT and CHECKLIST screens
(page 2 and 3) used for data-passing parameters are identical to
those described in Chapter 7, Defining the Transaction. The
Define Prompt and Collect INPUT screen (page 1) is not
applicable.

When you define the Prompt & Collect action step from the Action Choice
menu, the Define Prompt and Collect INPUT screen opens. Use the
N EX TPA GE and P RE VPA GE keys to move between page 2 or page 3,
successively. Once both pages have been defined, press the C LO SE
function key to post the details of the action step to the transaction.
Following is an explanation of each input case, and how it pertains to the
conv_data action.
•

Input OK: This case signifies that a digit string was received.
~ Voice Response: This field is not applicable and should be left blank.
~ Action: This field defaults to Continue when valid input has been

received.
This field is not applicable to the Continue action and
should be left blank.

~ Action Data:
•

Initial Timeout: This case signifies that no digits were received
before the timeout interval expired.
~ Voice Response:

This field should be left blank.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 529

8

Using Optional Features

Defining conv_data

~ Action: This field defaults to Reprompt, but should be changed to

Quit because the DEFINITY ECS only attempts to send digits once.
~ Action Data: This field is not applicable and should be left blank.
•

Too Few Digits: This case is not applicable (the minimum digits

entered is one).
~ Voice Response:

This field is not applicable and should be left

blank.
~ Action: This field defaults to Reprompt but should be changed to

Quit because the DEFINITY ECS only attempts to send digits once.
~ Action Data: This field is not applicable and should be left blank.
•

No More Tries: This case is not applicable (only a single try is allowed

for the conv_data action).
~ Voice Response: This field is not applicable and should be left blank.
~ Action: This field defaults to Quit and should not be changed.
~ Action Data: This field is not applicable and should be left blank.

Defining Data-Return Parameters
After the data-passing phase of a transaction has been completed, the
system processes information to determine the sequence of touch tones to
be sent back to the DEFINITY ECS during the data-return phase. The

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 530

8

Using Optional Features

Defining conv_data

conv_data action requires several parameters to be defined that would
facilitate this data return.
To define these parameters:
1 From the Action Choices menu (Figure 113 on page 436), select:
’

> conv_data

The system inserts the conv_data action step in the transaction.
2 Highlight the conv_data action step.
3 Press F4 (Define).

The system displays the Define conv_data screen (Figure 144 on page 532).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 531

8

Using Optional Features
Figure 144.

Defining conv_data
Define conv_data screen

Define conv_data
Feature Access Code:
Data return field #1:
Data return field #2:
Data return field #3:
Data return field #4:
Return Field:

You can define three types of data-return parameters on this screen.
•

Feature Access Code:

Definition of this field is required.

The DEFINITY ECS uses the FAC to administer the Converse Data
Return return feature. This four-digit numeric field can be preceded by an
asterisk (*) or a pound sign (#), in initial positions only, such as #9.
You must defined this field to match the corresponding FAC code setup
on the switch. For more information, see the DEFINITY Call Vectoring
documentation.
•

Data return field #X: Definition of this field is optional.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 532

8

Using Optional Features

Defining conv_data

Up to four Data return field strings can accompany the caller
responses being returned to the switch. Each of these numeric fields can
be as long as 24 digits, but the total number of digits in all four fields
cannot exceed 24 digits.
•

Return Field: Definition of this field is optional.

The Intuity CONVERSANT system application can be designed to take
action on a return code from the conv_data action. The field in which the
return code will be stored, and consequently be acted upon, can be
identified here. After the conv_data action has been completed, this field
will be set with the following values:
~ 0: Data has been successfully sent back to the DEFINITY ECS.

With the LSE1/LST1, a failure to recognize a dial tone will not be
reported because these protocols do not listen for a dial tone. A value
of zero will be returned.
~ -1: Hardware/software error
~ -2: Failed to send data – No stutter dial-tone after flash (Tip/Ring only).
~ -3: Failed to send data – No steady dial-tone after FAC (Tip/Ring only).

Note:

The conv_data action executes a flash, and then transmits the
digits contained in the Feature Access Code and Data return
fields. The duration of this flash must be set at 600 msec in the
Analog Interfaces menu for Tip/Ring lines, and in the Digital

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 533

8

Using Optional Features

Defining conv_data

Protocols menu for LSE1/LST1 lines. See Chapter 5, “Switch
Interface Administration,” in Intuity CONVERSANT System
Version 7.0 Administration, 585-313-501, for more details.

Note:

conv_data:

The conv_data action should be followed by a Quit action step.
The channel is on hook until this Quit action is executed.

Tips
•

When implemented, the $CI_VALUE and $CI_NO_DIGS_GOT fields on
the Define Prompt and Collect INPUT screen contain the value of the
touch-tone digits received, and their total number, respectively. These
fields can then be used for further script processing if required by the
application. Noted that the terminating digit, “#,” is not included in the
former field nor is it counted in the latter.

•

The conv_data action step recognizes the type of channel being used so
that it can determine whether or not to use dial tone detection. On
Tip/Ring channels with dial tone detection, the system tries to return data
to an excessively loaded switch three times. It does not retry sending data
to the switch on an LSE1/LST1 channel, which presently does not have
dial tone detection capability.

•

The Action field in the Initial Timeout case defined on the Standard
Checklist defaults to Reprompt. It should be changed to Quit because the
switch only sends digits to the Intuity CONVERSANT system once.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 534

8

Using Optional Features

Using Call Classification Analysis

Alternatively, this field could be changed to Continue if the system is
expected to process the error and send relevant data back to the switch
during the data return phase of the transaction. The choice of strategy
depends on the application objectives and the most comprehensive
method of presenting the diagnostic information.

Using Call Classification Analysis
Full Call Classification Analysis (CCA) can be activated when a call is dialed
out during a flash transfer, a call bridge (internal transfer), or a make call (call
originate). These translate to three action steps available in Script Builder.
For accurate transfer results, assign Full CCA only to an SP circuit card. The
Full CCA feature is available for US and Canada.

Full CCA Call Dispositions
Table 46 on page 536 shows the call dispositions available to Script Builder.
The call dispositions apply when using either Full CCA with the Transfer Call,
Call Bridge, or Make Call action steps. See Chapter 7, Defining the
Transaction.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 535

8

Using Optional Features
Note:

Table 46.

Using Call Classification Analysis

Modem tone detection is listed only for Tip/Ring and Line Side
E1/T1 (LSE1/LST1) calls. With PRI, T1 (E&M), and E1 (CAS)
lines, answer supervision normally is detected first, precluding
modem tone detection. For these lines, a call disposition of “A” is
returned.

Call Classification Analysis Call Dispositions

$TRANSFER_RESULT

Meaning

“X”

Blind transfer success

“A”

Answer detected

“B”

Busy

“N”

Ring, no answer

“F”

Fast busy

“H”

High and dry

“T”

Modem tone

“t”

Touch-tone entry detected

“v”

PRI
1 of 3

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 536

8

Using Optional Features
Table 46.

Using Call Classification Analysis

Call Classification Analysis Call Dispositions

$TRANSFER_RESULT

Meaning

“1”

Internal error, dialing error, or unexpected response from
switch or PBX

“2”

Timeout

“3”

Invalid dial string

“4”

Resource busy or unavailable

“R”

Reorder, intraLATA (Special Information Tone [SIT])

“r”

Reorder, interLATA (SIT)

“K”

No circuit, intraLATA (SIT)

“k”

No circuit, interLATA (SIT)

“V”

Vacant code (SIT)

“l”

Intercept (SIT)

“O”

Ineffective other (SIT)

“d”

Domestic other (SIT)

“o”

International other (SIT)
2 of 3

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 537

8

Using Optional Features
Table 46.

Using PRI

Call Classification Analysis Call Dispositions

$TRANSFER_RESULT

Meaning

“c”

International no circuit (SIT)

“f”

Foreign fail (SIT)

“U”

Unknown Special Information Tone (SIT)

“h”

Caller was disconnected during transfer (applies only
when the optional feature Sending DTMF Feedback
Tones to the VRU is properly configured)
3 of 3

Using PRI
This section contains descriptions of the Script Builder screens and menus
for the ISDN Primary Rate Interface (PRI) feature. These include:
•

Action steps (ISDN_billing and ISDN_service)

•

External function (Attr_ANI)
For more information on external functions, see Chapter 11, Using
Advanced Features.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 538

8

Using Optional Features

Using PRI

In addition, the following call control action steps are supported for use with
PRI and can be used as they are for E1/T1. See Chapter 7, Defining the
Transaction, for more information about each of these action steps.
•

Answer

•

Disconnect

•

Make Call

•

Call Bridge

Note:

The Call Transfer action step is not supported for use with PRI
because the protocol does not support the transfer function.

The ISDN Primary Rate Interface feature package allows the system to
communicate directly with a Lucent Technologies or AT&T private branch
exchange (PBX) or switch using the AT&T ISDN Primary Rate Interface
(PRI). The ISDN PRI is a digital interface and therefore only supports E1 or
T1 line usage.
On incoming calls, Script Builder has direct access to ANI and DNIS. The
redirecting number and service type are provided by PRI and are available on
the system through advanced methods (TAS and IRAPI). On outgoing calls,
Script Builder has built-in support for providing called number and service
type. Outbound ANI and bearer capability can be provided for outgoing PRI
calls through advanced methods (TAS and IRAPI).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 539

8

Using Optional Features
Note:

Using PRI

You can use the ANI and DNIS to specify an application for a
caller by assigning *DNIS_SVC to a channel in the Assign
Channel Service screen. Then assign ranges of ANIs and DNISs
in the Assign Number Service screen. Specify the application in
the Service Name field. See Chapter 4, “Feature Package
Administration,” in Intuity CONVERSANT System Version 7.0
Administration, 585-313-501.

See Intuity CONVERSANT System Version 7.0 Communication
Development, 585-313-202, for information on establishing the PRI interface.
See Intuity CONVERSANT System Version 7.0 Administration, 585-313-501,
for information on assigning PRI. See Intuity CONVERSANT System Version
7.0 Application Development with Advanced Methods, 585-313-203, for
information on PRI Script Instructions. If you have the Advanced PRI Feature
Package (available to selected business partners), see Intuity
CONVERSANT System Version 7.0 Advanced PRI Developer’s Guide
provided with the feature package for more information about special ISDN
PRI signaling needs.

Defining ISDN_billing
The billing feature retrieves the billing number on an incoming call. The
billing number is called the calling party number or is sometimes referred to
as automatic number identification (ANI). The ISDN_billing external action
provides the billing number for incoming calls.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 540

8

Using Optional Features

Using PRI

In cases where the PRI facility subscribes to the billing number (ANI is
defined for all calls), the billing number always is available to the application.
However, for facilities that do not subscribe to the billing number, the number
must be requested by applications on a call-by-call basis. In this case, you
also must use the Attr_ANI external function described later in this chapter.
To define the ISDN_billing external action:
1 With the cursor in the desired position in the Define Transaction screen
(Figure 60 on page 215), press F 1 (Add).

The system displays the Action Choices menu (Figure 113 on page 436).
2 Select:

> ISDN_Billing

The system inserts the External Action: ISDN_Billing in the transaction.
3 Highlight External Action: ISDN_Billing.
4 Press F4 (Define).

The system displays the Define Billing Number window (Figure 145 on
page 542) appears.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 541

8

Using Optional Features
Figure 145.

Using PRI
Define Billing Number Window

5 In the Billing Number field, specify the Script Builder numeric variable to
which the billing number is to be copied. Press F2 (Choices) to select an

existing Script Builder variable or type a new variable.
6 Return Field: is an optional field. You can specify the return code in this
field. Note that the Return Field should never contain a value less than

zero.

Requesting ANI for Inbound Calls
An external function, Attr_ANI, is included with the ISDN PRI package. This
function allows you to request the billing number for incoming calls on a callby-call basis, if you have a compatible switch. For facilities that subscribe to
ANI, ANI is always available to the application. In this case, there is no need
to use this external function. For facilities that do not subscribe to ANI, ANI
can be requested by including this external function in the application script.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 542

8

Using Optional Features

Using PRI

To set Attr_ANI for an application:
1 With the cursor in the desired position in the Define Transaction screen,
press F1 (Add).

The system displays the Action Choices menu (Figure 113 on page 436).
2 Select:

> External Function

3 Press F6 (CANCEL).
4 Press F4 (Define).

The system displays the Define External Function screen (Figure 103 on
page 397).
5 Enter Attr_ANI and then press F3 (Close).

Defining Service Type for Outbound Calls
The ISDN_service external action allows an application to choose the service
type for outgoing PRI calls. If this external action is not used, no service is
specified for the call and the type is based on the way that the PRI is

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 543

8

Using Optional Features

Using PRI

provisioned or administered at the switch. You must place this external
action in the application before the part that originates the call.
Note:

Make sure that the switch is provisioned to support the service
type you specify.

This service type applies to any subsequent originations on this channel until
the script terminates, and also to any call bridge initiated from this channel.
See Chapter 7, Defining the Transaction, for information on the Make Call
and Call Bridge action steps.
To specify the service type:
1 With the cursor in the desired position in the Define Transaction screen
(Figure 60 on page 215), press F 1 (Add).

The system displays the Action Choices menu (Figure 113 on page 436).
2 Select:

> ISDN_Service

The system inserts the External Action: ISDN_Servive in the transaction.
3 Highlight External Action: ISDN_Service.
4 Press F4 (Define).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 544

8

Using Optional Features

Using PRI

The system displays the Define Service Type window (Figure 146 on
page 545).
Figure 146.

Define Service Type Window

5 Service Type: is an optional field that specifies the service type to be
used for outgoing calls. Press F2 (Choices) to select from a menu of

service types. The following choices are displayed:
~ ACCUNET
~ DIALITNOVA
~ ETN
~ I800
~ INWATS
~ MEGACOM
~ MEGACOM800
~ NODAL_LDS
~ PRIVATE_LINE

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 545

8

Using Optional Features

Using PRI

~ RESERVED_CNO
~ SDN
~ WATS

Select the service type that you want from those available with your
network connections.
Note:

The listed Service Types are not valid for all switches supported
by the PRI package.

6 Return Field: is an optional field. You can specify the return code in this

field. If the external action fails to set any of the attributes, this field
contains a value less than zero.

Defining UCID Functions
The following external functions provides UCID capabilities on PRI in a
DEFINITY call center environment:
•

get_ucid

•

get_uui

•

set_uui

For more information about these functions, see UCID Functions on page
732 in Chapter 11, Using Advanced Features.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 546

8

Using Optional Features

Using Form Filler Plus

Using Form Filler Plus
The Form Filler Plus feature provides the ability for applications to record
caller’s responses to prompts for later transcription and review.
Form Filler Plus uses the FF_Code and the FF_Store action steps in Script
Builder. Caller responses are stored in the Form Filler Plus database, which
is accomplished through the FF_Store action step. The responses can be
retrieved at a later time using the Form Retriever transcription script. As many
as ten responses (1 to 999 seconds each) can be recorded per action step,
and up to ten action steps are allowed per application.
This section includes descriptions of the Script Builder screens and menus
for the Form Filler Plus actions.

Customizing a Form Filler Plus Application
The Script Builder application template FFtemplate is provided with the Form
Filler Plus package. You can use this template to develop a customized Form
Filler Plus application. FFtemplate contains several generic Announce and
Prompt & Collect statements that can be used for questioning a caller. This
template also provides an example of the Form Filler Plus FF_Code and the
FF_Store action steps. By making a copy of FFtemplate, and then modifying
the generic prompts, you can easily design a custom application.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 547

8

Using Optional Features

Using Form Filler Plus

Error-Handling Capabilities
Whether you use the Form Filler application template or the actions provided
with the Form Filler Plus package to develop a customized application, this
feature package facilitates the development of voice capture and
transcription scripts. Using Form Filler Plus, application developers are able
to select the coding rate that best suits their application. They also have
access to the advanced error-handling capabilities available with this feature,
including the ability to store partial messages in the event that the caller
makes an error in the response or hangs up too soon after a prompt.

Form Filler Plus Reports
The Form Filler Plus feature includes the Form Filler Plus Call Record
Summary Report and the Form Filler Plus Last Audit Report. The Call Record
Summary Report lists a summary of call records in the Form Filler Plus
database for each script ID and provides disk-usage statistics for the speech
filesystem. The Form Filler Plus Last Audit Report runs each time the voice
system is started, and it checks the Form Filler Plus database for consistency
with the talkfile where caller responses are stored.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 548

8

Using Optional Features

Using Form Filler Plus

Form Filler Plus Action Steps
As mentioned above, two action steps are associated with the Form Filler
Plus feature. These action steps provide the following capabilities:
•

FF_Code
Codes or records a session with up to 10 individual speech phrases per
call from a caller.

•

FF_Store
Stores the recorded phrases and associated script identifications in the
Form Filler Plus database.

Using FF_Code

The Form Filler Plus Code action step (FF_Code) can be included in an
application up to 10 times to record a caller’s response to a voice form
prompt. Each FF_Code action step records a phrase from the caller and
stores the phrase internally until the FF_Store action step is used to put all
phrases for the call into the Form Filler Plus database.
Note:

The maximum number of speech phrases that can be recorded is
set by the system at installation. See Chapter 4, “Features,” in
Intuity CONVERSANT System Version 7.0 System Description,
585-313-204, for additional information on speech storage
capacities.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 549

8

Using Optional Features

Using Form Filler Plus

To add the FF_Code action step to a transaction, perform the following
procedure:
1 With the cursor in the desired position in the Define Transaction screen
(Figure 60 on page 215), press F 1 (Add).

The system displays the Action Choices menu (Figure 113 on page 436).
2 Select:

> FF_Code

The system inserts the FF_Code action step in the transaction.
3 Highlight the FF_Code action step.
4 Press F4 (Define).

The system displays the Define Form Filler Coding window (Figure 147
on page 551).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 550

8

Using Optional Features

Using Form Filler Plus

Figure 147. Define Form Filler Coding Window

5 Enter a valid entry for the Code Rate and Type field.

This defines the code rate and format type for recording speech using the
Form Filler Plus feature. Valid entries for this field are ADPCM_16,
ADPCM_32, CELP_16, SBC_16, or SBC_24. The default value is
ADPCM_16. To change the default value, press Choices to make a
selection from a menu. Note that higher coding rates provide better
quality recording but use more disk space to store the message. See
Message Coding: Tips on page 381 in Chapter 7, Defining the
Transaction for message coding tips.
6 Enter a maximum phrase length in the Maximum Phrase Length field.

This field allows you to define the maximum phrase length (in seconds) of
the phrase to be coded. The default value is 20 seconds. Valid ranges are
from 1 to 999 seconds.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 551

8

Using Optional Features

Using Form Filler Plus

7 Enter the number that identifies the particular script that stores the call

records in the Form Filler Plus database.
This field is a required field that identifies the particular script storing call
records in the Form Filler Plus database. A valid Script
Identification is a numeric string of 1 to 6 digits. Note that leading
zeros in a Script Identification are not significant. For example, the
string “09” entered in this field will be changed to “9.”
The Script Identification field is used by FF_Store to save recorded
phrases in a database record. Therefore, make sure that you enter the
exact Script Identification for all instances of FF_Code in a script.
Note:

If you wish to change a Script Identification, you must
change the Script Identification for each occurrence of
FF_Code in the script.

8 In the Hangup Indication field, enter the action to be taken if hangup is

detected.
This field defines what action will be taken if hangup is detected. If the
Hangup Indication is enabled, recorded phrases from callers who
disconnect before the script is complete are stored automatically in the
Form Filler Plus database. If the Hangup Indication is disabled, the
script deletes any recorded phrases from callers who hang up before the
script is complete. The default value is Enable. To change the default
value, enter Disable or press F2 (CHOICES) to make a selection from a
menu.
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 552

8

Using Optional Features

Using Form Filler Plus

9 Enter a replacement phrase in the Re-Record Phrase field.
Re-Record Phrase is an optional field that enables you to replace the
previous recorded phrase with a new phrase. The default value is “No”,
which means that FF_Code will add a newly-recorded phrase to those
being accumulated for the Form Filler Plus call record. To enable the ReRecord Phrase option, select yes in the Re-Record Phrase field. If the
Re-Record Phrase option is enabled, a phrase successfully recorded by
the previous call to FF_Code will be replaced with a newly-recorded
phrase. This option is useful for allowing the caller to re-record a
response to the previous Form Filler Plus prompt (perhaps after being
allowed to listen to it). If the previous call to FF_Code was unsuccessful or
if there was no previous FF_Code, this option has no effect (that is, no is
assumed).

! CAUTION:
Once FF_Code is called with the Re-Record Phrase option set to “Yes,” the
phrase from the previous FF_Code (if any) is removed before coding the
replacement phrase.
Note:

Calls to FF_Code that are used to re-record a phrase are not
included in the limit of 10 calls per application.

10 Enter the variable to store the talkfile and phrase number in the Talk
File/Phrase Number field.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 553

8

Using Optional Features

Using Form Filler Plus

This field contains the name of the variable to store the combined talkfile
and phrase number in NX format or a zero (0) if a phrase was not
recorded from the FF_Code action.
11 Enter the variable to store a return code in the Return Field field.

This field contains the name of the variable to store a “return code” from
the action script. If the Form Filler Plus Code action step is successful, it
returns the actual duration of the phrase in seconds. If the instruction is
unsuccessful, it returns a negative value.
Valid return code values are:
~ 1 – 999: Length of successfully recorded phrase (in seconds)
~ -1: Voice coding failure
~ -2: Voice coding timeout (that is, initial 5 seconds passed with nothing

spoken by caller or 0 length phrase detected)
~ -20: FF_Code has been called more than 10 times in the call session
~ -555: Insufficient space on speech file system to store recorded

phrases
Note:

See the maintenance book for your platform for additional
information on what to do if Form Filler Plus Coding is
unsuccessful.

12 Press F3 (Close) after the user-defined entries for the Define Form Filler

Coding screen are completed.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 554

8

Using Optional Features

FF_Code: Tips

Using Form Filler Plus

This section includes tips for using the FF_Code action step in your
application.
Timeouts

FF_Code explicitly sets initial and inter-word silence timeouts for voice coding
to 5 seconds. More than 5 seconds of initial silence while voice coding
causes FF_Code to fail with a -2 return value. A silence between words of
more than 5 seconds causes FF_Code to terminate voice coding and return
the length (in seconds) of the recorded phrase. Pressing a touch tone (TT)
terminates voice coding immediately and returns the length of the phrase.
Voice coding also terminates immediately when the maximum coding length
is reached.
Using an External Function for
Hangup Processing

Note:

The following information applies only if you are using an external
function (written at the TSM script level) to perform hangup
processing with the event script instruction.

The first call to FF_Code changes the default action for the EHANGUP script
event to process any recorded phrases according to the current setting of the
hangup indicator. See Intuity CONVERSANT System Version 7.0 Application
Development with Advanced Methods, 585-313-203, for a discussion of the
event() instruction. Hangup processing is not reset to the default until the
FF_Store action is used. This is done because the script can not detect the

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 555

8

Using Optional Features

Using Form Filler Plus

hangup while in FF_Code, and a Form Filler Plus application script must be
able to save or delete any recorded phrases if a hangup occurs at any time
between the first FF_Code and a call to FF_Store. If the script has set the
EHANGUP event before the first FF_Code to cause a jump to a specific
subroutine, that subroutine offset is saved so that it can be restored by
FF_Store. If a hangup is detected before the original subroutine is restored,
the FF_Code hangup subroutine jumps to the original subroutine after it has
processed the event (by either saving or deleting any recorded phrases).
The most conservative use of the hangup indicator is to enable it for all
instances of FF_Code in the script. This will ensure that a call record is saved
at any time the caller hangs up after the first FF_Code. Form Filler Plus
Transcribers can remove records that are too incomplete to be useful.
Another possibility is to disable the hangup indicator for all instances of
FF_Code. This will ensure that no record will be stored unless all responses
in the form have been recorded. When the hangup indicator is disabled for
the last FF_Code, FF_Store should be called immediately after the last
FF_Code. Consequently, if this approach is taken, remember to call
FF_Store immediately after the last FF_Code. The script should not take any
action which causes a wait condition (for example, database access, Prompt
& Collect, play announcement). If the script waits before doing the FF_Store,
hangup can be detected during the wait. This causes the record to be deleted
(even though all phrases have been recorded).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 556

8

Using Optional Features

Using Form Filler Plus

Yet another possibility is to have the hangup indicator disabled for some of
the earlier prompts in the form and enabled for all later prompts. For example,
if a form asks a caller to record a name, address and telephone number in
three different prompts, you can disable the hangup indicator for the name
recording and enable it for the address and telephone number recordings.
This indicates that the record should not be saved if the caller hangs up after
recording only the name, but should be saved if the name and address are
both recorded. In this situation, there is still a possibility that a record with
only a name recorded will be saved depending on when the caller hangs up
and how quickly the switch sends the “wink disconnect” or “dialtone”
indication to the system after the hangup. Depending on the switch being
used, it can take from 5 to 15 seconds (or longer) from the time when a caller
hangs up the telephone to the time when the script detects the hangup. You
may want to experiment to determine the characteristics of your system.
Consequently, it is possible that a caller can hangup during one instance of
FF_Code, but the hangup is not detected until the next FF_Code is
performed, possibly with a different setting for the hangup detect flag. In the
above example, the record will be saved if a hangup condition is not detected
before the FF_Code for the address is executed, even though the caller can
have actually hung up before being prompted to record the address. Using
longer voice prompts between FF_Code actions can decrease the incidence
of unwanted records being saved by the script since this gives the script more
time to detect a hangup before proceeding to the next FF_Code.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 557

8

Using Optional Features

Using FF_Store

Using Form Filler Plus

The Form Filler Plus Store action step (FF_Store) passes any phrases
recorded by Form Filler Plus Code, along with the script identification
number, to the Form Filler database.
Note:

Use the FF_Store action step only once per script immediately
after the last FF_Code action step.

If the script quits without doing an FF_Store, the phrases obtained by each
previous FF_Code instruction remain in the speech talkfile, but there is no
corresponding record for them in the Form Filler Plus database. The Form
Filler Plus Last Audit deletes such phrases from the talkfile. However, this
audit is run only when the voice system is being started, so running the voice
system with a Form Filler Plus script that does not use FF_Store can
eventually fill up the speech file system. See Chapter 8, “Daily
Administration,” in Intuity CONVERSANT System Version 7.0 Administration,
585-313-501, for information on Form Filler Plus Last Audit Report.
Note:

If the caller hangs up before the script quits, the FF_Code action
step deletes phrases or uses FF_Store to store them, depending
on whether the hangup indicator is disabled or enabled.
Nevertheless, the script must still use FF_Store to handle cases
where the script completes before the caller hangs up. In this
case, the hangup routine in FF_Code calls FF_Store.

To define the FF_Store action step:
1 With the cursor in the desired position in the Define Transaction screen
(Figure 60 on page 215), press F 1 (Add).
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 558

8

Using Optional Features

Using Form Filler Plus

The system displays the Action Choices menu (Figure 113 on page 436).
2 Select:

> FF_Store

The system inserts the FF_Store action step in the transaction.
3 Highlight the FF_Store action step.
4 Press F4 (Define).

The system displays the Define Form Filler Speech Store window (Figure
148 on page 559).
Figure 148.

Define Form Filler Speech Store Window

5 Enter a return code in the Return Field field.

This field contains the name of the variable to store a “return code” from
the action step. If the Form Filler Plus FF_Store action step is successful,
it returns a positive value. If the instruction is unsuccessful, it returns a
negative value.
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 559

8

Using Optional Features
Note:

Using Form Filler Plus

See the maintenance book for your platform for additional
information on what to do if Form Filler Plus FF_Store is
unsuccessful.

Valid return code values are:
~ 0: Successful completion of FF_Store
~ -1: System (DIP) failure
~ -2: Invalid Script Identification used or too many calls to

FF_Store per session
~ -999: System timeout (waiting for DIP response)
6 Press F3 (Close) to update the Form Filler Plus FF_Store action step in

the Define Transaction list.

Using the Form Retriever
The Form Filler Plus Transcribe application will play back records that were
created using the Form Filler Plus application. After the Form Filler Plus
feature package software is installed and the application is assigned to a
channel or dialed number, Form Filler Plus users can retrieve caller
responses by simply calling the Form Retriever (the transcription script).
Alternatively, Form Filler Plus users can access the Form Retriever by using
the Execute action access code. The Execute action starts a new script on a
channel, replacing the channel that performed the Execute action. The Form

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 560

8

Using Optional Features

Using Form Filler Plus

Retriever will prompt the user for a mode (transcribe or review), password,
and Script ID. (Transcribe and review mode passwords can be set when the
Form Filler Plus package is installed, whereas the Script ID is provided to the
FF_Code action by the Script Builder developer). Caller responses are
retrieved by Script ID. The transcriber or reviewer can either choose to hear
calls for a particular script by entering a Script ID or can choose to hear calls
for the script with the oldest call record by entering an asterisk (*) to retrieve
the script with the oldest record. Once a script is selected, call records are
played from oldest to newest and each response recorded in a call record is
played from first to last.
Transcribers (using transcribe mode) can play and replay the recorded
phrases in a new call record and either delete the record or mark it for review.
Once the record is deleted or marked, the next oldest new call record for the
Script ID is played.
Reviewers (using review mode) can play and replay a call record that has
previously been marked for review by a transcriber. Reviewers can then
delete the record or skip it for later review. Once the record is deleted or
skipped, the next oldest marked call record for the Script ID is played.
An “undo” command enables the transcriber or reviewer to undo the previous
delete, mark, or skip command and return to the previous call record.
Although there is no limit to the number of transcribers that can use the
application at any one time, only one individual can work on a particular call
record at a time. The Form Retriever will bypass records that are being
played by other users.
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 561

8

Using Optional Features

Using Form Filler Plus

“Slow down” and “speed up” commands enable transcribers or reviewers to
adjust the pause interval between each phrase that is played from a call
record.
The number of records deleted or marked for review will be announced at the
termination of the transcription or review session, enabling Form Filler Plus
users to note their activity.
The Form Retriever prompts the caller for the “mode” and “password” and
collects touch-tone input from the caller. The caller then selects a script to
work on by entering a Script ID or by entering an asterisk (*) that instructs the
system to select the script with the oldest remaining records.
When the Form Filler Plus transcription session is initiated, callers are
prompted with the following message:
Form Filler Plus transcription session. Enter mode and
password. End with the pound key.
Mode

Valid operating modes are “review” and “transcribe.” The caller specifies
transcription mode by pressing 1 . The caller specifies review mode by
pressing 0 .

Password

If a password was set during installation, the caller is allowed three attempts
to enter a valid password. If the caller enters an invalid password on each of
three attempts, the Form Retriever hangs up.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 562

8

Using Optional Features

Script ID

Using Form Filler Plus

A valid Script ID is a sequence of 1 to 6 standard touch-tone digits (0–9). The
Script ID can be terminated with a pound sign (#).
The caller selects a script to work on by entering a Script ID or by entering an
asterisk (*) that instructs the system to select the script with the oldest
remaining record. The caller is allowed three attempts to enter a valid Script
ID. If the caller enters an invalid Script ID on each of three attempts, the Form
Retriever hangs up.
After collecting the mode, password, and Script ID, Form Filler selects the
script with the oldest record and then prompts the caller to enter a touch-tone
command.

Form Filler Plus
Transcribe
Commands

The script prompts for and collects a touch-tone command from the caller.
Table 47 on page 564 describes the transcribe commands available with the
Form Filler Plus Form Retriever.
Note:

If the caller hangs up during the transcription session, the hang up
is treated as if the caller entered the EXIT command.

Upon exiting the current Form Filler session, the session announces the total
number of records for review.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 563

8

Using Optional Features

Table 47.

Using Form Filler Plus

Form Filler Plus Transcribe Command

User
Entry

Command Name

Command Result

0

PLAY
ADMINISTRATION
INFORMATION

This command plays administration information for the
record being transcribed, including the record ID, the
Script ID to which the record belongs, and the number of
records deleted and marked for review in the current
transcription session.

1

DELETE RECORD

This command removes the current record (all phrases)
and proceed to the next record for the current script. Note
that the UNDO command can be used to bring back the
last record deleted with the DELETE RECORD
command.

2

MARK RECORD
FOR REVIEW

This command marks the current record for review so that
it can be reviewed at a later time. The MARK RECORD
FOR REVIEW command then proceeds to the next oldest
call record for the current script. The record marked for
the review is not removed and is accessible only in review
mode. Note that the UNDO command can be used to
bring back the last record marked with the MARK
RECORD FOR REVIEW command.
1 of 3

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 564

8

Using Optional Features
Table 47.

Using Form Filler Plus

Form Filler Plus Transcribe Command

User
Entry

Command Name

Command Result

3

REPLAY RECORD

This command replays all the phrases for the current call
record from start to end.

4

UNDO

This command brings back the record last deleted,
skipped, or marked for review during the current
transcription session or call and then plays that record.
The UNDO command can be used any time before the
next record is deleted or marked for review. It is not
necessary that the DELETE RECORD or MARK
RECORD FOR REVIEW command be the previous
command.

5

SLOW DOWN

This command lengthens the pause inserted between
consecutive phrases in a record by 1/4-second
increments up to a maximum of 1.5 seconds. The default
pause interval is 2.5 seconds. The SLOW DOWN
command then prompts for another command.
2 of 3

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 565

8

Using Optional Features
Table 47.

Using Form Filler Plus

Form Filler Plus Transcribe Command

User
Entry

Command Name

Command Result

6

REPLAY PHRASE

This command replays the phrase last heard or the last
phrase interrupted. The REPLAY PHRASE command can
not be used to back up to the previous phrase in the
record. Use the REPLAY RECORD command to play the
current call record again starting from the first phrase.

7

CHANGE SCRIPT
ID

This command prompts the caller for another Script ID
while keeping the same mode and password. If the new
Script ID does not have records associated with it, this
command prompts the caller for Mode, Password, and
Script ID. This command plays the next record while
keeping the current one.

8

SPEED UP

This command shortens the pause inserted between
consecutive phrases in a record by 1/4-second
increments to a minimum of 1.5 seconds. The default
pause interval is 2.5 seconds. The SPEED UP command
then prompts for another command.

9

EXIT

This command announces the termination of the current
session (such as call) and then hangs up.
3 of 3

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 566

8

Using Optional Features

Form Filler Plus
Review Commands

Using Form Filler Plus

As previously noted, the script will prompt for and collect a touch-tone
command from the caller. Table 48 on page 567 describes the review
commands available with the Form Filler Plus Form Retriever.
Note:

If the caller hangs up during the review session, the hang up is
treated as if the caller entered the EXIT command.

Upon exiting the current Form Filler session, the session announces the total
number of records for review.
Table 48. Form Filler Plus Review Commands

User
Entry

Command Name

Command Result

0

PLAY
ADMINISTRATION
INFORMATION

This command plays administration information for the
record being transcribed, including the record ID, the
Script ID to which the record belongs, and the number
of records deleted and marked for review in the current
transcription session.

1

DELETE RECORD

This command removes the current record (all
phrases) and proceed to the next record for the current
script. Note that the UNDO command can be used to
bring back the last record deleted with the DELETE
RECORD command.
1 of 3

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 567

8

Using Optional Features

Using Form Filler Plus

Table 48. Form Filler Plus Review Commands

User
Entry

Command Name

Command Result

2

GO TO THE NEXT
RECORD

This command skips to the next record and plays it.

3

REPLAY RECORD

This command replays the record just heard.

4

UNDO

This command brings back the record last deleted,
skipped, or marked for review during the current
transcription session (such as call), then plays the
record that was retrieved.

5

SLOW DOWN

This command increases the pause interval by 1/4second, unless it is at a maximum. The SLOW DOWN
command then prompts for another command.

6

REPLAY PHRASE

This command replays the last phrase heard or the
last phrase interrupted. The REPLY PHRASE
command plays the next record while keeping the
current one.
2 of 3

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 568

8

Using Optional Features

Using Form Filler Plus

Table 48. Form Filler Plus Review Commands

User
Entry

Command Name

Command Result

7

CHANGE SCRIPT
ID

This command prompts the caller for another Script ID
while keeping the same Mode and Password. If the
new Script ID doesn’t have records associated with it,
the caller is prompted for Mode, Password, and Script
ID. The CHANGE SCRIPT ID command plays the next
record while keeping the current one.

8

SPEED UP

This command decrease the pause interval by 1/4second, unless the pause interval is already at a
minimum. The SPEED UP command then prompts for
another command.

9

EXIT

This command announces the termination of the
session.
3 of 3

Using the Form Filler Plus Template
The high-level Script Builder application template provided with the Form
Filler Plus package facilitates development of a Form Filler Plus application.
By simply copying and modifying this template to suit your needs, you can

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 569

8

Using Optional Features

Using Form Filler Plus

develop a customized application. Included are instructions for creating your
own application using the Form Filler Plus template.
The following is a description of each of the blocks in the FFtemplate as well
as instructions on how you can create your own Form Filler Plus application
using the template.
Before defining the transaction and recording speech for an application you
create with the Form Filler template, you should create a flowchart showing
how the actions in the script are connected. Figure 149 on page 571 shows
one of the possible call flows for the Form Filler template. Note that the call
flow shown uses the first and second form prompts in the Form Filler
template, that is, BLOCK 2 and BLOCK 3 in the Form Filler template.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 570

8

Using Optional Features
Figure 149.

Using Form Filler Plus
FFtemplate Prompt Flow Chart
Answer
Phone

Greeting

*8
Yes
Entered?
No

Execute Yes
Transcription
Script

Error
Note: If Execute is succesful, the caller
is not returned to this application

X=1

Form Prompt X
X=X+1
Re-Record = No
FF_Code X

Silence Reprompt

Yes
Silence
Detected?

Three
Yes
Attempts?

No
Play silence
failure message

No

Other
failure?

Yes

Play system
failure message

No

This sequence of steps
is optional and is associated
with the third form prompt.

Yes

No
Store
Record?

GOTO
GOODBYE

Yes

Third form prompt
sequence of steps
No

Form Response
Acknowledgement

No

Last
Form
Prompt?
Yes
FF_Store

Error?

Yes

Play system
failure message

No

GOTO
GOODBYE

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 571

8

Using Optional Features

Using Form Filler Plus

Figure 150 on page 573 shows another possible call flow for the Form Filler
template. The call flow shown i is optional and enables the script to prompt a
caller to re-record a message. The call flow shown in Figure 150 on page 573
uses the Third Form Prompt in the Form Filler template, that is, BLOCK 4.
These call flows are discussed later in this chapter.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 572

8

Using Optional Features
Figure 150.

Using Form Filler Plus
FFtemplate Optional Prompt Flow Chart
FF_Code X

Silence?
No

Other
failure?

This sequence is
not optional and
is part of the first and
second form prompts.

No

Re-Record = Yes
Re-Record
Response Prompt

This sequence is optional
and is associated with the
third form prompt.

Response Yes
too long?

Response
truncation
announcement

No

Yes

Re-Record
Response?

Play Response X

No

Yes Play
Response?
No

Last
Form
Prompt?

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 573

8

Using Optional Features

Using Form Filler Plus

After you have determined the call flow for your application that will be
developed from the FFtemplate, you can begin defining the transaction for
your Form Filler Plus application.
! CAUTION:
Use the BA CK U P key in Script Builder to make an archive copy of the
FFtemplate application before using it. You can restore from the backup copy
if the application is accidentally changed or destroyed.
Copying the
FFTemplate

To copy information from the FFtemplate application:
1 Highlight FFtemplate.
2 Press F8 (Chg-Keys), then F3 (Copy).
3 Enter the new application name in the form that appears.

Note:

The name “Market_Appl” is used in the following examples for the
sample marketing application that will be discussed below.

4 Press F3 (Save).

The cursor should now be on the new application name in the Script
Builder Applications screen.
5 Press F8 (Chg-Keys), then F4 (Define).

The system displays the Define Application menu (Figure 14 on page 40).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 574

8

Using Optional Features

Using Form Filler Plus

Defining
To define the parameters for this application:
Parameters for your
Application
1 From the Define Application menu (Figure 14 on page 40), select:

> Parameters
> Shared Speech Pools

The system displays the Shared Speech Pools window (Figure 151 on
page 575).
Figure 151.

Shared Speech Pools Window

2 Change the primary and secondary speech pool names to the name of

the new application. If you prefer, you can use existing speech pools by
entering these names in the Shared Speech Pools screen.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 575

8

Using Optional Features
Note:

Using Form Filler Plus

You can press F2 (Choices) to select existing speech pool(s) from
a menu. After you have selected speech pools, press F 3 (Close)
and then press F3 (Save). Press F6 (Cancel) to return to the
Define Application menu (Figure 14 on page 40).

See Chapter 6, Defining Parameters, for additional information.
Defining the
Transaction for
your Application

To define the transaction for this application:
1 From the Define Application menu (Figure 14 on page 40), select

> Transaction

The system displays the Define Transaction screen. Figure 152 on page
577 shows page one of the Define Transaction screen with information
displayed for the sample marketing application. Note that this is the same
information that would appear in the Define Transaction screen with
information displayed for the Form Filler template.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 576

8

Using Optional Features

Using Form Filler Plus

Figure 152.

Define Transaction Screen Market_Appl, Page 1

Define Transaction
start:
#------------------------------------------------------------------------#This Script Builder template may be used to start
#a Form Filler Plus application. There are three
#examples of form prompts in BLOCKS 2 - 4 below.
#These blocks may be copied or deleted to get the
#correct number of form prompts for your
#application. (Goto labels and statements
#should be modified accordingly). Phrase tags
#should be replaced with ones that are more
#meaningful. Parameters for each FF_Code should be
#changed to suit the new application if necessary
#(especially code_rate, maxsec and script_id).
#There is no speech provided with this template
#transaction. Record speech after changing
#or adding phrase tags. Please use a copy of this
#template for building your application to avoid
#modifying the original template.
#-------------------------------------------------------------------------

2 Press F7 (Show) to toggle (switch) the Define Transaction list back and

forth between the normal and expanded display modes.
You are now ready to build your new transaction using the Script Builder
function keys. The following is a discussion of the Form Filler template
provided with the Form Filler Plus package.
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 577

8

Using Optional Features

Using Form Filler Plus

What the Template Includes

You can use this template to create a customized Form Filler Plus
application. The template contains five distinct prototype blocks of Script
Builder instructions: An “Initialization” block (BLOCK 1), three “Form Prompt
Blocks” (BLOCKS 2 through 4), and a “Termination” block (BLOCK 5). Note
that the Initialization and Termination blocks should remain at the beginning
and end of the script, respectively. The three Form Prompt Blocks
demonstrate different ways that form prompts can be implemented. See
these examples to determine which Form Prompt Blocks most closely
resemble the form prompts you want to use in your application. Then see the
directions that follow to aid you in completing the transaction definition for
your customized application.
Initialization

In the Initialization block of the template (BLOCK 1), the caller dials a number
and is greeted by a menu and instructions. If the caller enters an “*8” access
code while the script is playing the system greeting, the script executes Form
Retriever (the transcription script) instead of the Form Filler Plus application.
Access to Form Retriever by way of the Execute action is useful in that it
allows you to start a new script on a channel, replacing the script that
performed the Execute action. This eliminates the need for dedicating
channels and telephone numbers exclusively to the transcription script.
Transcribers can call any application script telephone number to access the
transcription script.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 578

8

Using Optional Features

Using Form Filler Plus

Figure 153 on page 579 shows the code for the Initialization block of the
Form Filler template.
Figure 153.

FFtemplate Initialization Block (BLOCK 1)

start:
1. Answer Phone
2. Announce
Speak With Interrupt
Phrase: "Welcome Announcement"
#If the caller enters "*8during the above
#announcement, go to the Transcription Script.
3. Prompt & Collect
Input
Min Number Of Digits: 02
No. Of Tries To Get Input: 01
Initial Timeout: 03
Interdigit Timeout: 03
Checklist
Case: "*8"
Goto ExecTrans
Case: "Not On List"
Continue
Case: "Initial Timeout"
Continue
Case: "Too Few Digits"
Continue
Case: "No More Tries"
Continue
End Prompt & Collect
4. Goto FormPrompt1
ExecTrans:
5. External Action: Execute
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 579

8

Using Optional Features

Using Form Filler Plus

Application_Name: "transcribe"
Write_Call_Data_Record: "no"
End External Action
#If Execute returns then it failed to
#execute the Transcription Script.
6. Goto SYSTEM_FAILURE
First Form Prompt

In the First Form Prompt block of the template (BLOCK 2), the script plays the
first form prompt to the caller. Depending on the application, the first form
prompt can be either “What is your name?” or “What is your account
number?” or a request for similar information identifying the caller. The script
allows 20 seconds to collect the caller’s response (if any).
Next, the script verifies that something was recorded. The hangup indication
field Disables recording during the first form prompt, so the script does not
save the call record if the caller hangs up after responding to the first form
prompt. The caller is allowed three attempts to speak an answer in the first
field. If the script detects silence, it reprompts the caller. If the caller fails to
answer each of three attempts, the script plays a silence failure message and
does not store the record. If another script failure is detected, the script plays
the appropriate system failure message and goes to the GOODBYE step.
Figure 154 on page 581 shows the code for the First Form Prompt of the
Form Filler template.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 580

8

Using Optional Features
Figure 154.

Using Form Filler Plus
FFtemplate First Form Prompt (BLOCK 2)

FormPrompt1:
7. Announce
Speak With Interrupt
Phrase: "Form Prompt 1"
8. Set Field Value
Field: NUMTRIES = 0
FFCODE1:
9. External Action: FF_Code
code_rate: "ADPCM_16"
maxsec: 20
script_id: 1
hangup_detect_enable: "Disable"
re_record_phrase: "No"
tf_id_ph_id: FFPHRASE
Return Field: FFCODERET
End External Action
#Check for initial silence timeout.
10. Evaluate
If FFCODERET
= -2
11.
Set Field Value
Field: NUMTRIES = NUMTRIES + 1
12.
Evaluate
If NUMTRIES
= 3
13.
Goto SILENCE_FAILURE
End Evaluate
14.
Announce
Speak Without Interrupt
Phrase: "Silence Reprompt"
15.
Goto FFCODE1
End Evaluate
16. Evaluate
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 581

8

Using Optional Features

Using Form Filler Plus

If FFCODERET
< 0
Goto SYSTEM_FAILURE
End Evaluate
18. Announce
Speak Without Interrupt
Phrase: "Form Response Acknowledgment"
17.

Second Form Prompt

If the script does not detect silence or system failure during the First Form
Prompt, it proceeds to the Second Form Prompt (BLOCK 3) and plays the
second form prompt to the caller. Depending on the application, the second
form prompt can be either “What is your telephone number?” or a request for
similar information identifying the caller.
The script allows 20 seconds to collect the caller’s response (if any). Next,
the script verifies that something was recorded. The hangup indication field
Enables recording during the second form prompt, so the script stores a call
record automatically if the caller hangs up after recording the telephone
number. The caller is allowed three attempts to enter information in the
second field. If the script detects silence, the script reprompts the caller. If the
caller fails to enter a message on each of three attempts, the script plays a
silence failure message and stores the record. If another script failure is
detected, the script plays the appropriate system failure message and goes
to the GOODBYE step.
Figure 155 on page 583 shows the code for the Second Form Prompt of the
Form Filler template.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 582

8

Using Optional Features
Figure 155.

Using Form Filler Plus
FFtemplate Second Form Prompt

FormPrompt2:
19. Announce
Speak With Interrupt
Phrase: "Form Prompt 2"
20. Set Field Value
Field: NUMTRIES = 0
FFCODE2:
21. External Action: FF_Code
code_rate: "ADPCM_16"
maxsec: 20
script_id: 1
hangup_detect_enable: "Enable"
re_record_phrase: "No"
tf_id_ph_id: FFPHRASE
Return Field: FFCODERET
End External Action
#Check for initial silence timeout.
22. Evaluate
If FFCODERET
= -2
23.
Set Field Value
Field: NUMTRIES = NUMTRIES + 1
24.
Evaluate
If NUMTRIES
= 3
25.
Goto SILENCE_FAILURE
End Evaluate
26.
Announce
Speak Without Interrupt
Phrase: "Silence Reprompt"
27.
Goto FFCODE2
End Evaluate
28. Evaluate
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 583

8

Using Optional Features

Using Form Filler Plus

If FFCODERET
< 0
Goto SYSTEM_FAILURE
End Evaluate
30. Announce
Speak Without Interrupt
Phrase: "Form Response Acknowledgment"
29.

Third Form Prompt

In the Third Form Prompt (BLOCK 4) the caller is prompted to record a
message. The script allows 2 minutes (120 seconds) to collect the caller’s
message (if any). A 5-second grace period is used to allow the script to detect
when the caller has exceeded the allotted time limit. The caller is also given
the option of listening to the response and re-recording the message. If there
is no message recorded or a system failure occurs, the script goes to
STORE_RECORD, thereby allowing any previously recorded responses to
be stored.
Figure 156 on page 584 shows the code for the Third Form Prompt of the
Form Filler template.
Figure 156.

FFtemplate Third Form Prompt

FormPrompt3:
31. Announce
Speak With Interrupt
Phrase: "Form Prompt 3"
32. Set Field Value
Field: NUMTRIES = 0

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 584

8

Using Optional Features

Using Form Filler Plus

FFCODE3:
33. External Action: FF_Code
code_rate: "ADPCM_16"
maxsec: 125
script_id: 1
hangup_detect_enable: "Enable"
re_record_phrase: "No"
tf_id_ph_id: FFPHRASE
Return Field: FFCODERET
End External Action
#Check for initial silence timeout.
34. Evaluate
If FFCODERET
= -2
35.
Set Field Value
Field: NUMTRIES = NUMTRIES + 1
36.
Evaluate
If NUMTRIES
= 3
37.
Announce
Speak Without Interrupt
Phrase: "Silence Failure Message"
38.
Goto STORE_RECORD
End Evaluate
39.
Announce
Speak Without Interrupt
Phrase: "Silence Reprompt"
40.
Goto FFCODE3
End Evaluate
41. Evaluate
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 585

8

Using Optional Features

Using Form Filler Plus

If FFCODERET
< 0
Announce
Speak Without Interrupt
Phrase: "System Failure Message"
43.
Goto STORE_RECORD
End Evaluate
44. Announce
Speak Without Interrupt
Phrase: "Form Response Acknowledgment"
#Check if response exceeded time limit.
45. Evaluate
If FFCODERET
> 120
46.
Announce
Speak Without Interrupt
Phrase: "Response Truncation
Announcement"
End Evaluate
VERIFY3:
#Ask if caller wants to hear response.
47. Prompt & Collect
Prompt
Speak With Interrupt
Phrase: "Play Form Response Command 50.
Prompt & Collect
Prompt
Speak With Interrupt
Phrase: "Re-record Form Response Command
Menu"
42.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 586

8

Using Optional Features

Using Form Filler Plus

Input
Max Number Of Digits: 01
Checklist
Case: "1"
Goto PLAY3
Case: "0"
Continue
Case: "Not On List"
Speak Without Interrupt
Phrase: "Invalid Input Reprompt
Message"
Reprompt
Case: "Initial Timeout"
Continue
Case: "Too Few Digits"
Continue
Case: "No More Tries"
Continue
End Prompt & Collect
#If this is not the last form prompt, this goto
#should be replaced with one that jumps to the
#next form prompt (e.g., "goto FormPrompt4").
48. Goto STORE_RECORD
PLAY3:
#Play caller’s response.
49. Announce
Speak With Interrupt
Phrase: "Play Form Response Announcement"
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 587

8

Using Optional Features

Using Form Filler Plus

Field: FFPHRASE As NX
#Ask if caller would like to re-record response.
Menu"
Input
Max Number Of Digits: 01
Checklist
Case: "1"
Goto RERECORD3
Case: "0"
Continue
Case: "Not On List"
Speak Without Interrupt
Phrase: "Invalid Input Reprompt
Message"
Reprompt
Case: "Initial Timeout"
Continue
Case: "Too Few Digits"
Continue
Case: "No More Tries"
Continue
End Prompt & Collect
#If this is not the last form prompt, this goto
#should be replaced with one that jumps to the
#next form prompt (e.g., "goto FormPrompt4").
51. Goto STORE_RECORD
RERECORD3:
#Re-record caller’s response.
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 588

8

Using Optional Features

Using Form Filler Plus

#This procedure is similar to the above starting
#at FFCODE3, but with the re_record_phrase flag
#set to "Yes". The original response is deleted
#before re-recording starts.
52. Announce
Speak Without Interrupt
Phrase: "Re-record Form Response Prompt"
53. Set Field Value
Field: NUMTRIES = 0
FFRECODE3:
54. External Action: FF_Code
code_rate: "ADPCM_16"
maxsec: 125
script_id: 1
hangup_detect_enable: "Enable"
re_record_phrase: "Yes"
tf_id_ph_id: FFPHRASE
Return Field: FFCODERET
End External Action
#Check for initial silence timeout.
55. Evaluate
If FFCODERET
= -2
56.
Set Field Value
Field: NUMTRIES = NUMTRIES + 1
57.
Evaluate
If NUMTRIES
= 3
58.
Announce
Speak Without Interrupt
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 589

8

Using Optional Features

Using Form Filler Plus

Phrase: "Silence Failure Message"
Goto STORE_RECORD
End Evaluate
60.
Announce
Speak Without Interrupt
Phrase: "Silence Reprompt"
61.
Goto FFRECODE3
End Evaluate
62. Evaluate
If FFCODERET
< 0
63.
Announce
Speak Without Interrupt
Phrase: "System Failure Message"
64.
Goto STORE_RECORD
End Evaluate
65. Announce
Speak Without Interrupt
Phrase: "Form Response Acknowledgment"
66. Evaluate
If FFCODERET
> 120
67.
Announce
Speak Without Interrupt
Phrase: "Message Truncation
Announcement"
End Evaluate
68. Goto VERIFY3
59.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 590

8

Using Optional Features

Using Form Filler Plus

Termination

In the Termination block of the template (BLOCK 5) the script plays a goodbye announcement and terminates the call after either storing the record or
speaking a silence or system failure message.
Figure 157 on page 591 shows the code for the Termination block of the
Form Filler template.
Figure 157.

FFtemplate Termination Block (BLOCK 5)

STORE_RECORD:
69. External Action: FF_Store
return_field: FFSTORERET
End External Action
70. Evaluate
If FFSTORERET
< 0
71.
Goto SYSTEM_FAILURE
End Evaluate
72. Announce
Speak Without Interrupt
Phrase: "Goodbye Message"
73. Disconnect
74. Quit
SILENCE_FAILURE:
75. Announce
Speak Without Interrupt
Phrase: "Silence Failure Message"
76. Disconnect
77. Quit
SYSTEM_FAILURE:

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 591

8

Using Optional Features

Using Form Filler Plus

78. Announce
Speak Without Interrupt
Phrase: "System Failure Message"
79. Disconnect
80. Quit
Customizing the
FFtemplate for Your
Application

1 Use the R emove key to delete any Form Prompt Blocks that you do not

need for your application.
2 If you will be duplicating one or more of the Form Prompt Blocks in the

FFtemplate to make additional form prompts and the blocks that you
intend to copy and then use in your application have one or more phrases
in common, you will save time by redefining the common phrase tags
before you copy the Form Prompt Block(s).
To redefine the common phrase tags, move the cursor to each Announce
action step and redefine it with the Def ine key, changing phrase tags that
will be common between all of the Form Prompt Blocks to phrase tags
that are more meaningful for your particular application.
See Chapter 7, Defining the Transaction, for information on using the
Define Announce screen to define Announce action steps.
3 Use the C opy key to copy the additional Form Prompt Blocks that you

need for your application. Keep in mind that a maximum of 10 Form
Prompt Blocks can be used in any application.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 592

8

Using Optional Features

Using Form Filler Plus

4 Once you have the desired number and type of form prompts in the

desired order, you will want to customize each form prompt block. Check
all goto labels and statements that contain a prompt sequence number
(for example, FormPrompt3, FFCODE3, VERIFY3, PLAY3,
RERECORD3, and FFRECODE3 refer to the Third Form Prompt block in
the example and on the template). Either redefine these goto labels and
statements with the correct sequence number for the new application or
rename them to reflect the information being recorded with each prompt.
5 If you copy the Third Form Prompt block to make additional prompts,

make sure that the “Goto STORE_RECORD” instructions after the
VERIFY3 and PLAY3 labels are redefined to go to the next form prompt
(for example, “Goto FormPrompt4”) instead of STORE_RECORD if the
prompt is not the last one in the transaction.
6 Next, relabel the new form prompt blocks that you have copied. We

suggest that you relabel from the end of the transaction to the beginning
of the transaction, using the Sea rch key to locate the character string you
wish to replace.
7 Move the cursor to each Announce action step and, if necessary, redefine
it with the Def in e key, changing phrase tags to ones that are more

meaningful for your particular application. Note that if you have already
redefined common phrase tags in Step 2 of this procedure, you will not
need to define these phrase tags at this point.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 593

8

Using Optional Features

Using Form Filler Plus

See Chapter 7, Defining the Transaction, for information on using the
Define Announce screen to define Announce action steps.
8 Move the cursor to each Prompt & Collect action step and redefine the

PROMPT, INPUT, or CHECKLIST screen if necessary. If you want to be
able to access the transcription script (Form Retriever) from your
application, change the “*8” access code that is used to execute this
transcription script in the first Prompt & Collect action step of the template
to an access code that is more meaningful for your particular application.
If you will use an access code with more than digits, you will need to
change the Min. No. of Digits field on the Define Prompt and Collect
INPUT screen to account for the additional digits. In addition, you will
need to change the Case field on the Define Prompt and Collect
CHECKLIST screen to the actual password you are using for the Execute
action. If you do not want to access the transcription script from your
application, delete the comment and that portion of the code that deals
with the execute feature from the Initialization block (BLOCK 1) of your
application.
See Chapter 7, Defining the Transaction, for information on using the
Define Prompt and Collect screens to define Prompt & Collect action
steps.
9 Move the cursor to each FF_Code action and redefine the Code Rate
and Type, Maximum Phrase Length, Script Identification, and
Hangup Indication with the D efi ne key if necessary.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 594

8

Using Optional Features
Note:

Using Form Filler Plus

Form Prompt 3 in the template includes a 5-second “grace period”
for use in determining when the caller has recorded a response
that exceeds the time limit. In the template, this grace period is
embedded in the Evaluate actions where the test “If FFCODERET
> 120” is performed. If you want to maintain this feature, set the
number of seconds in the Evaluate actions to the actual time limit
(120 seconds in the case of the template). In addition, add the
grace period (for example, 5 seconds) to the Maximum Phrase
Length field in the FF_Code action.

10 Use the R emove key to remove any remaining comments that do not
apply to your application. Use the A dd key to add any comments that are

appropriate for your application.
11 When you are finished, save the transaction by pressing C hg -K eys , then
Sav e . Press Ca ncel to return to the Define Application screen.
Producing Speech You are now ready to identify speech for your new application.
for your Application
1 In the Define Application menu (Figure 14 on page 40), select:
>Speech Administration

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 595

8

Using Optional Features

Using Form Filler Plus

2 If spadm is not assigned to an in-service channel or DNIS, a form screen

automatically appears asking for a valid in-service channel number. Enter
a valid in-service channel number, then press CLOSE. It is important that
you enter a Tip/Ring channel that is INSERV. For additional information
on determining which channel is INSERV, see Chapter 3, “Voice System
Administration,” in Intuity CONVERSANT System Version 7.0
Administration, 585-313-501. If the channel number that you enter is on a
E1/T1 circuit card, a message is displayed instructing you to use the
Configuration Management menus under Voice System Administration to
make the assignment. It is not recommended that you assign service to a
specific E1/T1 channel. This service should be assigned to a DNIS
number instead.
3 Press Co nt or Sa ve to close the form screen asking for a valid in-service

channel.
4 Press Cont.

The system displays the Speech Administration screen. The Speech
Administration screen identifies the speech that you must record for your
application. See Chapter 9, Speech Administration, for the procedure for
recording speech.
5 Press Ca ncel to return to the Define Application menu.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 596

8

Using Optional Features

Installing your
Application

Using Form Filler Plus

1 While viewing the Define Application menu, press Ve ri fy to start verifying

the application.
The Verify Procedure message screen opens.
If the verification is not successful, make the necessary changes.
2 After the system successfully verifies your application, press Inst all to

continue with the installation of the application.
The Install Procedure message screen opens.
See Chapter 10, Application Administration, for additional information on
installing and verifying an application.
Assigning your
Application to
Channels or Called
Numbers

1 From the Voice System Administration menu (Figure 127), select:

> Configuration Management
>Voice Equipment
> Voice Services

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 597

8

Using Optional Features

Using Form Filler Plus

2 To assign the application to a channel, select:

> Channel Services

3 To assign the application to a dialed number, select:

> Number Services

For additional information on assigning services to channels or called
numbers, see Chapter 3, “Voice System Administration,” in Intuity
CONVERSANT System Version 7.0 Administration, 585-313-501.

Sample Marketing Application
Following is an example of a marketing application that has been developed
using the Form Filler Plus template. This section contains information about
how the template was modified to suit this marketing application.
Figure 158 on page 599 shows a sample “marketing information form” to be
converted to script form using the Form Filler template. The transaction is
shown in the example at the end of this section.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 598

8

Using Optional Features
Figure 158.

Using Form Filler Plus
Sample Marketing Information Form
Form Filler Call Record Summary Report

Report generated Mon. January 30 13:49:40 1992
Form Filler Call Record Summary
__________________________

Script
ID

Records to
Transcribe

Records to
Review

11

1

1

HELP

Initialization

Oldest
Record

Newest
Record

Jun 16 1991 T Dec 10 12:14 R

PREVPAGE NEXTPAGE PREV-FRM NEXT-FRM

CANCEL CMD-MENU CHG-KEYS

The sample marketing application in Figure 158 on page 599 modifies the
Initialization block to execute the transcription script if the caller enters a
“*1234#” access code. In addition, this application changes the No. of
Digits fields in the Define Prompt and Collect INPUT screen to “06” and the
Case field in the Define Prompt and Collect CHECKLIST screen to “*1234#.”
For the sample marketing application, it was necessary to increase the
recording time limit by changing the Desired Coding Time field in the
Speech Recording Parameters screen to a value that enabled a longer

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 599

8

Using Optional Features

Using Form Filler Plus

welcome announcement to be recorded and played. The Desired Coding
Time default value is 30 seconds. For the sample marketing application, this
value was increased to 60 seconds. See Chapter 9, Speech Administration,
for additional information.
First Form Prompt:
Name

The sample marketing application modifies the first form prompt of the
template to prompt the caller to spell a first and last name.
Note:

Second Form
Prompt: Telephone
Number

If your application executes a Goto the SILENCE_FAILURE or
SYSTEM_FAILURE labels after recording the first response to the
first form prompt, FF_Store will not be performed. Consequently,
the Form Filler Plus Last Audit Report will show the deletion of
phrases that have not been stored.

The sample marketing application modifies the second form prompt of the
template to prompt the caller for a telephone number.

Third Form Prompt: The sample marketing application copies and then modifies the second form
Street Address
prompt (BLOCK 3) of the template to prompt the caller for a nine-digit

telephone number (beginning with the area code).
The call flow for the third form prompt of the marketing application is similar to
that of the second form prompt. Note, however, that if there is no message
recorded or a system failure occurs, the script goes to STORE_RECORD,
thereby allowing any previously recorded responses to be stored.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 600

8

Using Optional Features

Using Form Filler Plus

Fourth Form
Prompt: City

The sample marketing application copies and then modifies the second form
prompt of the template to prompt the caller to record the name of the caller’s
city. The call flow for the fourth form prompt of the marketing application will
be similar to that of the second form prompt. Note, however, that if there is no
message recorded or a system failure occurs, the script goes to
STORE_RECORD, thereby allowing any previously recorded responses to
be stored.

Fifth Form Prompt:
State

The sample marketing application copies and then modifies the second form
prompt of the template to prompt the caller to record the name of the caller’s
state.
The call flow for the fifth form prompt of the marketing application is similar to
that of the second form prompt. Note, however, that if there is no message
recorded or a system failure occurs, the script goes to STORE_RECORD,
thereby allowing any previously recorded responses to be stored.

Sixth Form Prompt: The sample marketing application copies and then modifies the second form
Zip Code
prompt of the template to prompt the caller to record the caller’s five-digit zip

code.
The call flow for this block is similar to that of the second form prompt. Note,
however, that if there is no message recorded or a system failure occurs, the
script goes to STORE_RECORD, thereby allowing any previously recorded
responses to be stored.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 601

8

Using Optional Features

Seventh Form
Prompt: Message

Using Form Filler Plus

The speech recorded for the marketing application did not take longer than
the 30-second recording time limit set (by default) in the Speech Recording
Parameters screen. Therefore, it was not necessary to increase the recording
time limit as was done in the Initialization block of this sample application.
If the speech recorded for your application will take longer than 30 seconds to
record, you will need to increase the recording time limit by changing the
Desired Coding Time field in the Speech Recording Parameters screen to a
value that will enable a longer form prompt to be recorded. See Chapter 9,
Speech Administration, for additional information.

Speech Used in the
Sample Marketing
Application

Table 50 on page 606 and Table 49 on page 603 provide examples of phrase
tags and speech that might be recorded for the corresponding Form Filler
template tag in the sample marketing application. Table 50 on page 606 lists
the phrase tags that are common for each of the duplicated blocks in the
marketing application. Redefine each of these common phrase tags before
the Form Prompt Block is copied.
Table 49 on page 603 lists the phrase tags that are not common for each of
the duplicated blocks in the marketing application. Redefine each of common
phrase tags after the Form Prompt Block is copied.
Note that the “FFtemplate Tag” column in Table 50 on page 606 and Table 49
on page 603 corresponds to the phrases used in the Announce and the
Prompt & Collect action steps in the FFtemplate. The “Application Tag”
column corresponds to the phrases associated with the Announce and the
Prompt & Collect action steps of the marketing application. The “Recorded

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 602

8

Using Optional Features

Using Form Filler Plus

Application Speech” column corresponds to the speech that will be recorded
in the Speech Administration screen for the corresponding application tag in
the marketing application.
Table 49.

Phrase Tag Modifications and Corresponding Speech — Common

FFTemplate Tag

Application Tag

Recorded Application Speech

Welcome
Announcement

Welcome to the
marketing
application
system...

“Thank you for calling the ABC Company’s
marketing information system. This
information system enables you to sign up
to receive one or more of our catalogs or to
leave a message for a customer service
representative. Please stay on the line and
answer the following questions. Remember
that you must speak an answer to all of
these questions. After you answer these
questions, the catalogs you have requested
will be mailed automatically within 2 weeks.
If you leave a message for a customer
service representative, a representative will
return your call within 24 hours. Please wait
for the tone before speaking. Thank you.”

1 of 3

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 603

8

Using Optional Features
Table 49.

Using Form Filler Plus

Phrase Tag Modifications and Corresponding Speech — Common

FFTemplate Tag

Application Tag

Recorded Application Speech

Silence Reprompt

We were unable to
record your
response.

“We were unable to record your response.
Please try again.”

Form Response
Acknowledgement

Thank you.

“Thank you.”

Silence Failure
Message

We were unable to
record your
message.

“We were unable to record your message.
Please call back later. Thank you.”

System Failure
Message

We are
experiencing
technical difficulty.

“We are experiencing technical difficulty.
Please call back later. Thank you.”

Response
Truncation
Announcement

Maximum recording
time exceeded.

“You have exceeded the maximum time
allowed for this response.”

Play Form
Response
Command Menu

Press 1 to playback,
0 to continue.

“If you would like to listen to your last
response, press 1. Otherwise, press 0 or
wait to continue.”

2 of 3

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 604

8

Using Optional Features
Table 49.

Using Form Filler Plus

Phrase Tag Modifications and Corresponding Speech — Common

FFTemplate Tag

Application Tag

Recorded Application Speech

Invalid Input
Reprompt
Message

Invalid response.
Please try again.

“Please respond again with a different
choice.”

Play Form
Response
Announcement

Your response
was...

“Your response was...”

Re-record Form
Response
Command Menu

Press 1 to rerecord, 0 to
continue.

“If you would like to re-record your
response, press 1. Otherwise, press 0 or
wait to continue.”

Re-record Form
Response Prompt

Re-record after the
tone.

“Please begin re-recording after the tone.”

Goodbye Message

Goodbye.

“Thank you for calling. Goodbye.”

3 of 3

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 605

8

Using Optional Features

Table 50.

Using Form Filler Plus

Phrase Tag Modifications and Corresponding Speech — Common

FFTemplate Tag

Application
Tag

Recorded Application Speech

Welcome
Announcement

Welcome to
the marketing
application
system...

“Thank you for calling the ABC Company’s
marketing information system. This information
system enables you to sign up to receive one or
more of our catalogs or to leave a message for a
customer service representative. Please stay on
the line and answer the following questions.
Remember that you must speak an answer to all
of these questions. After you answer these
questions, the catalogs you have requested will
be mailed automatically within 2 weeks. If you
leave a message for a customer service
representative, a representative will return your
call within 24 hours. Please wait for the tone
before speaking. Thank you.”

Silence Reprompt

We were
unable to
record your
response.

“We were unable to record your response. Please
try again.”

1 of 3

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 606

8

Using Optional Features

Table 50.

Using Form Filler Plus

Phrase Tag Modifications and Corresponding Speech — Common

FFTemplate Tag

Application
Tag

Recorded Application Speech

Form Response
Acknowledgement

Thank you.

“Thank you.”

Silence Failure
Message

We were
unable to
record your
message.

“We were unable to record your message. Please
call back later. Thank you.”

System Failure
Message

We are
experiencing
technical
difficulty.

“We are experiencing technical difficulty. Please
call back later. Thank you.”

Response Truncation
Announcement

Maximum
recording time
exceeded.

“You have exceeded the maximum time allowed
for this response.”

Play Form Response
Command Menu

Press 1 to
playback, 0 to
continue.

“If you would like to listen to your last response,
press 1. Otherwise, press 0 or wait to continue.”
2 of 3

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 607

8

Using Optional Features

Table 50.

Using Form Filler Plus

Phrase Tag Modifications and Corresponding Speech — Common

FFTemplate Tag

Application
Tag

Recorded Application Speech

Invalid Input Reprompt
Message

Invalid
response.
Please try
again.

“Please respond again with a different choice.”

Play Form Response
Announcement

Your response
was...

“Your response was...”

Re-record Form
Response Command
Menu

Press 1 to rerecord, 0 to
continue.

“If you would like to re-record your response,
press 1. Otherwise, press 0 or wait to continue.”

Re-record Form
Response Prompt

Re-record after
the tone.

“Please begin re-recording after the tone.”

Goodbye Message

Goodbye.

“Thank you for calling. Goodbye.”
3 of 3

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 608

8

Using Optional Features

Table 51.

Using Form Filler Plus

Phrase Tag Modifications and Corresponding Speech — Not Common

FFTemplate Tag

Application Tag

Recorded Application Speech

Form Prompt 1

Enter full name.

“Please spell your first and last name after the tone.”

Form Prompt 2
(first copy)

Enter telephone
number.

“Please record your telephone number, beginning
with the area code, after the tone.”

Form Prompt 2
(second copy)

Enter address.

“Please record your street address after the tone.”

Form Prompt 2
(third copy)

Enter city.

“Please record the name of your city after the tone.”

Form Prompt 2
(fourth copy)

Enter state.

“Please record the name of your state after the
tone.”

Form Prompt 2
(fifth copy)

Enter zip code.

“Please record your five-digit zip code after the
tone.”

Form Prompt 3

Enter message.

“You can now speak the names of the catalogs you
would like mailed to you or record a brief message
for a customer service representative. You can
speak for up to 2 minutes. Please record after the
tone.”

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 609

8

Using Optional Features

Using Form Filler Plus

Figure 159 on page 610 shows the marketing application developed with the
FFtemplate.
Figure 159. Sample Marketing Application
start:
#-------------------------------------------------#The following Script Builder application illustrates
#how the Script Builder template provided with the
#Form Filler Plus application can be used to create a
#can be used to create a marketing application.
#-------------------------------------------------1.
Answer Phone
2.
Announce
Speak With Interrupt
Phrase: "Welcome to the Marketing application
system..."
#If the caller enters "*1234#" during the previous
#announcement, go to the Transcription Script.
3.
Prompt & Collect
Input
Min Number Of Digits: 06
No. Of Tries To Get Input: 01
Initial Timeout: 03
Interdigit Timeout: 03
Checklist
Case: "*1234#"
Goto ExecTrans
Case: "Not On List"
Continue
Case: "Initial Timeout"
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 610

8

Using Optional Features

4.
5.

6.

7.

8.

9.

Using Form Filler Plus

Continue
Case: "Too Few Digits"
Continue
Case: "No More Tries"
Continue
End Prompt & Collect
Goto FormPrompt1
ExecTrans:
External Action: Execute
Application_Name: "transcribe"
Write_Call_Data_Record: "no"
End External Action
#If Execute returns then it failed to
#execute the Transcription Script.
Goto SYSTEM_FAILURE
#-------------------------------------------------#First Form Prompt.
#Record Caller’s Full Name.
#Record a 20 second response with hangup detect
#disabled. Try 3 times if no response.
#-------------------------------------------------FormPrompt1:
Announce
Speak With Interrupt
Phrase: "Enter full name."
Set Field Value
Field: NUMTRIES = 0
FFCODE1:
External Action: FF_Code

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 611

8

Using Optional Features

10.
11.
12.
13.
14.

15.

16.
17.
18.

Using Form Filler Plus

code_rate: "ADPCM_16"
maxsec: 20
script_id: 1
hangup_detect_enable: "Disable"
re_record_phrase: "No"
tf_id_ph_id: FFPHRASE
Return Field: FFCODERET
End External Action
#Check for initial silence timeout.
Evaluate
If FFCODERET
= -2
Set Field Value
Field: NUMTRIES = NUMTRIES + 1
Evaluate
If NUMTRIES
= 3
Goto SILENCE_FAILURE
End Evaluate
Announce
Speak Without Interrupt
Phrase: "We were unable to record your
response."
Goto FFCODE1
End Evaluate
#Check for system failure.
Evaluate
If FFCODERET
< 0
Goto SYSTEM_FAILURE
End Evaluate
Announce
Speak Without Interrupt

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 612

8

Using Optional Features

19.

20.

21.

22.

Using Form Filler Plus

Phrase: "Thank you."
#-------------------------------------------------#Second Form Prompt.
#Record Caller’s Phone Number.
#Record a 20 second response with hangup detect
#enabled. Try 3 times if no response.
#If we go to SILENCE_FAILURE or SYSTEM_FAILURE
#after recording the name, no FF_Store
#will be done. The Audit will need to delete
#phrases that have not been stored.
#-------------------------------------------------FormPrompt2:
Announce
Speak With Interrupt
Phrase: "Enter phone number."
Set Field Value
Field: NUMTRIES = 0
FFCODE2:
External Action: FF_Code
code_rate: "ADPCM_16"
maxsec: 20
script_id: 1
hangup_detect_enable: "Enable"
re_record_phrase: "No"
tf_id_ph_id: FFPHRASE
Return Field: FFCODERET
End External Action
#Check for initial silence timeout.
Evaluate

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 613

8

Using Optional Features

23.
24.
25.
26.

27.

28.
29.
30.

Using Form Filler Plus

If FFCODERET
= -2
Set Field Value
Field: NUMTRIES = NUMTRIES + 1
Evaluate
If NUMTRIES
= 3
Goto SILENCE_FAILURE
End Evaluate
Announce
Speak Without Interrupt
Phrase: "We were unable to record your
response."
Goto FFCODE2
End Evaluate
#Check for system failure.
Evaluate
If FFCODERET
< 0
Goto SYSTEM_FAILURE
End Evaluate
Announce
Speak Without Interrupt
Phrase: "Thank you."
#-------------------------------------------------#Third Form Prompt.
#Record Caller’s Street Address.
#Record a 20 second response with hangup detect
#enabled. Try 3 times if no response.
#This prompt and all remaining prompts will try to
#store the call record if a silence failure or
#system failure occurs. At this point we have a
#name and phone number; we can contact the caller.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 614

8

Using Optional Features

31.

32.

33.

34.
35.
36.
37.

38.

Using Form Filler Plus

#-------------------------------------------------FormPrompt3:
Announce
Speak With Interrupt
Phrase: "Enter address."
Set Field Value
Field: NUMTRIES = 0
FFCODE3:
External Action: FF_Code
code_rate: "ADPCM_16"
maxsec: 20
script_id: 1
hangup_detect_enable: "Enable"
re_record_phrase: "No"
tf_id_ph_id: FFPHRASE
Return Field: FFCODERET
End External Action
#Check for initial silence timeout.
Evaluate
If FFCODERET
= -2
Set Field Value
Field: NUMTRIES = NUMTRIES + 1
Evaluate
If NUMTRIES
= 3
Announce
Speak Without Interrupt
Phrase: "We are unable to record your
message."
Goto STORE_RECORD

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 615

8

Using Optional Features

Using Form Filler Plus

End Evaluate
Announce
Speak Without Interrupt
Phrase: "We were unable to record your
response."
40.
Goto FFCODE3
End Evaluate
#Check for system failure.
41. Evaluate
If FFCODERET
< 0
42.
Announce
Speak Without Interrupt
Phrase: "We are experiencing technical
difficulty."
43.
Goto STORE_RECORD
End Evaluate
44. Announce
Speak Without Interrupt
Phrase: "Thank you."
#-------------------------------------------------#Fourth Form Prompt.
#Record Caller’s City.
#Record a 20 second response with hangup detect
#enabled. Try 3 times if no response.
#-------------------------------------------------FormPrompt4:
45. Announce
Speak With Interrupt
Phrase: "Enter city."
46. Set Field Value
39.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 616

8

Using Optional Features

Using Form Filler Plus
Field: NUMTRIES = 0

FFCODE4:
External Action: FF_Code
code_rate: "ADPCM_16"
maxsec: 20
script_id: 1
hangup_detect_enable: "Enable"
re_record_phrase: "No"
tf_id_ph_id: FFPHRASE
Return Field: FFCODERET
End External Action
#Check for initial silence timeout.
48. Evaluate
If FFCODERET
= -2
49.
Set Field Value
Field: NUMTRIES = NUMTRIES + 1
50.
Evaluate
If NUMTRIES
= 3
51.
Announce
Speak Without Interrupt
Phrase: "We are unable to record your
message."
52.
Goto STORE_RECORD
End Evaluate
53.
Announce
Speak Without Interrupt
Phrase: "We were unable to record your
response."
54.
Goto FFCODE4
47.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 617

8

Using Optional Features

Using Form Filler Plus

End Evaluate
#Check for system failure.
55. Evaluate
If FFCODERET
< 0
56.
Announce
Speak Without Interrupt
Phrase: "We are experiencing technical
difficulty."
57.
Goto STORE_RECORD
End Evaluate
58. Announce
Speak Without Interrupt
Phrase: "Thank you."
#-------------------------------------------------#Fifth Form Prompt.
#Record Caller’s State.
#Record a 20 second response with hangup detect
#enabled. Try 3 times if no response.
#-------------------------------------------------FormPrompt5:
59. Announce
Speak With Interrupt
Phrase: "Enter state."
60. Set Field Value
Field: NUMTRIES = 0
FFCODE5:
61. External Action: FF_Code
code_rate: "ADPCM_16"
maxsec: 20
script_id: 1

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 618

8

Using Optional Features

62.
63.
64.
65.

66.
67.

68.

69.
70.

Using Form Filler Plus

hangup_detect_enable: "Enable"
re_record_phrase: "No"
tf_id_ph_id: FFPHRASE
Return Field: FFCODERET
End External Action
#Check for initial silence timeout.
Evaluate
If FFCODERET
= -2
Set Field Value
Field: NUMTRIES = NUMTRIES + 1
Evaluate
If NUMTRIES
= 3
Announce
Speak Without Interrupt
Phrase: "We are unable to record your
message."
Goto STORE_RECORD
End Evaluate
Announce
Speak Without Interrupt
Phrase: "We were unable to record your
response."
Goto FFCODE5
End Evaluate
#Check for system failure.
Evaluate
If FFCODERET
< 0
Announce
Speak Without Interrupt
Phrase: "We are experiencing technical

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 619

8

Using Optional Features

Using Form Filler Plus

difficulty."
Goto STORE_RECORD
End Evaluate
72. Announce
Speak Without Interrupt
Phrase: "Thank you."
#-------------------------------------------------#Sixth Form Prompt.
#Record Caller’s Zip Code.
#Record a 20 second response with hangup detect
#enabled. Try 3 times if no response.
#-------------------------------------------------FormPrompt6:
73. Announce
Speak With Interrupt
Phrase: "Enter zip code."
74. Set Field Value
Field: NUMTRIES = 0
FFCODE6:
75. External Action: FF_Code
code_rate: "ADPCM_16"
maxsec: 20
script_id: 1
hangup_detect_enable: "Enable"
re_record_phrase: "No"
tf_id_ph_id: FFPHRASE
Return Field: FFCODERET
End External Action
#Check for initial silence timeout.
76. Evaluate
71.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 620

8

Using Optional Features

77.
78.
79.

80.
81.

82.

83.
84.

85.
86.

Using Form Filler Plus

If FFCODERET
= -2
Set Field Value
Field: NUMTRIES = NUMTRIES + 1
Evaluate
If NUMTRIES
= 3
Announce
Speak Without Interrupt
Phrase: "We are unable to record your
message."
Goto STORE_RECORD
End Evaluate
Announce
Speak Without Interrupt
Phrase: "We were unable to record your
response."
Goto FFCODE6
End Evaluate
#Check for system failure.
Evaluate
If FFCODERET
< 0
Announce
Speak Without Interrupt
Phrase: "We are experiencing technical
difficulty."
Goto STORE_RECORD
End Evaluate
Announce
Speak Without Interrupt
Phrase: "Thank you."
#--------------------------------------------------

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 621

8

Using Optional Features

87.

88.

89.

90.
91.

Using Form Filler Plus

#Seventh Form Prompt.
#Record Caller’s Message.
#Record a 120 second response with hangup detect
#enabled. Try 3 times if no response.
#A 5 second "grace period" is added to maxsec
#below to detect a message that is too long.
#The caller will be allow to listen to and
#re-record the message if desired.
#-------------------------------------------------FormPrompt7:
Announce
Speak With Interrupt
Phrase: "Enter message."
Set Field Value
Field: NUMTRIES = 0
FFCODE7:
External Action: FF_Code
code_rate: "ADPCM_16"
maxsec: 125
script_id: 1
hangup_detect_enable: "Enable"
re_record_phrase: "No"
tf_id_ph_id: FFPHRASE
Return Field: FFCODERET
End External Action
#Check for initial silence timeout.
Evaluate
If FFCODERET
= -2
Set Field Value
Field: NUMTRIES = NUMTRIES + 1

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 622

8

Using Optional Features

Using Form Filler Plus

92.

Evaluate
If NUMTRIES
= 3
93.
Announce
Speak Without Interrupt
Phrase: "We are unable to record your
message."
94.
Goto STORE_RECORD
End Evaluate
95.
Announce
Speak Without Interrupt
Phrase: "We were unable to record your
response."
96.
Goto FFCODE7
End Evaluate
#Check for system failure.
97. Evaluate
If FFCODERET
< 0
98.
Announce
Speak Without Interrupt
Phrase: "We are experiencing technical
difficulty."
99.
Goto STORE_RECORD
End Evaluate
100. Announce
Speak Without Interrupt
Phrase: "Thank you."
#Check if response exceeded time limit.
101. Evaluate
If FFCODERET
> 120
102.
Announce

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 623

8

Using Optional Features

Using Form Filler Plus

Speak Without Interrupt
Phrase: "Maximum recording time exceeded."
End Evaluate
VERIFY7:
#Would you like to hear the message you recorded?
103. Prompt & Collect
Prompt
Speak With Interrupt
Phrase: "Press 1 to playback, 0 to continue."
Input
Max Number Of Digits: 01
Checklist
Case: "1"
Goto PLAY7
Case: "0"
Continue
Case: "Not On List"
Speak Without Interrupt
Phrase: "Invalid response. Please try again."
Reprompt
Case: "Initial Timeout"
Continue
Case: "Too Few Digits"
Continue
Case: "No More Tries"
Continue
End Prompt & Collect
104. Goto STORE_RECORD
PLAY7:
#Play caller’s response.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 624

8

Using Optional Features

Using Form Filler Plus

105.

Announce
Speak With Interrupt
Phrase: "Your response was..."
Field: FFPHRASE As NX
#Would you like to re-record your message?
106. Prompt & Collect
Prompt
Speak With Interrupt
Phrase: "Press 1 to re-record, 0 to continue."
Input
Max Number Of Digits: 01
Checklist
Case: "1"
Goto RERECORD7
Case: "0"
Continue
Case: "Not On List"
Speak Without Interrupt
Phrase: "Invalid response. Please try again."
Reprompt
Case: "Initial Timeout"
Continue
Case: "Too Few Digits"
Continue
Case: "No More Tries"
Continue
End Prompt & Collect
107. Goto STORE_RECORD
RERECORD7:
#Re-record caller’s response.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 625

8

Using Optional Features

108.

109.

110.

111.
112.
113.
114.

Using Form Filler Plus

#This procedure is similar to the above starting
#at FFCODE7, but with the re_record_phrase flag
#set to "Yes". The original response is deleted
#before re-recording starts.
Announce
Speak Without Interrupt
Phrase: "Re-record after the tone."
Set Field Value
Field: NUMTRIES = 0
FFRECODE7:
External Action: FF_Code
code_rate: "ADPCM_16"
maxsec: 125
script_id: 1
hangup_detect_enable: "Enable"
re_record_phrase: "Yes"
tf_id_ph_id: FFPHRASE
Return Field: FFCODERET
End External Action
#Check for initial silence timeout.
Evaluate
If FFCODERET
= -2
Set Field Value
Field: NUMTRIES = NUMTRIES + 1
Evaluate
If NUMTRIES
= 3
Announce
Speak Without Interrupt
Phrase: "We are unable to record your
message."

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 626

8

Using Optional Features
115.
116.

117.

118.
119.

120.
121.

122.
123.

124.

Using Form Filler Plus

Goto STORE_RECORD
End Evaluate
Announce
Speak Without Interrupt
Phrase: "We were unable to record your
response."
Goto FFRECODE7
End Evaluate
#Check for system failure.
Evaluate
If FFCODERET
< 0
Announce
Speak Without Interrupt
Phrase: "We are experiencing technical
difficulty."
Goto STORE_RECORD
End Evaluate
Announce
Speak Without Interrupt
Phrase: "Thank you."
Evaluate
If FFCODERET
> 120
Announce
Speak Without Interrupt
Phrase: "Maximum recording time exceeded."
End Evaluate
Goto VERIFY7
#-------------------------------------------------#Terminate the call after either storing the record
#or speaking system failure or silence failure

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 627

8

Using Optional Features

125.

126.
127.
128.

129.
130.
131.

132.
133.
134.

135.
136.

Using Form Filler Plus

#messages and saying goodbye.
#-------------------------------------------------STORE_RECORD:
External Action: FF_Store
return_field: FFSTORERET
End External Action
Evaluate
If FFSTORERET
< 0
Goto SYSTEM_FAILURE
End Evaluate
Announce
Speak Without Interrupt
Phrase: "Goodbye."
Disconnect
Quit
SILENCE_FAILURE:
Announce
Speak Without Interrupt
Phrase: "We are unable to record your message."
Disconnect
Quit
SYSTEM_FAILURE:
Announce
Speak Without Interrupt
Phrase: "We are experiencing technical
difficulty."
Disconnect
Quit

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 628

9 Speech Administration
Overview
Most Intuity CONVERSANT applications involve playing recorded speech to
the caller. This chapter describes the speech administration component of
Script Builder.
Topics covered include:
•

Speech Terminology on page 630

•

The Speech Administration Window on page 637

•

Recording, Editing, and Playing Speech on page 645

•

Copying Speech on page 660

•

Importing Speech on page 661

•

Removing Speech on page 664

•

Sharing Speech on page 666

•

Restoring Speech on page 668

•

Enhanced Basic Speech Library on page 670

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 629

9

Speech Administration
•

Speech Terminology

Professionally Recorded Speech on page 671

For detailed information about speech development, see Intuity
CONVERSANT System Version 7.0 Speech Development, Processing, and
Recognition, 585-313-201.

Speech Terminology
Phrases
A phrase refers to a unit of speech (for example, letter, number, word,
sentence, paragraph) that is spoken to the caller. Examples of phrases
include a welcome message, a bank balance, or the name of a month. Every
speech phrase in an application is identified by a phrase tag or phrase
number. A script speaks a phrase to callers by referencing either the phrase
tag or the phrase number in the application.
Phrase Tags

A phrase tag identifies a specific phrase. When you define a message to be
played in the transaction component, you specify a given phrase by its tag
(as opposed to its content). Three different types of phrase tags exist,
standard, custom, and predefined.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 630

9

Speech Administration
•

Speech Terminology

Standard phrase tags
Enhanced basic speech (EBS) is made up of commonly used (standard)
phrases, in each available language, such as:
~ Monetary values
~ Time
~ Weekdays
~ Months
~ Numbers

See Enhanced Basic Speech Library on page 670 for more information.
•

Custom phrase tags
Custom phrase tags are designed specifically for the application you are
developing. For example,
~ “account”
~ “bank”
~ “credit”
~ “interest”

Predefined Phrase
Tags

Several phrases are used by Script Builder for spoken output, such as
phrases of the digits and letters in various inflections. These phrases have
predefined phrase tags. Predefined phrase tags always begin with a colon (:).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 631

9

Speech Administration

Speech Terminology

Do not use a colon as the first character in any phrase tag. Confusion can
arise if a colon is used in any instance other than for predefined phrase tags.
Note:

If you try to enter a phrase tag that begins with a colon in the
Define Announce screen, the software accepts it only as part of
one of the predefined phrase tags. If you use a colon on any other
phrase tag, a warning message appears on the message line
when you press E NT ER or F3 (Close).

Table 52 on page 633 and Table 53 on page 635 list all the predefined phrase
tags.
Inflections

Three types of inflection exist with speech phrases: rising, medial, and falling.
Rising inflection is used in questions and at the beginning of some words. For
example, in the question “Are you coming to work tomorrow?,” the word “are”
is spoken with rising inflection. Medial inflection is usually used in the middle
of a word or statement. For example, when you speak the number “101”, “0”
is spoken with medial inflection. Falling inflection is usually used at the end of
a word or statement. For example, when you speak “2.0,” the “0” is spoken
with falling inflection.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 632

9

Speech Administration

Speech Terminology

Table 52.

Predefined Phrase Tags — Digits

Inflection
Rising

Medial

Falling

:0?

:0

:0.

:1?

:1

:1.

:2?

:2

:2.

:3?

:3

:3.

:4?

:4

:4.

:5?

:5

:5.

:6?

:6

:6.

:7?

:7

:7.

:8?

:8

:8.

:9?

:9

:9.

:10?

:10

:10.

:11?

:11

:11.

:20?

:20

:20.
1 of 2

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 633

9

Speech Administration

Speech Terminology
Table 52.

Predefined Phrase Tags — Digits

Inflection
Rising

Medial

Falling

:30?

:30

:30.

:100?

:100

:100.

:1000?

:1000

:1000.

:1000000?

:1000000

:1000000.

to

to

to
2 of 2

Note:

See Formats for Spoken Output on page 53 in Chapter 3, Data
Management, for additional information on spoken output and
inflection.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 634

9

Speech Administration

Speech Terminology

Table 53.

Predefined Phrase Tags — Letters

Inflection

Enhanced Basic
Speech

Rising

Medial

Falling

:a?

:a

:a.

:b?

:b

:b.

:c?

:c

:c.

:d?

:d

:d.

to

to

to

:w?

:w

:w.

:x?

:x

:x.

:y?

:y

:y.

:z?

:z

:z.

EBS phrase tags include all the predefined phrase tags, plus a number of
other tags that are commonly used in many applications. Using these tags
helps to maintain consistency among various applications. When selecting
phrase tags, be aware of language-specific traits such as sequence of words.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 635

9

Speech Administration

Speech Terminology

Use built-in speech formats to specify how the system is to speak
information. For example, if you want the system to speak a number using a
monetary format, you could use number phrases followed by the phrase
“dollars and,” then the number of cents and the phrase “cents.” See Chapter
2, User Interface, for additional information on field formats.
See Appendix A, Sample Application, for a complete listing of standard and
custom speech used in the River Bank application.
See Enhanced Basic Speech Library on page 670 for information on
languages available and Appendix A. "Enhanced Basic Speech Formats," in
Intuity CONVERSANT System Version 7.0 Speech Development, Processing
and Recognition, 585-313-201, for information on languages available.
Custom Speech

Custom speech includes phrases designed specifically for the application you
are developing. For example, “Thank you for calling River Bank.”
Whenever you use a speech format in defining the transaction, the system
automatically adds the necessary phrases for that format to the phrase list in
the primary speech pool. Then you can select and record them.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 636

9

Speech Administration

The Speech Administration Window

The Speech Administration Window
Use the Speech Administration window to perform the following activities to
speech in your Script Builder application:
•

Adding phrase tags

•

Identifying speech that must be recorded

•

Recording speech

•

Editing speech

•

Playing speech

•

Copying speech

•

Importing speech from other applications

•

Removing speech

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 637

9

Speech Administration

The Speech Administration Window

Accessing Speech Administration
To access the Speech Administration window:
1 Start at the Define Application screen (Figure 14 on page 40), and select

>Speech Administration

If spadm is not assigned to an in-service channel or a DNIS number, the
system displays a request to assign spadm script to a voice channel
(Figure 160 on page 638).
Figure 160.

Assign spadm script to a voice channel

2 To assign the spadm script through Script Builder, press F 2 (Choices) to
select a channel from a menu, then press F3 (Close). Or, you can use the

Configuration Management screens.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 638

9

Speech Administration

The Speech Administration Window

You must enter a Tip/Ring channel that is INSERV. See Chapter 3, “Voice
System Administration,” in Intuity CONVERSANT System Version 7.0
Administration, 585-313-501, for information on determining which
channels are INSERV.
Note:

If the channel number that you enter is on a E1/T1 circuit card, a
message is displayed instructing you to use the Configuration
Management screens under the Voice System Administration
menu to make the assignment. Do not assign service to a specific
E1/T1 channel. Assign it to a DNIS number instead.

No phone connection cannot be made unless spadm is assigned. If you
do not want to assign spadm, press F6 (Cancel) to exit this screen.
Note:

If you are only going to review the listed phrase tags, you do not
need to assign spadm to a channel.

The system displays the Speech Administration window (Figure 161 on
page 640).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 639

9

Speech Administration
Figure 161.

The Speech Administration Window
Speech Administration Window

Displaying Phrase Tags
The Speech Administration Window (Figure 161 on page 640) contains a list
of all phrases from the primary and secondary speech pools. If you are
entering the Speech Administration Window for the first time in this
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 640

9

Speech Administration

The Speech Administration Window

transaction, phrases are displayed according to the Show Phrase Options
menu default value, which is Custom phrases used by this transaction.
Unrecorded phrase tags that have been created in the Speech Administration
Window or referenced in the transaction are preceded by an asterisk (*).
Each screen item shows the owner application’s speech pool name (by the
side of the tag) if the owner is different from the application you are currently
developing.
A given application can develop a rather long list of phrase tags. You can
tailor the phrase list to display only the phrase tags relevant to the task at
hand. For example, when playing speech, you may want to display only those
phrases that have been recorded. Or when recording speech, you may want
to display only those phrases that need to be recorded. This feature
determines only the phrases that are displayed in the screen. The actual
phrase tags and recordings are not affected.
To display speech phrases:
1 From the Speech Administration Window, press F7 (Show).

The system displays the Show Phrase Options menu (Figure 162 on page
642).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 641

9

Speech Administration

The Speech Administration Window

Figure 162.

Show Phrase Options Menu

2 Select the display option desired.

Choose Standard phrases to list all standard phrases from the primary
speech pool. To limit the list to those phrases referred by the transaction
only, choose Custom phrases used by this transaction or Standard
phrases used by this transaction.
Note:

Phrase tags added while the Recorded phrases display option is
selected are displayed temporarily until speech has been
imported.
You may see some unexpected phrase tags, such as “dollars.” If
you have used a field format in the transaction that requires
phrase tags, the system automatically adds the tags to the list.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 642

9

Speech Administration

The Speech Administration Window

Adding Phrase Tags
To add phrase tags to your application:
1 Use the cursor movement keys to highlight the location where you want

the phrase tags added from the Speech Administration Window.
2 Press F1 (Add) to open the Add Operations menu (Figure 163 on page

643).
Figure 163.

Note:

Add Operations Menu

The display option selected in the Show Phrase Options menu
(Figure 162 on page 642) limits the use of the Add Operations
menu. To add a custom phrase tag, you must first show the
custom phrases (this is done by default). To add digits or letters,
you must first show the standard phrases. To change the display
option, press F 6 (Cancel) and then F7 (Show). If you select the
All Phrases option, your Add Operations are unrestricted.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 643

9

Speech Administration

The Speech Administration Window

3 Select Add a custom phrase tag (or a different choice).

The system displays the Add a Phrase Tag window (Figure 164 on page
644).
Figure 164.

Add Phrase Tag Window

4 Type the name of the phrase tag. When creating phrase tags, follow these

guidelines:
~ Tags must be from 1 to 50 characters in length.
~ Valid characters include any ASCII-printable character, except double

quotes (“).
~ Tags should be the first few words that constitute the actual recorded

speech, or words that remind you what the actual speech should be.
~ Tags must not begin with a colon (:). The system reserves the use of

this character to indicate a predefined phrase.
Note:

To add a group of predefined phrase tags, press F7 (Show) to
display the standard phrases and select the group desired. The
system adds them to the list.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 644

9

Speech Administration

The Speech Administration Window

5 Press F3 (Close) when the tag is typed as desired If two pools are used,

a screen is given, displaying the two pool names. You have the option to
specify the pool in which you want to store this phrase.
The system adds the tag to the list (with an asterisk *). The Add a Phrase
Tag window clears so you can enter additional phrase tags.
6 Press F6 (Cancel) when you have added as many phrase tags as

desired.

Recording, Editing, and Playing Speech
You can record, edit, and play speech through function keys available while
viewing the Speech Administration Window. These functions require
hardware and connections that are not required by other speech
administration operations. Also, the system must be operating for these
functions to be available.
! CAUTION:
You should not attempt to simultaneously record and play the same speech
phrase as this causes corrupted speech phrases. If your script is active and a
customer has access to a phrase that you are trying to record, you should
create a temporary speech phrase and then copy the temporary phrase over
the active phrase.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 645

9

Speech Administration

The Speech Administration Window

Use the spsav command to copy all speech after you make any changes.
This allows you to restore the speech disk(s) during a recovery process with
the spres command, rather than from a mkimage tape, which takes longer
and may not restore all speech.
Note:

Hardware
Requirements

The F4 (Record) and F6 (Edit) functions display a caution
message if the speech phrase tag is shared by another
application using the same speech pool. The first five other
applications are displayed.

The Script Builder voice editor operates on the speech and signal processor
(SSP) circuit card. Using the SSP allows the editor to work with network
interface circuit cards, such as the E1/T1 and Tip/Ring. The Script Builder
Voice Editor supports a speech coding rate of 32 kbps ADPCM. Whether
recording, playing, or editing speech, the network interface circuit cards must
be connected to the TDM bus. The spadm script must be assigned to a
channel that requires an SSP circuit card to record speech.
Note:

The audio jack cannot be used with the E1/T1 interface; you must
use the telephone interface. However, with the Tip/Ring and SSP
interface circuit cards, you can use the audio jack or the telephone
interface.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 646

9

Speech Administration

The Speech Administration Window
Connect audio equipment to Audio In, which uses channel 0 of the
circuit card. See the maintenance book for your platform for
information about how to remove the panel, and the location of the
Tip/Ring circuit card.

If you try to record/edit speech and there is a problem with the SSP circuit
card, you may see the following message:
All SP boards are currently busy, please try again.

Check the Message Log Report for the specific cause of the spadm script not
allowing recording.
Establishing a
Telephone
Connection

To establish a telephone connection, call the telephone number of the
channel to which you assigned spadm. A telephone connection is required to
record, edit, or play speech.
Through the telephone, you can:
•

Record speech used to test an application

Note:

Professionally recorded speech is recommended for your
completed application.

•

Edit speech

•

Play speech

The system disconnects the telephone automatically when you exit the
Speech Administration Window.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 647

9

Speech Administration

Recording Speech

The Speech Administration Window

To record speech:
1 In the Speech Administration Window (Figure 161 on page 640), highlight
the phrase you want to record, and then press F 4 (Record).

If the selected phrase has been recorded previously, you are reminded of
this and cautioned that you are about to erase the existing recording. You
are asked to confirm that you want to proceed.
! CAUTION:
If you use this procedure to re-record an existing phrase, even if the encoding
process fails, the existing phrase is erased.
The system displays the Speech Recording Parameters window (Figure
165 on page 649).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 648

9

Speech Administration

The Speech Administration Window

Figure 165.

Speech Recording Parameters Window

2 In the Audio source field, enter t for telephone or a for audio jack. The

default setting is telephone. However, audio source selection may be
dictated by the available hardware.
Note:

If you are recording a phrase using a telephone and audio jack is
selected, you will record silence.

3 In the Desired coding time field, enter the maximum length (in integer

seconds). Range value is 1 to 240 seconds (4 minutes). The default is 30
seconds. The actual recording can be shorter, but not longer.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 649

9

Speech Administration

The Speech Administration Window

4 The TT Detection field default value is yes, which provides touch-tone

termination when recording a phrase. Specify no in the TT Detection
field to disable touch-tone detection. If you are recording touch-tones or
the speaker appears to be triggering the touch-tone detector, turn off
touch-tone detection by specifying no.
Note:

A recorded phrase that includes touch-tone frequencies will
activate speech interrupt if it is enabled. Disable the interrupt
capability in the Announce or Prompt & Collect action steps that
causes this problem when you test the application.

5 Press CO N T_R EC .

The system displays the Speech Recording Window (Figure 166 on page
651).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 650

9

Speech Administration
Figure 166.

The Speech Administration Window
Speech Recording Window

This window includes the Elapsed coding time (0 seconds), and Coding
session status (which should be READY).
If there is a problem with the voice coder (not READY), you can reset it by
resetting the system. Press E XI T to return to the Voice System
Administration menu (Figure 11 on page 35). Restart Script Builder and
try again. See Chapter 2, User Interface, for information about accessing
Script Builder.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 651

9

Speech Administration
Note:

The Speech Administration Window
If this process is unsuccessful, you are given an appropriate
message. Stop and then start the system using the stop_vs and
start_vs commands from the UnixWare system command line.
Wait for the READY status message.

6 Follow the prompts on the screen to record your phrase. Select and

record any other phrases needed by your application.
The system removes the asterisk from the phrase tag in the list.
For each phrase, the system displays the Speech Editing Window (Figure
167 on page 657). You can add or remove silence at either end of your
recording by using the edit function. See Editing Speech on page 656.
Encoding Speech
Through the Audio
Jack

You can encode speech that has been professionally recorded. Use the
audio jack for the input connection, and monitor the speech through the
telephone.
Recording Speech To Be Encoded

When recording speech to be encoded, the speech must be of the highest
quality. Follow these guidelines to ensure high-quality speech:
•

Use a professional sound studio for recording application speech. This is
extremely important—even the air movement in a room can cause
background noise or hiss on the tape.

•

Use commercially available noise reduction when recording, if possible.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 652

9

Speech Administration

The Speech Administration Window

•

Obtain sample tapes from the studio of the speaker’s voice before you
commit to using that studio and/or speaker.

•

Listen to the sample tapes through the same play device that you will use
to encode the speech. Listen for background noise or hissing on the tape
through a set of professional headphones. Note that lower quality
equipment does not amplify the background noise on the tape; however,
once encoded onto the system, the background noise will be heard and
usually makes the speech unacceptable.

•

Use the sample tapes to encode some sample phrases. Call in to the
system and listen to the phrases over the telephone. This gives you an
indication of the quality you can expect.

Prerequisites for Encoding Speech
• The speech to be encoded must be recorded following the guidelines

explained in this book, and on equipment that meets the specifications
provided in the maintenance book for your platform (hardware expansion
chapter).
•

Make sure the tape player/recorder is connected directly to the audio
input jack on a Tip/Ring circuit card. If the player/recorder does not have
an adjustable amplified output source, you may need an amplifier to
control the input level to the Intuity CONVERSANT system.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 653

9

Speech Administration

The Speech Administration Window

•

Make sure you have a telephone number of a channel on the same
Tip/Ring circuit card to which the tape player/recorder is connected. It is
essential that the number reach a channel on the same Tip/Ring circuit
card in order for the system to calculate the channel to use for the audio
source.

•

In addition, the encoding station must have:
~ A telephone for monitoring the speech recorded
~ The appropriate number of audio jack cables to connect the

equipment. The cable connecting to the system should be shielded.
Encoding Recorded To encode recorded speech:
Speech
1 In the Speech Administration Window (Figure 161 on page 640), highlight
the phrase you want to record, then press F 4 (Record).

The system displays the Speech Recording Parameters window (Figure
165 on page 649).
2 In the Audio Source field, press F2 (Choices) to display a menu that

includes Audio Jack. Enter A, or select Audio Jack.
Note:

Do not hang up the telephone. You must maintain the telephone
connection in order to encode the phrases. You still must use the
telephone handset to listen to and edit all encoded phrases. You
may not encode new phrases by speaking into the mouthpiece.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 654

9

Speech Administration

The Speech Administration Window

3 In the Desired coding time field, enter the recording time limit, in

seconds.
4 In the TT Detection field, specify yes or no.
5 Press CO N T_R EC .

The system displays the Speech Recording Window (Figure 166 on page
651). This window includes the Elapsed coding time (0 seconds), and
Coding session status (which should be READY).
6 Find the beginning of the phrase you want to encode, then back up the

tape approximately one second.
7 To encode the phrase, press S TA RT _VC on the keyboard, then

immediately press the PLAY button on the tape player.
8 When the desired phrase has been encoded (you can hear the end of the
phrase through the telephone), simultaneously press STO P _VC on the

keyboard and the STOP button on the tape player.
The system removes the asterisk from the phrase tag in the list.
For each phrase, the system displays the Speech Editing Window (Figure
167 on page 657). You can add or remove silence at either end of your
recording by using the edit function. See Editing Speech on page 656.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 655

9

Speech Administration

Editing Speech

The Speech Administration Window

Use this function to trim off (remove) pieces of the recording, from one or both
ends, and playing the edited recording, until you are satisfied with the way at
sounds at each end. You can restore what you have trimmed in any given
editing session, if too much is trimmed. Each time you press F6 (Edit) the
system begins a new editing session. However, once you install a phrase as
edited, the trimmed portions cannot be recovered.
The Speech Editing Window shows:
•

The current editing resolution. This is the amount of time that will be
removed from the phrase the next time it is trimmed. The default
resolution is .02 seconds.

•

The current length of the phrase, in seconds, taking into account how
much has been trimmed during the current editing session.

•

The amount of speech that has been trimmed from the beginning of the
recording during the current editing session, in seconds.

•

The amount of speech that has been trimmed from the end of the
recording during the current editing session, in seconds.

To edit speech:
1 In the Speech Administration Window (Figure 161 on page 640), highlight
the phrase you want to edit, then press F 6 (Edit).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 656

9

Speech Administration

The Speech Administration Window

If the phrase tag may be referenced by another application sharing the
same speech pool, the system displays the first five applications referring
to the phrase tag in the caution message.
The system displays the Speech Editing Window (Figure 167 on page
657). You can only edit a phrase for which speech has been recorded.
Figure 167.

Speech Editing Window

2 Press F 5 (Play) at any time to hear the recording as currently trimmed. To

stop the play process, enter a touch tone from the telephone. While play
back is in process, the system does not accept any other requests.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 657

9

Speech Administration

The Speech Administration Window

3 Press T_B EG IN or T_EN D to trim (remove) silence or unwanted sounds

from the beginning or end, respectively. The amount trimmed is
determined by the current value of the editing resolution.
4 To change the editing resolution, press S ET_S TE P.

The system displays the Editing Resolutions menu (Figure 168 on page
658).
Figure 168.

Editing Resolutions Menu

5 Select the resolution desired.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 658

9

Speech Administration

The Speech Administration Window

6 If you decide you have trimmed too much, press R_B EG I N or R _EN D to

the beginning or end, respectively, to restore all the speech that has been
trimmed from that end during the current editing session.
7 Press F4 (Install) to complete the editing session, establishing a new
recording, as edited. Or, press F6 (Cancel) to abort the editing session,

leaving the recording as it was before the editing session began.
Playing Speech

Use this function to play a single phrase, or to hear how a series of phrases
sound played together. Up to nine phrases can be played with one request if
they are from the same speech pool.
Use F7 (Show) as necessary to make sure all phrases you want to play are
displayed. You cannot select a phrase that does not include any recorded
speech. You can use the F 7 (Show) command to display only the phrase
tags that have recorded speech.
To play speech:
1 In the Speech Administration Window (Figure 161 on page 640), highlight
the (first) phrase to be played, then press F 5 (Play). If this is the only
phrase is to be played, press F5 (Play) a second time. The phrase is

played through your telephone earpiece.
2 To play a series of phrases, use the cursor movement keys to highlight the
next phrase in the series, then press S ELE CT. Continue in this manner to

select up to nine phrases.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 659

9

Speech Administration

The Speech Administration Window

Each selected phrase remains highlighted. You may select the same
phrase more than once. Each time you select a phrase, it counts against
the nine-phrase limit.
3 When all the phrases in the series have been selected, press F5 (Play).

The phrases are played through your telephone earpiece, in the order
they were selected.
Regardless of the number of phrases selected, after the phrase (or
series) is played, you are offered the option to replay it.
4 Press R E PLAY to hear the phrase (or series) again. Repeat R E PLAY as

many times as desired.
5 Press F6 (Cancel) to return to the Speech Administration Window.

Copying Speech
Use this function to copying existing speech to create new phrases. It also
provides an extra version of the speech phrase for future reference. It is
important to remember that you are copying speech, not a phrase tag. Both
source and destination phrase tags must already exist.
To copy speech:
1 In the Speech Administration Window (Figure 161 on page 640), highlight
the phrase tag of the speech to be copied, then press F3 (Copy).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 660

9

Speech Administration

The Speech Administration Window

2 Use the cursor movement keys to highlight the phrase that will receive the

speech copy. The source tag remains highlighted as a reminder of the
speech that will be copied.
Note:

Use F 6 (Show) as necessary to make sure both tags are currently
displayed. See Displaying Phrase Tags on page 640.

3 Press F3 (Copy) a second time.

If the phrase destination is currently unrecorded, the speech will be
copied. If the phrase already includes recorded speech, you are warned
that the existing speech will be lost, and asked to confirm that you want to
proceed.
See Copying an Application on page 695 in Chapter 10, Application
Administration, for more information on copying Script Builder applications.

Importing Speech
Use this function to copy the speech phrases from the source specified into
the current application. Speech can be imported directly from another
application on the same machine. Only recorded speech is imported. Phrase
tags that have not been recorded are not imported from the source
application. Imported speech merges with speech and phrase tags already in
your application. Importing of speech applies only to Script Builder
applications.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 661

9

Speech Administration

The Speech Administration Window

In addition, speech can be imported indirectly from:
•

Any valid list file in the /speech/talk directory

•

Another application on a different machine

•

Enhanced Basic Speech purchased from Lucent Technologies

•

Custom speech purchased from Lucent Technologies

To import speech:
1 From the Speech Administration Window (Figure 161 on page 640), press
F8 (Chg-Keys) then F2 (Import).

The system displays the Importing Speech window (Figure 169 on page
662).
Figure 169.

Importing Speech Window

2 Enter or select the name of the application from which you want to import

the speech, including a .pl at the end of the name.
The system displays the Select Import Option menu (Figure 170 on page
663).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 662

9

Speech Administration

The Speech Administration Window

Figure 170.

Select Import Option Menu

3 Select Interactive to stop on every phrase that is to be overwritten and

choose not to overwrite.
4 Select Overwrite Phrases to overwrite all speech during the merging

process.
Note:

If speech is being shared, overwriting may affect other
applications. If you have named shared speech pools, all
Enhanced Basic Speech is merged into the primary speech pool
named. All custom speech is merged into the secondary speech
pool named. The importation process begins immediately. It may
take some time, approximately 10 minutes, if there is a significant
amount of speech involved.

5 Select No Overwrite of Phrases to import only those phrases that do not

already exist in the current application.
6 If any duplicate tags are found, you are asked to confirm that you want the

phrase and recorded speech from the source application to overwrite the
phrase tag (and recording, if any) currently in your application. Press

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 663

9

Speech Administration

The Speech Administration Window

CO N T to confirm or F6 (Cancel) to refuse the overwrite. The importation
process proceeds accordingly. Confirmation is requested for each and
every duplicate phrase tag.

Note:

With the exception of duplicate phrases, the system imports all
phrases from the source. If the source includes some phrases you
do not wish to include in your application, you must import them,
then remove the unwanted phrases.

Removing Speech
Use this function to remove both unrecorded and recorded phrases from the
system.
Unrecorded
Phrases

Recorded Phrases

If the phrase has not been recorded (indicated by an asterisk * to the left of
the tag), there are two possible remove results:
•

If the phrase has been referenced in the transaction, it remains in the
Speech Administration Window.

•

If the phrase has not been referenced in the transaction, it is removed
from the Speech Administration Window.

If the phrase has been recorded (that is, there is no asterisk * to the left of the
tag), the Remove Phrase Confirmation screen opens, warning you that the
phrase includes recorded speech that is removed along with the phrase tag.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 664

9

Speech Administration

The Speech Administration Window

This is especially important if speech is shared. The phrase tag may be
referenced by another application sharing the same speech pool.
There are two possible remove results:

Procedure

•

If the phrase has been referenced in the transaction, the recorded speech
is removed, but the phrase tag remains in the Speech Administration
Window, with an asterisk (*)to the left of the tag.

•

If the phrase has not been referenced in the transaction, both speech and
phrase tag are removed from the Speech Administration Window.

To remove speech:
1 In the Speech Administration Window (Figure 161 on page 640), highlight
the phrase you want to remove, then press F 2 (Remove).

Note:

If the speech tag is shared by another application using the same
speech pool, the system displays the first five applications
referring to the phrase tag.

2 Press CO N T to proceed with the removal, or press F6 (Cancel) to abort

the removal if you do not want to loose the speech.
See Removing an Application on page 681 in Chapter 10, Application
Administration, for more information on removing Script Builder applications.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 665

9

Speech Administration

Sharing Speech

Sharing Speech
The shared speech feature allows two or more applications to share common
speech phrases. There are some performance advantages to sharing speech
among applications:
•

Shared speech phrases need to be administered and recorded only once.

•

Shared speech phrases need to be stored only once, allowing disk space
to be conserved.

Script Builder allows speech to be grouped into one of two different speech
pools: primary and secondary. Although it is possible to use a single speech
pool and share speech in this speech pool with another application, shared
speech is usually separated from speech that is unique to an application. The
system searches only in the primary speech pool for standard phrases. For
custom phrases, the system searches first in the primary speech pool and
then, if the phrase is not found in this pool, in the secondary speech pool (if
one is used).
Normally, the primary speech pool includes all the standard phrases, plus
any other speech that is common and will be shared by two or more
applications. The secondary speech pool includes those custom phrases that
are designed to be unique to an application. Each application using the
primary speech pool would specify the name of this pool in the Primary
Speech Pool Name field of the Shared Speech Pools window (Figure 59 on
page 209). In addition, each application would specify a different (nonshared)
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 666

9

Speech Administration

Sharing Speech

pool in the Secondary Speech Pool Name field of the Shared Speech Pools
window. Usually, the secondary speech pool would have the same name of
the application that uses it.
In cases where you do not want to use both a primary and secondary speech
pool, you can store both standard and custom phrases in the same speech
pool. Custom speech phrases can be in either the secondary or primary
speech pool. See Defining Shared Speech on page 207 in Chapter 6,
Defining Parameters, for additional information on specifying speech pools.
When using both a primary and secondary speech pool, phrases with the
same tag should be recorded in both speech pools. If a phrase tag is in both
the primary and secondary speech pool, the phrase from the primary pool will
be used during the F3 (Verify) step. Consequently, if the phrase is
unrecorded in the primary speech pool, an error message is given during F3
(Verify). You are expected to record the phrase in the primary pool, or
remove the phrase tag from the primary pool if you want the phrase to be
used in the secondary pool.
Normally, the system prevents you from creating identical phrase tags. It also
gives you an error message informing you that the phrase tag already exists
in one of the two speech pools. If identical phrase tags have been created,
the system will use the phrase tag from the primary speech pool.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 667

9

Speech Administration

Restoring Speech

Restoring Speech
If you intend to use a standard package of phrases and speech, the
procedure below is the easiest way to load it.
! CAUTION:
Make sure this is done at the beginning of application development, prior to
recording and/or importing any other speech, because this procedure erases
any existing speech.
Any Script Builder-compatible tape or disks of speech may be used. You can
restore speech for the current application, speech for another application,
Enhanced Basic Speech, or custom speech.
Note:

You can use the spres command to restore speech you saved
using the spsav command. This process is faster than restoring
speech from a mkimage tape, which takes longer and may not
restore all speech.

! CAUTION:
Restoring speech could be time consuming, depending on the amount of
speech to be processed. You may want to restore speech during off hours.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 668

9

Speech Administration

Restoring Speech

To restore speech:
1 In the Script Builder Applications menu (Figure 12 on page 36), highlight

the application for which you are restoring speech.
2 Insert the appropriate tape or disk into the drive.
3 Press F6 (Restore).

The system displays the Restore Components menu Figure 171 on page
669.
Figure 171.

Restore Components Menu

4 Select Speech from the Restore Components menu.

The system displays:
Enter "F" to use FLOPPY DISK
Enter "C" to use CARTRIDGE TAPE
Enter "Q" to stop.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 669

9

Speech Administration

Enhanced Basic Speech Library

5 Enter F if you are restoring from floppy disk, C if you are restoring from

cartridge tape, or Q if you want to quit.
After the system restores the speech, it displays the following message:
Restore speech successful
6 Press EN TE R to return to the Restore Components menu.

See Restoring an Application on page 691 in Chapter 10, Application
Administration, for more information on restoring Script Builder applications.
See Chapter 2, “UNIX Administration,” in Intuity CONVERSANT System
Version 7.0 Administration, 585-313-501, for more information on system
restore operations.

Enhanced Basic Speech Library
Enhanced basic speech (EBS), previously called standard speech, allows the
system to play commonly used words to callers from professional recordings
made by Lucent Technologies. This set includes all letters and digits in
different speaking inflections, along with many other commonly used
phrases. Also included are all phrases that can be automatically generated
by the formats in a play message. You can add as many of these packages to
your system as you have space for on your system disk(s). One language is

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 670

9

Speech Administration

Professionally Recorded Speech

available for each script, but your system can support several different
scripts. The recorded voice is female. A male voice is available for US
English.
See Appendix A, “Enhanced Basic Speech Formats”, in Intuity
CONVERSANT System Version 7.0 Speech Development, Processing, and
Recognition, 585-313-201, for information about the EBS languages
available.
Contact the Speech Coordinator for the Intuity CONVERSANT system at
614-860-2260 for additional information on the speech recording service.

Professionally Recorded Speech
Lucent Technologies can provide you with professionally recorded speech
through its speech recording service. Contact the speech coordinator for the
Intuity CONVERSANT system at 614-860-2260 for additional information on
the speech recording service.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 671

10 Application Administration
Overview
This chapter describes how to administer a completed Script Builder
application. Topics covered include:
•

Verifying and Installing an Application on page 673

•

Removing an Application on page 681

•

Backing Up an Application on page 685

•

Restoring an Application on page 691

•

Copying an Application on page 695

•

Executing Multiple Applications on page 697

•

Error and Warning Messages on page 697

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 672

10

Application Administration

Verifying and Installing an Application

Verifying and Installing an Application
You should verify and install an application after the following situations:
•

The application is created.

•

The application is changed.

•

The definitions of database tables (remote or local) used by the
application are changed.

•

A transfer sequence in the telephone switch is changed.

•

An application or part of an application has been restored.

•

A shared application is changed.

Note:

In the case of shared applications, you must reinstall not only the
host application, but also all voice applications that use the host
application.

Two steps are involved with installing a Script Builder application: verification
and installation. The INSTALL process does not verify the application. You
should therefore verify and install a Script Builder application while you are in
the Script Builder program.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 673

10

Application Administration

Verifying and Installing an Application

Verifying an Application
Verification of the application is the first step of the installation procedure.
Script Builder invokes the transaction state machine (TSM) script code
generator and assembler and checks the speech component for recorded
phrases.
To verify your application:
1 Start from the Define Application menu (Figure 14 on page 40), and press
F3 (Verify).

The system displays the following message:
PASS 1: Invoking the TSM script code generator for
application name.

The first pass in verification initiates the TSM script code generator. If
errors are detected in the application, the code generator displays error
messages to locate the problem. The “step” numbers shown with the error
message refer to the action steps in the transaction definition outline. Go
through the transaction outline and correct any inconsistencies. Then
repeat this step.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 674

10

Application Administration

Verifying and Installing an Application

Next, the system checks speech to make sure all phrases are complete. If
a problem arises with incomplete speech, the system displays one of the
following messages:
PASS 2: WARNING! The speech component is incomplete for
application name. The following phrases, referred to by the
transaction, are UNRECORDED.
PASS 2: ERROR! The speech component is incomplete for
application name. The following phrases, directly referred
to by the transaction, are UNRECORDED. All custom phrases
must be recorded.

The Speech Administration window (Figure 161 on page 640) shows
unrecorded phrases. All phrases except standard phrases that will not be
used in this application must be recorded. However, if the system
attempts to use an unrecorded phrase in a call, the Announce will fail, and
an Error Tracker message will be generated. In addition, the installation
procedure will stop.
If speech is complete, the following message is displayed:
PASS 2: The speech component is complete for application
name.

If your application successfully completes these passes, the system
displays a Verification successful message.
2 Press F6 (Cancel) to proceed with the installation.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 675

10

Application Administration

Verifying and Installing an Application

Installing an Application
The system performs the process of installing an application in two phases.
Script Builder invokes the TSM script assembler (Pass 1), then the
executable files are moved to the appropriate directories (Pass 2).
To install your application:
1 Start from the Define Application menu (Figure 14 on page 40), and press
F4 (Install).

The TSM script assembler starts, and the system displays the following
message:
PASS 1: Invoking the TSM script assembler for application
name.

The TSM script assembler has finished without identifying
any errors in your transaction definition. A complete list of
output messages from the assembler can be found in the file
/att/trans/sb/{application name}/tas_output.
Viewing this file is optional. It may contain some warning messages about
what the assembler found while successfully installing your application.
Then the system displays the following message:
PASS 2: Moving the files to the appropriate directories.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 676

10

Application Administration

Verifying and Installing an Application

If any changes were made in the database component, the system
automatically begins to update database tables.
The system displays an Installation Completed message.
2 Press F6 (Cancel) to proceed.

If you have not assigned the application to a voice channel or host
session, a warning message reminds you to do this. The application still
can be installed even if a channel has not been assigned to it.
Note:

The application must pass each phase of the installation process
before it continues to the next step. If the transaction fails to pass,
you must make corrections and start the installation process
again, beginning with the verification step. See Error and Warning
Messages on page 697 for specific messages you may get while
installing the application.

See Chapter 3, “Voice System Administration”, in Intuity CONVERSANT
System Version 7.0 Administration, 585-313-501, for additional information
on how to assign voice channels and host sessions.
Host Applications

If the new application is assigned to host sessions and changes were made
in the host interface definition, the system must read in the new host script
and update the application. This updating can be accomplished during the
application installation process, or later, outside Script Builder with the
hnewscript command. Script Builder also gives you the option to invoke the

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 677

10

Application Administration

Verifying and Installing an Application

sb_trace command. This compiles a list of all host screens and stores them
in the /vs/trans/hostdata/chan# directory.
hnewscript

Script Builder displays the following message after successful installation of a
host script:
Install - Update the old host script version with the new
one?
Currently, the old version of your application is assigned to
host session(s). If you want the newly installed version to
be used, the old version should be updated. This will be done
now. Press  to confirm. Press  to cancel.

! CAUTION:
If you cancel at this time, you must execute the hnewscript command later to
install the new version of the host interface. See Appendix A, “Summary of
Commands,” in Intuity CONVERSANT System Version 7.0 Administration,
585-313-501, for information on the hnewscript command.
If you continue the process, Script Builder executes the hnewscript
command for you. The system displays the following message:
This procedure causes the system to logout from the host and
then login again with the new version of this application. If
desired, you can trace the logout and login (that is, capture
the sequence of screens exchanged between the system and the
host.) Press  to confirm. Press  to cancel.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 678

10

Application Administration

Verifying and Installing an Application

Host sessions assigned to the application are first logged out before being
logged back in with the new version. Logging back in occurs only after all the
sessions are logged out and are in the unassigned state. Sessions that are
currently handling a call (in transaction) are not logged out until the call
completes. Thus, logging back in with the new version could take a few
minutes. To avoid this delay, install the new version of the application during
off hours when no sessions are handling calls.
If the login and logout sequences are not functioning properly, you may want
to monitor the host interface to watch it log in. To correct any inconsistencies,
type hfree to release the session. Use the sb_te command to use in the
terminal emulator mode. Make the necessary changes to correct the login,
logout sequence. Then reinstall and reassign the application to the session.
sb_trace

Script Builder invokes the sb_trace command for you during the installation
process. It automatically captures login screens from the host interface.
However, once a channel is assigned to the application and a live call is
placed to the system, sb_trace also displays error messages from the DIP
and TSM. Figure 172 on page 679 shows an example of the messages that
may appear (where the channel number can range from 0 to 89):
Figure 172.

Example of sb_trace

Tracing started on channel 0
DIP0: CH 0 get screen form
DIP0: CH 0 save_bal =
TSM: CH 0 STEP: 0. VALUE: 10

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 679

10

Application Administration

Verifying and Installing an Application

TSM: CH 0 STEP: 1.
DB: Read Table
DB: index 0

In the message above, STEP refers to the corresponding action step in the
transaction definition outline. VALUE refers to whatever value is given with the
indicated action step.
The sb_trace command traces the voice channel and any LUs the script
uses, regardless of their LU number. For example, a script can be assigned
to voice channel 2, but use LU 7 for host communications. In certain cases, it
is possible to trace a specific LU. For example, when an LU is not in use with
a voice script and the LU executes a login, logout, or recovery sequence,
sb_trace prints trace output for the specified LU number.
Certain library functions may generate trace messages when they are passed
invalid data or they encounter other failures. These messages are
recognizable by the fact that the step number is out of the range of normal
action numbers that appear in the transaction definition.
Special trace messages all use step numbers equal to or greater than 25000.
These messages are provided only for diagnostic purposes, and do not
necessarily indicate a fatal error in the script. See Error and Warning
Messages on page 697.
If the buffer (storage area) where information is stored gets reused before the
information is completely shown, trace information may not get reported by
sb_trace. The information you see may not be complete.
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 680

10

Application Administration

Removing an Application

To make sure you get the information you want, add a Play Message action
step in the transaction to play a long silence. Insert it before the critical action
step you want to trace.

Removing an Application
To remove an application:
1 Highlight the application to be removed from the Script Builder

Applications menu (Figure 12 on page 36).
2 Press F8 (Chg-Keys), and then press F2 (Remove).

Note:

If the application to be removed is currently assigned to voice
channels or host sessions, the Remove operation is aborted. You
must unassign this application before proceeding with this
function. See Chapter 3, “Voice System Administration”, in Intuity
CONVERSANT System Version 7.0 Administration, 585-313-501,
for information on unassigning service to voice channels or host
sessions.

If the application to be removed is currently not assigned to voice
channels or host sessions, the system displays the Remove Components
menu (Figure 173 on page 682). You can remove a particular component
by selecting that item or remove all components by selecting All of the
Application.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 681

10

Application Administration
Figure 173.

Removing an Application

Remove Components Menu

3 Select

>All of the Application

Note:

Even if the application does not include every component (for
example, the application does not include local database tables or
its own speech), you can select All of the Application.

The system displays the following message:
Type y to remove or n to retain when prompted to remove the
installed portion of the application.
The system does not allow you to remove database files or
speech unless you have removed the installed portion of an
application.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 682

10

Application Administration

Removing an Application

4 Select

>Local Database Tables

If Local Database tables exist for this application, the Remove Local
Database Tables menu opens. The menu includes all local database
tables and a list of individual tables. These are the tables owned by the
application selected in the Script Builder Applications menu. Remember
that these tables can also be owned by other applications as well.
A confirmation message prompts you to type y to continue, or n to cancel
the remove process. If you enter y, the confirmation message includes a
list of the first five applications sharing the Local Database Table. If All
Local Database Tables was selected for removal, a confirmation
message appears for each table listed in the menu.
Note:

Remote ORACLE database tables can be removed only through
Script Builder on the remote machine or by using ORACLE
administrative tools on the remote machine (or, if the remote
machine is an Intuity CONVERSANT system, by using the
Remove Components menu on that machine). Consequently, if
you select All Local Database Tables in the Remove Components
menu, you remove only the data from the local database tables.
See the ORACLE 7 Server Administrator’s Guide for information
on removing remote ORACLE database tables.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 683

10

Application Administration

Removing an Application

When you have previously restored the Local Database Tables
but not the transaction portion of an application, you cannot
remove the restored database tables through the Remove
Components menu. The transaction portion of the application
defines the link between the previously restored database tables
and the application name and must be available in order for the
tables to be removed through the Remove Components menu.
When only the Local Database Tables portion of the application
has been restored, the database tables may be removed with
SQL*Plus. The restored database tables may also be removed by
defining a dummy application, making the tables accessible to the
dummy application, and then removing the restored tables
through the Remove Components menu.
5 Select

>Speech

If the application has its own speech, a message indicates the first five
applications that share the same speech. Type y to continue, or n to
cancel the process.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 684

10

Application Administration

Backing Up an Application

! CAUTION:
Do not remove speech that is shared by another application unless your
intent really is to remove the speech from the system. The remove process
removes the speech from the system, not just from the application.
6 Select

>Transaction

If a transaction exists, a confirmation message appears. Type y to
continue, or n to cancel the process.

Backing Up an Application
Use the backup utility to make an archive copy of your completed application
or to make an interim copy of an application in progress. The backup copy
can be restored to the Intuity CONVERSANT system if the online version is
damaged or if you make revisions and want to go back to the previous
version.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 685

10

Application Administration

Backing Up an Application

It is vital that you make backup copies of your application regularly during its
design and development. It only takes the loss of one application, or even the
loss of a day’s work, to appreciate the value of investing a little time toward
preventive maintenance.
! CAUTION:
Do not put any user-created files in the Script Builder directories. These
directories should contain only files created by the system. User-created files
will cause the recovery from a back up copy to fail.

Backup Media
The backup media can be either floppy disk or cartridge tape. If you use
floppy disks, you need three or more. Be sure to use only high-density floppy
disks. Using double-density disks will cause the backup procedure to fail.
If you use floppy disks, you must have the formatted floppy disks ready at the
time of backup. Typically, you will need three floppy disks to back up an
application, excluding speech (which typically takes 1–5 floppies). If you use
a cartridge tape, you can back up all components on one or more tapes.
You cannot back up two different applications to the same floppy disk or
cartridge tape. You can reuse floppy disks or tapes from a previous backup.
However, any existing application backed up to that media is erased during
the new backup procedure.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 686

10

Application Administration

Backing Up an Application

Backup Procedure
To backup an application:
1 Highlight the application to be backed up from the Script Builder

Applications menu (Figure 12 on page 36)
2 Press F8 (Chg-Keys), then press F5 (Backup).

The system displays the Backup Components menu (Figure 174 on page
687).
Figure 174.

Backup Components Menu

3 Select

>All of the Application

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 687

10

Application Administration

Backing Up an Application

This will allow you to back up all of the data of the local database tables,
all the speech in one or two speech pools used by the application, and all
the transaction files for the application selected.
Note:

You may choose to back up only a part of the application.

4 Select

>Local Database Tables

The system displays the Local Database Tables menu. This menu
contains the choices and a list of individual database table names. These
are the tables owned by the application highlighted in the Script Builder
Applications menu. Remember that a table can have multiple owners and
selecting All Database Tables backs up all the data in the local database
tables.
Note:

Remote ORACLE database tables must be backed up on the
remote machine using ORACLE backup procedures (or, if the
remote machine is an Intuity CONVERSANT system, by using the
Backup Components menu on that machine). Consequently, if you
select Local Database Tables in the Backup Components menu,
you will back up only the data in the Local Database Tables. See
the ORACLE7 Server Administrator’s Guide for information on
backing up database tables on the remote machine.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 688

10

Application Administration

Backing Up an Application

5 Select

>Speech

This allows you to backup only the speech for the home application
Note:

In the case of shared speech, the individual applications
containing the shared speech must be backed up separately.

! CAUTION:
Use the spsav command to copy all speech after you make any changes.
This allows you to restore the speech disk(s) during a recovery process with
the spres command rather than from a mkimage tape, which takes longer
and may not restore all speech.
6 Select

>Transaction

This allows you to back up all the files under the selected application,
except any database table data or speech.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 689

10

Application Administration

Backing Up an Application

The system calculates the number of floppy disks or tapes needed to
make the backup copy and displays the number for you.
7 You may cancel the backup operation if you do not have enough

formatted floppy disks available. If you do not have enough formatted
floppy disks, return to the Intuity CONVERSANT system menu and select
UnixWare System Administration. Formatting capabilities are provided
under the Storage Devices option. See “Formatting diskettes,” under
“Common System Procedures,” in Intuity CONVERSANT System
Reference, 585-313-205, for information about formatting disks.
If you choose to proceed, the system prompts you to insert and remove
floppy disks at the appropriate times. Be sure to label and number floppy
disks in the order that you use them to make future backup/restore
operations easier.
When the backup is complete, the system displays the Backup
Components menu (Figure 174 on page 687) to allow backup of another
selection (Local Database Tables, Speech, or Transaction).
8 Proceed with the next backup or press F6 (Cancel) to return to Script

Builder Applications screen.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 690

10

Application Administration

Restoring an Application

Restoring an Application
Use the restore utility to replace a damaged application or to restore an older
version of an application.
Note:

Be sure to have available all the floppies or cartridge tapes which
constitute the backup copy.

To restore an application:
1 Highlight the application to be restored from the Script Builder

Applications menu (Figure 12 on page 36).
2 Press F8 (Chg-Keys), then press F6 (Restore).

The system displays the Restore Components menu (Figure 175 on page
691).
Figure 175.

Restore Components Menu

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 691

10

Application Administration

Restoring an Application

The application highlighted is the destination application. The application
name on the floppy disk is the source application.
Note:

If you restore an application using a name other than that which
the application was backed up as, the original application name
still appears in the list of applications and in the speech pool
fields.

3 Select

>All of the Application

This allows you to restore all portions of the application. The system first
checks to find out if the backup media has the necessary files. If the files
exist on the floppy disk or cartridge tape, all the data is copied into a
temporary area on the hard disk. This area is cleaned up when the
restore operation ends successfully or aborts.
Note:

You may choose to restore only a part of the application.

4 Select

>Local Database Tables

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 692

10

Application Administration

Restoring an Application

The system checks to see if the new local database tables exist in the
system. If the local database tables do not exist, the new tables are
installed into the Data Base Management System (DBMS). If the tables
already exist in the system and are shared by another application, the
tables are listed with the application name. The first five applications are
listed. You then are prompted to either remove or keep each of these
tables. If you select to keep a table, the data being restored is appended
to the existing table.
Note:

If a table is appended, there may be duplicate records. To avoid
having duplicate records, you may want to delete the table before
you execute the restore procedure.
Database tables are treated as part of the Script Builder
application. Consequently, database tables may only be restored
and used when the Transaction portion of the application is
restored through the Restore Components screen.
You cannot restore remote ORACLE database tables through the
Restore Components screen because these database tables are
not backed up through the Backup Components screen.
Consequently, when you select to restore either All of the
Application or only Local Database Tables, the system restores
the data of only the Local Database Tables. For information on
backup and restores procedures or ORACLE database tables,
see the ORACLE RDBMS Database Administrator’s Guide.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 693

10

Application Administration

Restoring an Application

5 Select

>Speech

Only the home application’s speech is backed up; therefore, the restore
operation checks to see if there is speech already owned by the
destination application. If shared speech exists, you are prompted to
remove the shared speech or to allow it to remain. The first five
applications that share the speech are listed.
Note:

The Intuity CONVERSANT system must be running in order to
restore speech. If service was assigned previously, those
applications will answer calls that may be received while speech is
restored, but the speech will not be available. To prevent this,
either remove the service from the circuit cards or take the circuit
cards manually out of service before restoring speech.

6 Select

>Transaction

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 694

10

Application Administration

Copying an Application

You are prompted to restore the transaction component if it exists. If you
choose to restore the transaction, the system displays a warning that this
procedure will overwrite the files that already exist for the transaction and
prompt you to type y to continue or n to abort the restore.
7 You are given a chance to continue or cancel the restore operation as it

proceeds. If you continue and you are using floppy disks, you are
prompted for each floppy as needed.
When the component is restored, the Restore Component screen
reappears.
8 At this time, you may choose to restore another component. When all
restoration is complete, press F6 (Cancel) to return to the Script Builder

Applications screen.

Copying an Application
To copy information from one application to another:
1 Highlight the application to be copied from the Script Builder Applications

menu (Figure 12 on page 36).
2 Press F8 (Chg-Keys), then press F3 (Copy).

The system displays the Copy Application window (Figure 176 on page
696).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 695

10

Application Administration
Figure 176.

Copying an Application

Copy Application Window

3 Type a name for the new application. The new name must be unique.
4 Press F3 (Close) to complete the copy when you have finished typing the

destination application name. Information from the source application will
be directed into the destination application name.
! CAUTION:
Exercise caution when using the F 3 (Copy) function in conjunction with a
Remove of the original (copied) application. Only the transaction portion of
the application is copied. At this point, database or speech files will be shared
by the original application and the new (copy) application. If you remove the
original application, database and speech files will be removed along with the
original application, and will be unavailable for use by the new application.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 696

10

Application Administration

Executing Multiple Applications

Executing Multiple Applications
During the course of Script Builder application development, you will most
likely have several applications under development on the Intuity
CONVERSANT system. There are some rules that must be followed when
executing these multiple Script Builder applications.
You may have multiple applications running that specify a host and a
database. However, with databases, be sure to give each database a unique
name. If you do not, the database of the application installed last will
overwrite the database of the application installed earlier.
See Chapter 4, Defining the Host Interface, and Chapter 5, Creating
Database Tables, for additional information on hosts and databases.
The data interface process (DIP) uses one extract.c file. All external fields for
all applications must be placed in this file. For additional information on the
extract.c file, see Chapter 11, Using Advanced Features.

Error and Warning Messages
Script Builder displays error and warning messages to let you know where
problems exist in your application. Information provided in an error message
indicates a problem that must be corrected before the application can be

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 697

10

Application Administration

Error and Warning Messages

installed. Warning messages do not prevent the application from being
installed, however, these items are of concern and should be examined.

Formats
If the error is associated with a specific action, the following format is used:
Transaction Definition, Action Number ####:
error: 

or
Host Maintenance Def. Action Number ####:
error: 

If the syntax is not recognizable, the following message format is used:
error: Syntax Error at character ‘c’ on line ### of Action
Number ####

If the error is not associated with a specific action the following format is
used:
error: 

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 698

10

Application Administration

Error and Warning Messages

Lists of Related Messages
The following is a listing of error and warning messages, produced by the
code generator, that may appear on the screen during the application
installation process. The [ ] brackets represent spaces where messagespecific information is inserted.
Most of the messages that appear are fairly self-explanatory and contain the
solution to the inconsistency in the message line. However, a few of the
messages need additional information. In this book, an asterisk (*) appears at
the end of the messages that require further explanation. The asterisk does
not appear in the actual message line. See the following statement for
additional information regarding these particular messages.
*An inconsistency has been found in the application. Try to
correct any information relating to the data contained in the
message text. Next, undo any recent changes made to the
transaction, then restore the application from backup, if
one is available. If problems persist, contact Lucent
Technologies support personnel.
Host Maintenance
Definition

•

####: error: Aid Key must be specified in Send Host Screen
Action

•

####: error: bad if_op [] (* bad if_operator statement)

•

####: error: Duplicate Label, [], in Host Maintenance
program

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 699

10

Application Administration

Error and Warning Messages

•

####: error: Field [], can only be $HOST_LOGINID or
$HOST_PASSWORD

•

####: error: Field [] is not a valid field for screen [], or
has invalid direction

•

####: error: Field [] may not be set to an expression

•

####: error: Label [], used in GOTO does not exist

•

####: error: LU [] requires a login or password in
Environment Definition

•

####: error: Missing symbol table entry for screen [] (*)

•

####: error: Statement type [] not implemented (*)

•

####: error: There must be at least one Transaction Base
screen

•

####: error: Too Many Labels, [], in Host Maintenance
program

•

####: warning: Missing symbol table entry for field [] in
screen []

•

###: warning: Too Many CALL DATA Fields are being saved; last
good one is []

•

####: warning: Transaction has not yet been defined.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 700

10

Application Administration

Transaction
Definition

Error and Warning Messages

•

####: error: [] is not defined in SYMBOL Table as a Field (*)

•

####: error: Aid Key must be specified in Send Host Screen
Action

•

####: error: Announce/Play Message Action must be defined

•

####: error: bad if_op [] (* bad if_operator statement)

•

####: error: Caller Input Field [] can’t be Num datatype

•

####: error: Caller Input Field [] is not big enough to hold
the Max. Number of Digits

•

####: error: Caller Input Field, [], must be at least []
characters in length for the specified recognition mode.

•

####: error: Character Field required for argument [], []

•

####: error: Checklist Case can’t start with “r”

•

####: error: Confirm action used outside the context of a
Call Input Action

•

####: error: Constant is not allowed for argument [], []

•

####: error: Constant must be numeric for argument [], []

•

####: error: Continue action used outside the context of a
Call Input Action (*)

•

####: error: Database [] not defined.

•

####: error: Evaluate Action must be defined

•

####: error: External Action must be defined

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 701

10

Application Administration

Error and Warning Messages

•

####: error: External Action, [], requires at least []
arguments

•

####: error: External Action, [] requires [] arguments

•

####: error: External Function, [], requires [] arguments

•

####: error: External Function Action must be defined

•

####: error: External Function, [], requires at least []
arguments

•

####: error: Field [] for screen [] must be To Host or Both

•

####: error: Field [] has invalid size, [], in SYMBOL Table
(*)

•

####: error: Field [] has type [], but format [] requires a
Char datatype

•

####: error: Field [] has type [], but format [] requires a
Date or Char datatype

•

####: error: Field [] has type [], but format [] requires a
Time or Char datatype

•

####: error: Field [] invalid for argument [], [] (you can’t
write to this field)

•

####: error: Field [] is not defined

•

####: error: Field [] is too small to hold value placed in it

•

####: error: Field used in Transfer not defined properly

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 702

10

Application Administration

Error and Warning Messages

•

####: error: Get Screen Action must be defined

•

####: error: ‘If’ part of Evaluate Action must have actions
under it

•

####: error: Intelligent Transfer Must be defined

•

####: error: (Internal Error)Bad Evaluate Relation

•

####: error: (Internal error)Field [] has unknown datatype
in SYMBOL Table

•

####: error: (Internal Error)Field [] has unknown/missing
datatype in SYMBOL Table (*)

•

####: error: (Internal Err)Screen [] not defined in symbol
table (*)

•

####: error: Invalid character [] in Checklist Case

•

####: error: Invalid Format, [], in Announce/Play Message
statement

•

####: error: Invalid Format, [], in Play statement

•

####: error: Invalid Touch-Tone digit for Confirm Action

•

####: error: Invalid transfer type

•

####: error: Label [] multiply defined

•

####: error: Label [], used in Goto does not exist

•

####: error: Missing External Function

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 703

10

Application Administration

Error and Warning Messages

•

####: error: Missing Yes/No Speech Recognition type, SYN,
required for Confirm Action

•

####: error: Modify Table Action must be defined

•

####: error: Number of digits in Case [] is greater than Max
specified

•

####: error: Number of digits in Case [] is less than Min
specified

•

####: error: Read Table Action must be defined

•

####: error: Reprompt action used outside the context of a
Call Input Action (*)

•

####: error: ‘Reprompt’ & ‘Try Again’ Actions not allowed
for ‘No More Tries’

•

####: error: Required Label, HOLIDAY, is missing

•

####: error: Required Label, [], is missing

•

####: error: Retry action used outside the context of a Call
Input Action (*)

•

####: error: Return Field for External Function must be type
NUM

•

####: error: Screen [] not defined

•

####: error: Statement type [] not implemented (*)

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 704

10

Application Administration

Error and Warning Messages

•

####: error: TOHOST fields, such as [], can only be used in a
“Set Field” of a “SEND HOST SCREEN” Action; They can’t be
used as normal fields

•

####: error: TT Code is required for this Confirm action

•

####: warning: actions can never be reached.

•

####: warning: Invalid #line number

•

####: warning: Invalid Format [] replaced by []

•

####: warning: missing action for case, treated as Continue

•

####: warning: Missing Symbol Table entry for field [] in
screen []

•

####: warning: Send Screen should be immediately followed by
a Get Screen.

•

####: warning: this block of code is misplaced.

•

####: warning: Too Many CALL DATA Fields are being saved;
last good one is []

•

####: warning: Transaction has not yet been defined

•

####: warning: Unrecognized line, []..., in file []

•

####: warning: White space too large - it is ignored.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 705

10

Application Administration

Host Screen
Definition

•

####: error: field [] belongs to undefined screen

•

####: error: Invalid or incomplete specification for field
[]

•

####: error: screen name [], is defined in multiple
applications

•

####: error: Screen [] not defined

•

####: warning: Ambiguous host application name, [] assumed

•

####: warning: Unrecognized line, [], in file [] (*).

Database Definition •

Parameters
Standards
Definition

Error and Warning Messages

####: error: Invalid database table definition

•

####: error: Invalid or missing database table definition,
table [] must have at least one field.

•

####: error: Date [] in HOLIDAY List is invalid

•

####: error: Entry [] in GREETINGS List is invalid

•

####: error: Field [] in Calldata List is not defined

•

####: error: Field [] included in EVENT List is not defined
(*)

•

####: error: Missing Parameters file

•

####: error: Syntax Error in Parameters Definition.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 706

10

Application Administration

External Functions

Trace Diagnostics

Error and Warning Messages

•

####: error: Constant must be numeric for argument [n],
[argument name]

•

####: error: External Function, [function_name], requires at
least [n] arguments

•

####: error: Invalid or incomplete specification for field
[]

•

####: error: screen name [] is defined in multiple
applications.

•

25050
host

TSM time out waiting for response from 3270

•

25010
number

Attempt to use a field with non-digits as a

•

25011
Attempt to speak a date that is not in the
correct internal format

•

25020
Attempt to speak a time that is not in the
correct internal format

•

25000

Transfer action — no errors detected

•

25001
flash */

Transfer action — failure in attempt to perform

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 707

10

Application Administration

Error and Warning Messages

•

25002
Transfer action — failure in attempt to perform
dial after flash */

•

25040
Invalid characters in “Prompt and Collect”
Checklist Case (routine _ttcmp).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 708

11 Using Advanced Features
Overview
This chapter presents Intuity CONVERSANT system features that are
available outside the Script Builder user screen interface, and describes
issues that may arise in complex applications involving external functions,
intricate host interface situations, an ORACLE database, or multilingual
service. Topics covered include:
•

Using External Functions on page 710

•

Writing External Functions on page 736

•

Interfacing with Hosts on page 746

•

Using ORACLE Tools on page 759

•

Mapping Datatypes on page 760

•

ASCII Character Set Mapping on page 761

•

Creating Multilingual Applications on page 762

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 709

11

Using Advanced Features

Using External Functions

Using External Functions
An external function is a mechanism that allows a script to perform functions
or actions that are not directly provided in the high-level action steps of Script
Builder, but which can be written in transaction assembler script (TAS)
language.
You can use any of the predefined external functions provided with the
system. You can also write your own external functions using the TAS
language.
An external function is called from a Script Builder Define Transaction screen
(Figure 60 on page 215).

Defining External Functions
1 Add an External Function action step and then define it.

The system displays the Define External Function screen (Figure 177 on
page 711).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 710

11

Using Advanced Features
Figure 177.

Using External Functions
Define External Function Screen

2 Position the cursor on the function name, then press F 2 (Choices) for a

listing of available external functions (Figure 178 on page 712).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 711

11

Using Advanced Features
Figure 178.

Using External Functions
External Functions Menu

3 Use the cursor movement keys to select one of these external functions

and enter it in the screen.
Table 54 on page 713 briefly describes the external functions and
indicates where to find more information about them.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 712

11

Using Advanced Features

Table 54.

Using External Functions

External Functions

External
Function

Description

Reference

Complete

Connects a caller to a third party after an
answer is detected or ringing occurs in a
transfer.

Complete on page 725

concat

Concatenates two character fields by
making a a single field that contains the
characters in the first field, followed by
the characters in the second field.

concat on page 723

datetime_u

Converts the date and time to the
UnixWare date and time.

datetime_u on page 729

getarg

Extracts arguments sent by the Execute
action.

getarg on page 717

getucid

Creates the universal call ID (UCID) for a
telephone call.

get_ucid on page 732

getuui

Extracts user-to-user information (UUI)
from an incoming call and populates
script fields with the results.

get_uui on page 733

1 of 3

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 713

11

Using Advanced Features

Table 54.

Using External Functions

External Functions

External
Function

Description

Reference

ixfer

Allows a script to place a call, maintain a
connection during interaction of parties,
then continue with the script when the
called person hangs up.

ixfer on page 726

length

Computes the length of a character field.

length on page 723

pack_phrNX

Converts a talkfile number and phrase
number into a combined NX formatted
number.

pack_phrNX on page 730

parse

Splits a field into two smaller fields.

parse on page 725

Reconnect

Reconnects a caller after a no answer, a
busy, a fast busy, or an error is
encountered in a transfer.

Reconnect on page 726

set_uui

Sets the UUI element for transmission
on outbound ISDN-PRI calls.

set_uui on page 733

substring

Extracts a substring.

substring on page 724
2 of 3

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 714

11

Using Advanced Features

Table 54.

Using External Functions

External Functions

External
Function

Description

Reference

text2fax

Converts text files to fax files for faxing
with the FAX_Queue action.

text2fax on page 734

transfera

Implements a flash transfer to a line
within a Public Branch Exchange (PBX).

transfera on page 727

transferb

Note:

transferb on page 727

transfera and transferb
have different restrictions.

u_datetime

Converts the internal UnixWare system
date and time to external date and time.

u_datetime on page 728

unpack_phrNX

Separates a previously combined NXformatted number into a talkfile number.

unpack_phrNX on page 730
3 of 3

As many as five fields can be specified to pass values from the Transaction to
the function, plus an optional sixth field to receive a value from the function.
You should specify only num field types for fields that process numbers, that
is, specify num fields or numerical constants for those fields that are of type
num. You must define and call the external function in exactly the manner
specified by its design. Fields and constants can be used as arguments to
external functions. Use double quotes when specifying a character constant.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 715

11

Using Advanced Features

Using External Functions

The first field, Function Name, is for the name of the function to which control
is to be transferred.
The next five blanks, Argument 1 through Argument 5, allow you to specify
each argument with a field or constant value to be passed to the function for
processing.
The last field, Return Code Is In Field, allows you to specify an optional
return code field that receives a value back from the function.

Help For External Functions
Script Builder provides a way for you to obtain additional information
regarding any available external function. To do this while in the Define
External Function screen, enter the name of an external function. Once
complete, press F 1 (Help). A two-item menu displays for help on the
specified external function. Select Function Specific for detailed information
on the chosen external function. Choose General Help for an overview on
external functions.
As many as five arguments may be passed from the Transaction to the
function, and one numeric value may be returned.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 716

11

Using Advanced Features

Using External Functions

Extracting Arguments from the Execute Action
The getarg external function allows you to bypass the use of getarg in writing
your own external function. However, it assumes a working knowledge of the
transaction assembler script (TAS) language.
getarg

The getarg external function can be invoked to extract arguments sent by the
Execute Action to another application. The getarg external function extracts
one argument per call by specifying the argument index (1–10) and then
copies the argument into the destination field and then null terminates the
string. The getarg external function copies only up to the maximum specified
number of characters. If the argument is longer than the specified number of
characters, only up to the specified number of characters are copied (for
example, if the argument is “hello” and the number of characters specified to
getarg is 2, only the “h” and “e” will be copied by the application).
•

Argument 1: (required) specifies the index (1–10) of the argument to be
extracted from the previous application. A valid entry for this field is a field
name from 1 to 24 characters that specifies the argument to be extracted.

•

Argument 2: (required) specifies the destination or the field in which the
argument will be stored.

•

Argument 3: (required) specifies the maximum number of characters to
copy into the destination field. The string copied will be truncated if
necessary to fit within the specified maximum number of bytes.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 717

11

Using Advanced Features
•

Using External Functions

Return Code Is In Field: (optional) field name entry limited to a
maximum of 24 characters. If the getarg external function is successful,
getarg will return the length (in characters) copied into the destination
field. If the getarg external function is unsuccessful, one of the following
values will be returned back to the application:
~ -2: Argument to extract exceeds the actual number of arguments

passed
~ -3: Application has not been executed, if at all, through the Execute

Action
~ -4: Invalid argument passed into getarg (for example, the number of

characters specified is zero or negative or the index to the argument is
negative, zero, or greater than 10).
Figure 179 on page 719 shows the Define External Function with field
information displayed for the getarg function.
getarg Code Fragment

After you have defined getarg, you may press the Show function key to
expand the External Function getarg as shown in Figure 179 on page 719.
Note that the following code fragment is an example based on the field
information in Figure 177 on page 711. The code shown below consists of a
loop that starts with argument 1 and iteratively extracts the arguments up to
argument 10. Not shown in the code is the part where each argument is
processed in turn before going to the next argument.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 718

11

Using Advanced Features
Figure 179.

Using External Functions
getarg Code Fragment

start:
1. Set Field Value
Field: cur_arg_idx = 1
Field: nobytes = 50
Get_Next_Arg:
2. Evaluate
If cur_arg_idx > 10
Goto done
3. End Evaluate
4. External Function
Function Name: getarg
Use Arguments: cur_arg_idx arg nobytes
Return Field: nobytes_copied
5. Evaluate
If nobytes_copied < 0
6. Goto done
End Evaluate
7. Set Field Value
Field: cur_arg_idx = cur_arg_idx + 1
8. Goto Get_Next_Arg
done:

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 719

11

Using Advanced Features

Execute Action
Arguments

Using External Functions

If getarg does not suit your needs, you might want to create your own
external function to extract arguments. The following describes the layout of
the arguments passed through the Execute action so you can extract them
with your own external action.
The Execute action partitions a 552-byte storage area into three chapters.
The first chapter includes an integer the value of which is the number of
arguments passed (0-10). The next chapter consists of the offsets, or the
distance in bytes from the start of the 552-byte storage area to the first bytes
of the string arguments. The third chapter consists of the actual string
arguments as pointed to in the offset chapter.
Figure 180 on page 721, Figure 181 on page 721, and Figure 182 on page
722 provide examples of how arguments are arranged. Note in these figures
that the size of the offset chapter varies depending on the number of
arguments. Note also that the entire 552-character block is allocated even
though only a subset of it is used.
Figure 180 on page 721 shows that specifying zero (0) arguments results in 0
arguments and 0 offsets. Figure 181 on page 721 shows that specifying one
(1) argument results in 1 argument and 1 offset. Figure 182 on page 722
shows that specifying 3 arguments results in 3 arguments and 3 offsets.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 720

11

Using Advanced Features
Figure 180.

Using External Functions
Execute (0 Arguments)

0

Allocated but unused

Zero
Arguments
Figure 181.

Execute (1 Argument)

1

Offset
#1

String
#1

Allocated but unused

One
Argument

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 721

11

Using Advanced Features
Figure 182.

Using External Functions
Execute (3 Arguments)

Add Screen(s)
ID NUMBER:

Snapshot 10

10 of 14

LAST NAME:

Char Field Manipulation Functions
Earlier versions of Script Builder designated these predefined functions with a
dollar sign ($). Note that these functions with the dollar sign names are still
available, so previously written applications may still function properly.
However, the names currently shown are the preferred references.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 722

11

Using Advanced Features

length

concat

Using External Functions

The length external function counts the number of characters in a field.
•

Argument 1: field containing a character string

•

Return Code Is in Field: numeric field containing a value equal to
the number of characters in the string.

The concat external function concatenates two character fields, that is, make
a single field containing the characters in the first field, followed by the
characters in the second field.
•

Argument 1: (destination) name of the char field that will contain the
value of the new character string.

•

Argument 2: (source1) name of first char field to be concatenated.

•

Argument 3: (source2) name of second char field to be concatenated.

Note:

Remember to use double quotes if you are specifying a character
string as a char constant in argument 2 or argument 3.

•

Argument 4: maximum size of argument 1. If the value is 0, then no
check for maximum length is done. Otherwise, if the result has more
characters than the maximum allowed, the extra characters are not
included in the field.

•

Return Code Is In Field: numeric field containing a value equal to the
number of characters in the resulting new character string (argument 1).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 723

11

Using Advanced Features

Using External Functions

The size of argument 1 should be big enough to hold the maximum number of
characters specified by argument 4. The function permits argument 4 to be as
large as 255.
You can specify the same field for argument 2 and argument 1, but you must
specify a different field for argument 3.
substring

The substring external function extracts a substring. Returns the substring,
result (Argument 1), from the argument source (Argument 2), beginning with
the character number contained in the start (Argument 3 – counting from left
to right, or from right to left if Argument 3 is a negative number) of the
maximum size specified (Argument 4).
If the source is shorter than the start position, an empty (null) string results.
For example, starting at position 6 on a string that contains only 4 characters.
•
•

Argument 1: (result) name of the field that will get the substring.
Argument 2: (source) name of the string where the substring is

extracted.
•

Argument 3: (start) position of the first character to be copied from

argument 2.
•

Argument 4: (maximum) maximum allowable size of the result string
(specify zero if no check is desired).

•

Return Code Is In Field: length of the result string.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 724

11

Using Advanced Features

parse

Using External Functions

(previously $strtok)
The parse external function splits a char field into two smaller fields.
•

Argument 1: (destination) name of the char field whose value will be the
first portion of the split string.

•

Argument 2: (source) name of the original char field, and the field that
will hold the second portion of the split string.

•

Argument 3: (separator) a char field or string containing the character(s)
that match the location in argument 2 where the string is to be split.

All the characters in argument 2, up to the first character that matches any
character in argument 3, will be moved to argument 1. The separator
character(s) of argument 2 that match the characters in argument 3 will be
dropped, and any remaining characters will become the value of argument 2.
Example: If argument 2 contains “Wilmington, Ohio.”, and argument 3 is “,”,
then argument 1 is set to “Wilmington” and argument 2 is set to “Ohio.”

Intelligent Transfer Call Functions
These functions can be used with an intelligent Transfer Call action.
Complete

The Complete external function is used to connect the caller to an attendant
when a Transfer Call action results in an Answer.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 725

11

Using Advanced Features

Using External Functions

No arguments are required.
The field $TRANSFER_RESULT is used in an Evaluate action prior to the
Transfer Call action.
Reconnect

The Reconnect external function is used only when a Transfer Call action
results in a Busy, No Answer, or Error.
No arguments are required.
The field $TRANSFER_RESULT is used in an Evaluate action prior to the
Transfer Call action.

ixfer

The ixfer external function allows a script to place an outbound call to a userdefined telephone number, maintain the connection while the caller interacts
with the person on the other channel, then, when the called person hangs up,
continue with the next action step. This feature is used most often to connect
a caller with an attendant. It is not recommended that you use this feature to
connect to another script since touch-tones are not passed reliably.
Note:

•

The TDM cable must be connected for an internal call transfer to
complete properly. The cable is connected when your system
arrives. If it has been disconnected, make sure it is reconnected
before you attempt an internal call transfer.

Argument 1: (required) telephone number to which you want the script to
transfer the call. A telephone number can have up to 15 digits.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 726

11

Using Advanced Features

Using External Functions

Note that num is the only valid entry for Field Type. You must therefore enter
num in this field or press F2 (Choices) and select num from a menu.

Transfer Call Functions
These call transfer functions should only be used if the built-in transfer action
is not working with your telephone interface.
transfera

The transfera external function initiates a normal Transfer Call with second
flash.
•

Argument 1: char field containing the digit string to be dialed.

This sets up a three-way call. The system stays on the line until a Disconnect
or Quit action step is executed.
transferb

The transferb external function initiates an intelligent Transfer Call.
•

Argument 1: char field containing the digit string to be dialed.

Busy, Reorder, or hardware failure all cause a second flash to reconnect the
caller to the system. This is necessary because some PBXs do not drop the
call if the called party hangs up after the failed transfer. Instead, it starts
ringing again, treating the original caller as a new call.
On successful transfer, the routine hangs up immediately; however, the
Transaction continues to execute until a Quit action step is encountered.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 727

11

Using Advanced Features

Using External Functions

The system field TRANSFER_STATUS of type char will be set to contain the
transfer result status as follows:
•

“T” – timeout (success, assumption is that answer occurred before
ringing)

•

“R” – ring (success)

•

“F” – re-order (failure)

•

“B” – busy (failure)

•

Other – (hardware failure)

Time and Date Functions
This section includes information about predefined time and date functions.
u_datetime

The u_datetime external function converts internal UnixWare system clock
date and time to date and time fields.
•

Argument 1: date; field where date is returned in standard Script Builder
format YYMD (4-digit year, 2-digit month, 2-digit day).

See Supported Dates on page 729 for more information.
•

Argument 2: time; field where time is returned in standard format HMS
(2-digit hour, 2-digit minute, 2-digit second).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 728

11

Using Advanced Features

datetime_u

Using External Functions

•

Argument 3: clock; input UnixWare system time, in seconds, since Jan.
1, 1970 00:00:00 CUT (Coordinated Universal Time). The $UNIX_TIME
system field can be used for the current clock time.

•

Return Code Is In Field: numeric field containing Julian day (1–366)

The datetime_u external function converts Script Builder date and time
fields to UnixWare system time.
•

Argument 1: date in normal Script Builder internal format YYMD (4-digit
year, 2-digit month, 2-digit day).

See Supported Dates on page 729 for more information.

Supported Dates

•

Argument 2: time in regular Script Builder format HMS (2-digit hour, 2digit minute, 2-digit second).

•

Return Code Is In Field: numeric field containing system clock
format, number of seconds since Jan. 1, 1970 00:00:00 CUT
(Coordinated Universal Time). If date or time is out of range, return code
is -1.

For the datetime_u and the u_datetime external functions, argument1:
accepts a year up to 2038. The dates supported by the UNIX operating
system are:
•

Earliest date supported by UNIX — January 1, 00:00:00 1970 (GMT)

•

Last date supported by UINIX — January 19 03:14:07 2038 (GMT)

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 729

11

Using Advanced Features

Using External Functions

This means that you can set the operating system data to any day in the
given range and expect to see accurate results regarding day and time.
Talkfile and Phrase
Manipulation
Functions

This section includes talkfile and phrase manipulation functions.

pack_phrNX

The pack_phrNX external function converts a talkfile number and phrase
number into a combined NX formatted number. This function requires a
talkfile number and a phrase number and returns a combined talkfile and
phrase number in the NX format (see unpack_phrNX on page 730).

unpack_phrNX

•

Argument 1: (required) talkfile number between 1 and 255 or a field
name from 1 to 24 characters that holds the talkfile number.

•

Argument 2: (required) phrase number between 1 and 65535 or a field
name from 1 to 24 characters that holds the phrase number.

•

Return Code Is In Field: field name from 1 to 24 characters that
holds the output of pack_phrNX, that is, the combined talkfile and phrase
number in the NX format. If an invalid talkfile number is detected, the
return code is -1. If an invalid phrase number is detected, the return code
is -2.

The unpack_phrNX external function requires an NX formatted number as
the input argument and returns the talkfile number and the phrase number.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 730

11

Using Advanced Features

Using External Functions

This function separates a previously combined NX-formatted number into a
talkfile number and a phrase number (see pack_phrNX on page 730).
! CAUTION:
Specify only num field types for those fields of the unpack_phrNX external
function that return numbers, that is, specify num fields or constants for those
fields that are of type num.

Talkfile and Phrase
Manipulation: Tips

•

Argument 1: (required) combined talkfile and phrase number in the NX
format or field name. Valid entries for this field are an NX-formatted
number between 65537 and 16777215 or a field name from 1 to 24
characters that holds the NX-formatted number.

•

Argument 2: (required) contains the return code of the phrase number. A
valid entry for this field is a field name from 1 to 24 characters that
specifies the phrase number.

•

Return Code Is In Field: field name from 1 to 24 characters that
holds the output of unpack_phrNX, that is, the talkfile number that has
been separated. If an invalid combined talkfile and phrase number is
detected, the return code is -1.

In general, once a speech phrase has been digitized and encoded, it is stored
internally in a talkfile. See Chapter 1, “Overview of Speech,” in Intuity
CONVERSANT System Version 7.0 Speech Development, Processing, and
Recognition, 585-313-201, for further information on storing phrases in

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 731

11

Using Advanced Features

Using External Functions

talkfiles. Each talkfile contains a collection of phrases, with the individual
phrases within that talkfile represented by a unique phrase number. The
talkfile number and a phrase number are normally packed into a single long
integer. The combined talkfile/phrase number is returned to the Script Builder
application by the Message Coding action and can be used to play the
phrase with the NX format. See Chapter 7, Defining the Transaction, for more
information on the Message Coding action.
A talkfile is normally assigned to an application by Script Builder and
corresponds to either a primary or a secondary speech pool. If the talkfile
number is 0, the talkfile that is used is the “current” one. The current talkfile is
the talkfile associated with the primary speech pool unless you have used a
setalk instruction to change this talkfile. See Intuity CONVERSANT System
Version 7.0 Application Development with Advanced Methods, 585-313-203,
for information about the setalk instruction.
See Chapter 2, User Interface, for more information on the NX format.

UCID Functions
This section includes information about UCID functions.
get_ucid

The get_ucid external function returns the UCID for a telephone call to the
script.
•

Argument 1: ucid, character field of 20.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 732

11

Using Advanced Features
•

Using External Functions

Return Code Is In Field: numeric field where 0 indicates success and

-1 indicates failure.
get_uui

set_uui

The get_uui external function extracts the UUI element from an incoming call
and populates the Script Builder fields with the result.
•

Argument 1: format; numeric field where 0 means extract UUI in network
format, and 1 means extract UUI and UCID in DEFINITY shared format.

•

Argument 2: uui; character field up to 132 bytes long (length depends on
application usage).

•

Argument 3: ucid; character field of 20.

•

Return Code Is In Field: numeric field where 0 means successful
extraction of parameters and <0 indicates failure.

The set_uui external function allows a Script Builder application to set UUI
for an outbound call. The outbound call may be on the channel running the
script or on another channel performing call bridging.
•

Argument 1: format; numeric field where 0 means write UUI in service
provider, ignoring the UCID, and 1 means write UUI and UCID in
DEFINITY shared format.

•

Argument 2: uui; character field up to 132 bytes long (length depends on
application usage).

•

Argument 3: ucid; character field of 20.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 733

11

Using Advanced Features
•

Using External Functions

Return Code Is In Field: numeric field where 0 means successful
extraction of parameters and <0 indicates failure.

Fax Functions
text2fax

This function converts text files to fax files in TIFF format that can be queued
for faxing using the FAX_Queue external action (see FAX_Queue on page
451 ).
This function can convert text files that contain 66 lines per page and either of
the following widths:
•

80 characters per line

•

120 characters per line

Argument 1: (input file) fully qualified pathname of the text file to be

converted
Argument 2: (output file) fully qualified pathname of the fax file
Argument 3: (format) "80char" or "120char"
Return Code Is In Field: character field that contains a value of 0 to
indicate a successful conversion, or a value of 1 to indicate conversion
failure. Possible reasons for failure include:
•

Input file does not exist or is unreadable.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 734

11

Using Advanced Features
•

Using External Functions

Output file directory does not exist or is not writable.

If the text width option is invalid or not provided, the system performs the
conversion using the standard text conversion parameters and returns a
value of 0.
Example

The following example shows use of the text2fax external function to convert
the file /textfile to a TIFF file suitable for faxing. The converted output, called
/faxfile, is formatted with 80 characters per line.
1. Answer Phone
2. Announce
Speak With Interrupt
Text: "This is a test of text2fax."
3. External Function
Function Name: text2fax
Use Arguments: /textfile /faxfile "80char"
Return Field: ret
3. External Action: FAX_Queue
FAX_File_1: "faxfile"
Return Field: ret
End External Action
4. External Action: FAX_Send
FAX_Delivery_Number: "9,15555551212"
FAX_Delivery_Time: "immediate"
FAX_Retry_Interval: "20"
FAX_Retry_count: "2"
TSI_String: "Intuity CONVERSANT":

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 735

11

Using Advanced Features

Writing External Functions

Equip_Group: "3"
Equip_Group: "3"
Return Field: ret
End External Action
5. Quit

Writing External Functions
If you choose to write your own external functions in the transaction
assembler script (TAS) language, the following conventions allow them to be
automatically included in your Script Builder application when you call them
from an External Function action step. An example of an external function is
provided at the end of this section.
Note:

See the Intuity CONVERSANT System Version 7.0 Application
Development with Advanced Methods, 585-313-203, for details of
the TAS language.

Naming Conventions
Assuming the name used in the External Function Call is fname and the
application is called appname, the function should be placed in a file,
fname.t, in the application directory, /att/trans/sb/appname. External
functions placed in this directory are considered to be part of the application
and are backed up and restored as part of the application.
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 736

11

Using Advanced Features

Writing External Functions

Since the main script file is called appname.t, you cannot have an external
function with the same name. The fname.t file should have a label called
L_ _fname, which is where the function begins execution when called from
Script Builder. Labels used in external functions must not conflict with labels
used in other functions or in the application. To avoid conflicts, all labels
should start with the same L_ _fname label designated as the entry point.
External functions can also be placed in the Script Builder library. Once in this
library, these external functions are available to any application on the
system. The library is a directory, /vs/bin/ag/lib, of .t files, one per function.
Avoid changing other files in the directory, because many of them are used
directly by the system and altering them causes the system to fail. Also, avoid
overwriting any files or using names that are used by other functions. File
names that begin with an underscore (_) are either earlier versions or
routines that are used internally by the system.
External functions located in the library are not backed up with the
application. Therefore, they should be backed up separately, using the cpio
UnixWare operating system command.
External functions that you write use similar naming conventions as Script
Builder field names:
•

The external function name must be from 1 to 12 characters long.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 737

11

Using Advanced Features

Writing External Functions

•

Legal characters are letters (A–Z and a–z), numbers (0–9), and
underscore (_).

•

The first character must be a letter.

Macros
Several macros available within an external function enforce calling
conventions and provide useful error messages when these conventions are
violated. The following information describes these macros.
DEFARG(fldname,
datatype,direction)

The DEFARG macro defines the next argument to the function. One should
appear for each argument used by the function.
•

fldname is a symbolic name used to refer to the argument in
documentation and error messages. It follows normal Script Builder
conventions for a name, a maximum of 24 characters consisting of
alphanumeric or the underscore.

•

datatype is one of the four defined Script Builder datatypes: num, char,
date, or time. A special datatype, phrase, is allowed only in the DEFARG
macro. The num datatype is stored as a long integer, while the char, date,
and time datatypes are stored as strings. The phrase datatype is defined
only for passing arguments to an External Function action step and is
converted to a phrase number.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 738

11

Using Advanced Features
•

Writing External Functions

direction is the direction in which data is passed: in, out, or both. Specify
in if the data will be used, but not modified by the external function. In this
case, the application may pass numeric or string constants to the
function. Otherwise, Script Builder generates an error message if the
transaction definition attempts to use a constant for an argument. Specify
out if the field is used to return data to the calling application. Specify both
if the field is used and possibly modified by the function. In these cases,
the external function must know how big the field is and ensure it does not
overrun the field. This can be done by defining a numeric argument that
specifies maximum size, or by documenting any assumed restrictions on
the field that the caller is expected to meet.
Directions out and both are allowed for num, char, date, and time, but are
not allowed for phrase.

Script Builder provides automatic type conversion if the data passed by a
Script Builder application is different than that specified in the DEFARG
macro.
DEFARG_COUNT(n) This macro specifies the number of arguments used by the function. The

number can be from 0 through 5. This macro is optional.

Arguments
A maximum of five arguments are available to the external function, and are
passed to it as shown in Table 55 on page 740.
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 739

11

Using Advanced Features

Writing External Functions

For char, time, and date fields, the address of the field is passed as an
integer. For numeric arguments, the value is passed as an integer if the
direction is input, but the address of the field is passed if the direction is
output or both. Argument 1 is in register 3 (r.3), argument 2 in register 2 (r.2),
and argument 3 to 5 are in the fields, F_ _FUNCT_ARG3,
F_ _FUNCT_ARG4, and F_ _FUNCT_ARG5, respectively. For phrase
arguments, either a phrase tag or a phrase number may be passed to the
external function. In either case, the phrase datatype is treated as an integer
and can be played using the talk script instruction or other instructions that
allow an integer.
Table 55.

External Function Arguments

Direction

Datatype

Argument

Input only

num

Integer value

Input only

char

Address of string

Input only

date

Address of string

Input only

time

Address of string

Input only

phrase

Phrase, tag, or integer value

Output or both

num

Address of integer
1 of 2

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 740

11

Using Advanced Features
Table 55.

Writing External Functions

External Function Arguments

Direction

Datatype

Argument

Output or both

char

Address of string

Output or both

date

Address of string

Output or both

time

Address of string
2 of 2

Return Code
A function may return an integer of num value to the caller by placing it in r.0
before returning. This is copied to the num field specified on the External
Function screen of the Transaction Definition. If a field is not specified for the
Return Code, it will be lost.
If you need to copy information, other than the Return Code, into your
application, you must use variables known to the application. You must name
a variable inside of the external function according to the following naming
convention: F_variablename. For example:
•

load (int.F_variablename, im.4) copies the digit “4” into the
variablename.

•

strcpy (ch.F_variablename, “abc”) copies the string “abc” into the
variablename.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 741

11

Using Advanced Features

Writing External Functions

Allocating Space
A function can use the 256 bytes of memory at address F_ _TEMP as
temporary scratch space in any manner it chooses. However, the memory is
not saved between calls of the function. Symbols F_ _TEMP2, F_ _TEMP4,
F_ _TEMP6, F_ _TEMP8, F_ _TEMP12, and F_ _TEMP32 are defined to be
offsets into the initial part of the buffer.
A function may also allocate memory for its exclusive use by using the macro:
DEFSPACE(fldname, bytes)
This should appear on a line by itself in the file, and causes Script Builder to
create a symbol, “F_fldname” and provide the amount of space requested for
it. If the size is a multiple of 4, the space will start on a 4-byte boundary. The
space can be referenced within the subroutine as “F_fldname” and it can also
be accessed as a field in the Script Builder Transaction Definition, by calling it
fldname. However, the transaction must define fldname consistently with it.
Note:

Script Builder automatically allocates one byte more than the
number requested by the DEFSPACE macro. If the space is to be
used to store a string, the additional byte is used for a NULL
terminator. If the space is to be used to store an integer, you may
conserve space by requesting one less byte of storage. This will
also ensure that the address will always fall on an even address
boundary. If you do not request one less byte of storage than that
needed to store an integer and it does not begin with an even

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 742

11

Using Advanced Features

Writing External Functions

address boundary, you will receive an addressing warning
message. This warning can be ignored since the system
processor handles integers not starting on an even address
boundary.
Since all symbols are global in TAS, the name chosen for space allocation
should not conflict with other names used in the Transaction Definition.
Note:

The installed script (TAS based) does not recognize the
DEFSPACE macro. In situations where an external function
attempts to execute another external function which uses the
DEFSPACE macro, the process will fail. It is therefore
recommended that memory allocation for the external function to
be executed be part of the script that is verified and installed
before use.

Providing Function-Specific Help
The .t file should contain a description of the external function, its arguments,
return code, and usage in a block comment at the beginning of the file. Script
Builder picks up this description and provides it in a Function Specific help
screen when F1 (Help) is pressed during the definition of the call. The
description must exist in the first comment in the file, and must start with the
word “FUNCTION” in order to be recognized. It may have asterisks (*) and
spaces along the left margin.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 743

11

Using Advanced Features

Writing External Functions

Use Figure 183 on page 744 as a guideline for setting up the comment.
Figure 183.

Example of Comments for External Functions

/*
* FUNCTION: parse - break a field into smaller fields
* This function breaks a field into two smaller subfields; the
* source field is considered to consist of two subfields
separated
* by one or more separator characters. The first subfield
is then
* copied to destination; the separators are skipped up to the
first
* non-separator, and the remaining characters are move up to
the
* start of the source field. (That is, the source field is
changed
* by this function.)
* NOTE: a sequence of separator characters will be skipped over
* as a unit, rather than each occurrence denoting a null token.
* This is similar to the C library strtok function.)
*
* INPUT:
* destination: field where first subfield is placed.
* source: original field to be broken up.
* separators: field containing separator characters.
* RETURN CODE: number of characters copied in destination
field.
* EXAMPLE:

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 744

11

Using Advanced Features

Writing External Functions

* If source contains "Wilmington, Ohio" and separators
* are ", .", then "Wilmington" will be placed in the
destination,
* "Ohio" will be left in source, and the return code will
contain
* the number 10.
*/
DEFARG_COUNT(3)
DEFARG(destination,char,out)
DEFARG(source,char,both)
DEFARG(separators,char,in)
L_ _parse:
load(r.0, r.2)
L_ _parse1:
load(r.1, int.F_ _FUNCT_ARG3)
L_ _parse2:
jmp (*ch.0 == *ch.1, L_ _parse4) /* match */
incr(r.1, im.1)
jmp (*ch.1 != im.0, L_ _parse2)
incr(r.0, im.1)
jmp (*ch.0 != im.0, L_ _parse1)
/* end of src string, return it as dst1, null as dst2. */
strcpy(*ch.3, *ch.2)
L_ _parse3:
load(*ch.2, im.0)
strlen(*ch.3)
rts ()
L_ _parse4: /* copy substrings to out area. */
load(*ch.0, im.0)/* null terminate 1st dst string. */

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 745

11

Using Advanced Features

Interfacing with Hosts

strcpy(*ch.3, *ch.2)
/* skip over separator characters. */
L_ _parse5:
incr(r.0, im.1)
load(r.1, int.F_ _FUNCT_ARG3)
L_ _parse6:
jmp (*ch.0 == *ch.1, L_ _parse5) /* separator. */
incr(r.1, im.1)
jmp (*ch.1 != im.0, L_ _parse6)
/* at end of separators. */
jmp (*ch.0 == im.0, L_ _parse3)
/* separators end the string*/
L_ _parse7:
/* copy remaining string to dst2. */
strcpy(*ch.2, *ch.0)
/* look out for overlapping copy,OK on 6386*/
strlen(*ch.3)
rts ()

Interfacing with Hosts
Identifying Similar Host Screens
The purpose of host screen identifiers is to enable the Intuity CONVERSANT
system to uniquely identify a screen that arrives from the host computer.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 746

11

Using Advanced Features

Interfacing with Hosts

However, there are two reasons why it may be desirable to define two (or
more) screens with non-unique IDs:
•

The two screens can be used interchangeably.

•

The two screens cannot be used interchangeably, but are never used in
the same part of the application.

Interchangeable Host Screens
This case occurs when two slightly different screens are used in slightly
different situations, but one of the screens and can be used in both situations.
The sample River Bank application, described in Appendix A, Sample
Application, includes an example of this case. The Host Screen send_id is
used to send caller’s account number (Figure 184 on page 749) to the host
computer when an operator or the Intuity CONVERSANT system first logs in
to the host application. If a valid account number is sent, the host computer
returns the user_acct screen containing the same information as the previous
screen, plus the caller’s account balance information as shown in Figure 185
on page 750. When the operator or the system takes the next call, the
account screen from the previous call can be used to send the next account
number to the host computer, which returns the same screen, but with
balance information for the new account.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 747

11

Using Advanced Features

Interfacing with Hosts

Because the account field is the only field used to send data to the host, the
second screen can be used in place of the first screen, wherever it is needed.
With this approach, the first screen does not even have to be defined.
An alternate approach would be to define both screens, even with ambiguous
identifiers, and simply ignore Script Builder’s warnings about the ambiguity.
Note:

It so happens that either screen in the previous example could be
used as the Transaction base screen. If both screens are defined
and used in the application, both could be defined as transaction
base screens. Script Builder permits an application to have
multiple Login Base and/or transaction base screens, but make
sure the application operates correctly regardless of the particular
login base (or transaction base) that arrives when one is
expected.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 748

11

Using Advanced Features
Figure 184.

Interfacing with Hosts
Host Screen send_id Used to Send Caller’s Account Number

Add Screen(s)
ID NUMBER:

CLEAR - EXIT

Snapshot 10

10 of 14

LAST NAME:

PF3 - MENU

Cycle through the snapshots, name and remove snapshots as needed
REMOVE PREVIOUS

NEXT

NAME

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

CHG-KEYS

Issue 2 January 2000 749

11

Using Advanced Features
Figure 185.

Interfacing with Hosts
Host Screen user_acct Used to Send Caller’s Account Number

Define  Screen (transaction base)

ID NUMBER: 00001

SOC SEC NO
DATE OF BIRTH
CITY OF BIRTH

CLEAR - EXIT

River_Bank

LAST NAME: JONES
FIRST NAME: PATRICK

: 123-45-6789
: 26/11/48
: COLUMBUS

PF3 - MENU

JULY 19, 1991
16:33

CHECKING BALANCE:
SAVINGS BALANCE :

$2,010.27
$7,354.63

PF4 - TABLE

Press the function key of the item you would like to define.
IDENT

FIELDS

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

CHG-KEYS

Issue 2 January 2000 750

11

Using Advanced Features

Interfacing with Hosts

Noninterchangeable Host Screens
This case occurs when two similar screens are used for different purposes, in
the Transaction and/or in Host Session Maintenance, and neither screen can
be used in place of the other. If the screens are defined with ambiguous
identifiers, no harm will be done provided that:
•

The two screens never appear in the same Get Host Screen action step.

•

It is never possible for one screen to arrive from the host when the other is
expected.

! CAUTION:
Results will be unpredictable if either of the previous conditions is violated.

Locating External Host Fields
Management of most aspects of the host computer interface is done via the
host DIP (data interface process), as shown in Figure 186 on page 752.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 751

11

Using Advanced Features
Figure 186.

Interfacing with Hosts
Script Builder Software Architecture

Script
Builder
"define"

Application user interface
formats

Application internal
(intermediate)
formats

Application TSM Scripts
(ASCII)

Application host DIP script
(ASCII)

Script
Builder
"install"

(tas)

Application compiled script

TSM

Host DIP

"vi"

/att/ag/hostdip/extract.c

Script
Builder
"make"

/att/ag/hostdip/extract

Helper DIP

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 752

11

Using Advanced Features

Interfacing with Hosts

Chapter 4, Defining the Host Interface, describes the case of host fields that
must be external to Script Builder’s user interface, because they do not
appear in a fixed location in the host screen. When the running application
encounters such a field, it invokes a “helper DIP” where it assumes it will find
the instructions necessary to locate the field. You must provide those
instructions.
The first step is to write the instructions in the “C” programming language.
The file /att/ag/hostdip/helper/extract.c already contains the basic structure
required to pass the instructions to the running application. What is needed
are the instructions themselves.
You can provide instructions to locate as many fields as necessary.

new_screen and extract Routines
Two extract.c subroutines are delivered with Script Builder. When a screen
that uses external fields is received from the host, the new_screen routine
(Figure 187 on page 754) is called. Then the extract routine Figure 188 on
page 755) is called for every external field defined in that screen. In
new_screen you might want to check what screen it is and set up some
global data structures. In the extract routine, you check what screen this is,
what field you are being asked to extract, then extract the field from the
screen and put it into the variable field.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 753

11

Using Advanced Features

Interfacing with Hosts

The screen image (24 rows by 80 columns) is actually stored in a one
dimensional array of 1920 characters. The macro RCTOINDEX may be used
to map row and column numbers to an index for the screen array. An
example use of the RCTOINDEX within the extract.c routine is:
Strncpy(field, &screen [RCTOINDEX(10,16)], 3);
The following is the syntax for the macro RCTOINDEX:
#define RCTOINDEX(r,c) ((r-1) * 80 + (c-1))
Where, r is the row number (where the first row is 1) and c is the column
number (where the first column is 1).
The extract routine is called for every external field you have defined in every
application. If you have defined more than one external field within your
applications, you should check the parameters to the extract routine to see
the field you should extract. The appl_name, screen_name, and fld_name
parameters correspond to the names you defined within Script Builder. The
field you provide in the extract routine should not be larger than the size you
specified within Script Builder.
Figure 187.

new_screen Routine

new_screen(screen,appl_name,screen_name,lu_id)
char *screen;/* screen image--1920 bytes */
char *appl_name; /*name of application assigned in AG

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 754

11

Using Advanced Features

Interfacing with Hosts

*/
char *screen_name;/* name of screen assigned in AG
*/
short lu_id;/* unique lu identifier */
{
/* INSERT CUSTOMIZED CODE HERE */
}

Figure 188.

extract Routine

extract(screen,appl_name,screen_name,fld_name,field)
char
*/
char
*/
char
*/
char
*/
char
*/
{

*screen;/* screen image--array of 1920 bytes
*appl_name: /*name of application assigned in AG
*screen_name;/* name of screen assigned in AG
*fld_name;/* name of field assigned in AG
*field;/* to be filled in with field value
/* INSERT CUSTOMIZED CODE HERE */

}

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 755

11

Using Advanced Features

Interfacing with Hosts

fancy_print Routine
The fancy_print routine (Figure 189 on page 756) is used to print information
from the screen through trace. Nulls and attributes from the screen are
replaced with blanks and exclamation marks (!), respectively, for readability.
After 78 characters db_pr inserts newlines, so if you try to print more than 78
characters per line, the line will be split. One use of this routine would be to
print the screen to help find a bug.
Figure 189.

fancy_print Routine

for (i=0; i<24; i++) {
fancy_print (&screen[i*80],77);
}
*/
fancy_print (str, n)
unsigned char *str;/* string to be printed */
int n;
/* length of string to be printed */
{
char line [100];
int i;
for (i=0; i

3f ?

40 @

41 A

42 B

43 C

44 D

45 E

46 F

47 G
1 of 2

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 761

11

Using Advanced Features
Table 57.

Creating Multilingual Applications

Hexadecimal ASCII Character Set Mapping

48 H

49 I

4a J

4b K

4c L

4d M

4e N

4f O

50 P

51 Q

52 R

53 S

54 T

55 U

56 V

57 W

58 X

59 Y

5a Z

5b [

5c

5d ]

5e ^

5f _

60 ‘

61 a

62 b

63 c

64 d

65 e

66 f

67 g

68 h

69 i

6a j

6b k

6c l

6d m

6e n

6f o

70 p

71 q

72 r

73 s

74 t

75 u

76 v

77 w

78 x

79 y

7a z

7b {

7c |

7d }

7e ~

7f del
2 of 2

Creating Multilingual Applications
Script Builder allows you to use one language in each application. However,
one application can call another application to provide multilingual service to
your callers. To do this, you need to create a small language identification
application that prompts callers to identify the language they would like to
use. The language identification prompts can play back recorded speech in
multiple languages and accepts either touch-tone, dial pulse, or specified
spoken input from the caller. The Execute action step is used to start up the
application for the requested language. See Defining Execute on page 351 in

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 762

11

Using Advanced Features

Creating Multilingual Applications

Chapter 7, Defining the Transaction, for more information about the Execute
action step. One installed version of the application should exist for each
language.
To create a multiple-language application while keeping a single application
source, perform the following procedure:
1 Develop and test your application in US English.
2 Copy the application.
3 Change the language specified in the Speech Format Language field of

the Shared Speech Pools screen to the alternative language.
4 Review the speech formats used in the Announce and Prompt & Collect

action steps and make changes where necessary.
5 Change the Speech Pools name to the name of the recorded speech for

the alternative language.
6 Record the speech in the Primary and Secondary Speech Pools by using

the same phrase tags as used to refer to the alternative language
recording of the speech.
Custom speech for the application is identified by the same phrase tags
that are used in the original application language. Enhanced Basic
Speech is identified by the phrase tags that correspond to the speech
fragments required for the alternative language implementation.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 763

11

Using Advanced Features

Creating Multilingual Applications

7 Record the corresponding phrases in the appropriate language. You can

also use the prerecorded Enhanced Basic Speech provided with the
language by importing the speech from the Enhanced Basic Speech pool
or by using the name of the prerecorded Enhanced Basic Speech as the
primary speech pool.
8 Verify and install the application.

Note:

Some spoken language formats are valid in one language but not
in another. An error message appears when verifying your
application if a format is not applicable. For best results, use
formats in your Announce and Prompt & Collect action steps that
are common to the languages you use (for example, “N,” “D,” “T,”
etc).

Language-Specific Structure
Situations may exist in which a language structure requires a different order
of custom phrases and spoken data. For example, one language may require
the announcement format “there are (number) parts remaining,” where the
other language may require the language equivalent of “there are parts
remaining (number).”

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 764

11

Using Advanced Features

Creating Multilingual Applications

One way of handling this is to make changes to the application to best reflect
the differences between the languages. The disadvantage of this approach is
that as the application is altered, these changes must be made each time, or
two separate versions of the application must be maintained.
An alternative approach is to add conditional logic to the application to check
the system variable, $LANGUAGE, and do different things for each case. For
more information about the $LANGUAGE system variable, see System
Fields on page 45 in Chapter 3, Data Management. Differences in Announce
formats could be handled by using only formats that are available in all
languages (such as the default format “T” for time.) The advantage of this
approach is that only one version of the application needs to be kept and
maintained.
For more information on customizing applications with languages see
Appendix B, Developing Language Implementations.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script Builder
585-313-206

Issue 2 January 2000 765

A Sample Application
Overview
This appendix presents the support files required for the River Bank sample
application. With this application, customers of the bank can call in and obtain
information regarding their accounts, auto interest rates, and mortgage
interest rates. Studying the example provided by the he River Bank sample
application gives you a basic understanding of how you can use Script
Builder to create your own applications. Topics covered include:
•

Transaction Outline on page 767

•

Host Session Maintenance Outline on page 778

•

Standard Phrases on page 781

•

Custom Phrases on page 794

•

Parameters on page 796

•

Host Interface Screen Names and Fields on page 797

•

Database Tables and Fields on page 798

•

Transaction and System Fields on page 799

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 766

A

Sample Application

Transaction Outline

Transaction Outline
Figure 190 on page 767 is the complete transaction definition for the River
Bank sample application. You may want to practice with this example before
you begin developing your own transaction to get an idea of how a
transaction functions.
Figure 190.

Transaction Outline — River Bank Sample Application

start:
HOST_UP_HOURS_OUT:
1.
Answer Phone
2.
Announce
Speak With Interrupt
Phrase: "sil.500"
Phrase: "host up hours out"
3.
Quit
HOST_DOWN_HOURS_IN:
4.
Answer Phone
5.
Announce
Speak With Interrupt
Phrase: "sil.500"
Phrase: "host down hours in"
6.
Quit
HOST_DOWN_HOURS_OUT:
7.
Answer Phone
8.
Announce
Speak With Interrupt
Phrase: "sil.500"
Phrase: "host down hours out"
9.
Quit

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 767

A

Sample Application

10.
11.

12.

Transaction Outline
HOST_UP_HOURS_IN:
Answer Phone
#Greet caller
Announce
Speak With Interrupt
Phrase: "sil.050"
Phrase: "welcome to river bank"
Main_Menu:
#Play the Main Menu to caller
#Can come back here at caller’s request
Prompt & Collect
Prompt
Speak With Interrupt
Phrase: "for current rates"
Input
Max Number Of Digits: 01
Checklist
Case: "1"
Goto Give_Interest_Rates
Case: "2"
Goto Give_Acct_Balances
Case: "3"
Speak With Interrupt
Phrase: "you will be xferred to the next
attendant"
Transfer To 2633
Case: "#"
Speak Without Interrupt
Phrase: "thank you for calling river bank"
Quit
Case: "Not On List"
Speak With Interrupt
Phrase: "i’m sorry, that was an invalid entry"

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 768

A

Sample Application

13.

14.

Transaction Outline
Reprompt
Case: "Initial Timeout"
Reprompt
Case: "Too Few Digits"
Speak With Interrupt
Phrase: "i’m sorry, i didn’t get all your
touch tones"
Reprompt
Case: "No More Tries"
Speak With Interrupt
Phrase: "please try again"
Quit
End Prompt & Collect
Quit
Give_Interest_Rates:
#Get caller’s rate request
#__if caller enters *, goto Main_Menu
Prompt & Collect
Prompt
Speak With Interrupt
Phrase: "for savings checking mortgage"
Input
Max Number Of Digits: 01
Checklist
Case: "1"
Speak With Interrupt
Phrase: "the savings acct interest rate is"
Continue
Case: "2"
Speak With Interrupt
Phrase: "the checking acct interest rate is"
Continue
Case: "3"
Speak With Interrupt

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 769

A

Sample Application

15.

16.

17.

Transaction Outline
Phrase: "the mortgage interest rate is"
Continue
Case: "4"
Speak With Interrupt
Phrase: "the auto loan interest rate is"
Continue
Case: "*"
Goto Main_Menu
Case: "Not On List"
Speak With Interrupt
Phrase: "i’m sorry, that was an invalid entry"
Reprompt
Case: "Initial Timeout"
Reprompt
Case: "Too Few Digits"
Speak With Interrupt
Phrase: "i’m sorry, i didn’t get all your
touch tones"
Reprompt
Case: "No More Tries"
Speak With Interrupt
Phrase: "please try again"
Quit
End Prompt & Collect
#Read table with caller’s request, get current rate
Read Table
Table Name: river_db
Search From Beginning
Field: tt_code = $CI_VALUE
#Speak the rate, then let caller request another
Announce
Speak With Interrupt
Field: current_rate As ND2
Phrase: "percent."
Goto Give_Interest_Rates

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 770

A

Sample Application

18.

19.

20.
21.

Transaction Outline
Give_Acct_Balances:
#Set loop counter, limit attempts to get acct numbr
Set Field Value
Field: acct_loop_tries = 3
acct_loop:
#Get caller’s 5-digit account number
Prompt & Collect
Prompt
Speak With Interrupt
Phrase: "please enter id number"
Input
Min Number Of Digits: 05
Max Number Of Digits: 05
Checklist
Case: "Input Ok"
Continue
Case: "Initial Timeout"
Reprompt
Case: "Too Few Digits"
Speak With Interrupt
Phrase: "i’m sorry, i didn’t get all your
touch tones"
Reprompt
Case: "No More Tries"
Speak With Interrupt
Phrase: "please try again"
Quit
End Prompt & Collect
#Send the given acct num
get back user_acct screen
Send Host Screen
Send Screen Name: user_acct Use Aid Key: ENTERKEY
Field: user_id = $CI_VALUE
Get Host Screen
For Screen Name: user_acct

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 771

A

Sample Application

22.

23.
24.
25.

Transaction Outline
#Field last_four = last 4 digits of Social Sec Num.
End Get Host Screen
#Get last 4 digits of SSN from caller
Prompt & Collect
Prompt
Speak With Interrupt
Phrase: "enter last four digits of ssnum"
Input
Min Number Of Digits: 04
Max Number Of Digits: 04
Checklist
Case: "Input Ok"
Continue
Case: "Initial Timeout"
Reprompt
Case: "Too Few Digits"
Speak With Interrupt
Phrase: "i’m sorry, i didn’t get all your
touch tones"
Reprompt
Case: "No More Tries"
Speak With Interrupt
Phrase: "please try again"
Quit
End Prompt & Collect
#Compare caller SSN with host field last_four
#_if they match, go on to give account balances
#_if they don’t match, ask again for acct num & SSN
Evaluate
If $CI_VALUE
!= last_four
Set Field Value
Field: acct_loop_tries = acct_loop_tries - 1
Evaluate
If acct_loop_tries
> 0

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 772

A

Sample Application
26.
27.

28.

29.

Transaction Outline
Goto acct_loop
Else
Announce
Speak With Interrupt
Phrase: "sil.500"
Phrase: "id ssnum combination do no match"
Phrase: "sil.500"
Phrase: "please try again"
Quit
End Evaluate
End Evaluate
Speak_Balance_Amount:
#Have a valid acct_num & SS#
#Get account type request and play its balance.
#Repeat as long as caller enters a valid request
#If caller enters *, goto Main_Menu
Prompt & Collect
Prompt
Speak With Interrupt
Phrase: "for savings or checking balance"
Input
Max Number Of Digits: 01
Checklist
Case: "1"
Speak With Interrupt
Phrase: "your savings account balance is"
Field: savings As N$D2
Goto Speak_Balance_Amount
Case: "2"
Speak With Interrupt
Phrase: "your checking account balance is"
Field: checking As N$D2
Goto Speak_Balance_Amount

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 773

A

Sample Application

30.
31.
32.

Transaction Outline
Case: "*"
Goto Main_Menu
Case: "Not On List"
Speak With Interrupt
Phrase: "i’m sorry, that was an invalid entry"
Reprompt
Case: "Initial Timeout"
Reprompt
Case: "Too Few Digits"
Speak With Interrupt
Phrase: "i’m sorry, i didn’t get all your
touch tones"
Reprompt
Case: "No More Tries"
Speak With Interrupt
Phrase: "please try again"
Quit
End Prompt & Collect
#** One section for Holiday processing
#** Another section to show new Modify Table action
#**
#** This section added to show Holiday processing
#** Just announce it’s a holiday & say "call again"
#** HOLIDAY label required since Holidays are used
HOLIDAY:
Answer Phone
Announce
Speak Without Interrupt
Phrase: "Holiday, not open, please call back"
Quit
#**
#** This section shows "Modify Table" action
#** This allows an authorized user to change the
#** rates in the "river_db" table that are quoted

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 774

A

Sample Application

33.

34.

Transaction Outline
#** to callers
#**
Change_Rate_Table:
Prompt & Collect
Prompt
Speak With Interrupt
Phrase: "Authorization code"
Input
Max Number Of Digits: 16
TT Terminator Code Value: "#"
No. Of Tries To Get Input: 02
Checklist
Case: "104576"
Continue
Case: "Not On List"
Reprompt
Case: "Initial Timeout"
Reprompt
Case: "Too Few Digits"
Reprompt
Case: "No More Tries"
Quit
End Prompt & Collect
#** Authorization code matches; let caller proceed
Get_Rate_To_Change:
#** Get the acct or loan type whose rate to change
Prompt & Collect
Prompt
Speak With Interrupt
Phrase: "for savings checking mortgage"
Input
Caller Input Field: change_request
Max Number Of Digits: 01
No. Of Tries To Get Input: 02

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 775

A

Sample Application

Transaction Outline
Checklist
Case: "1"
Speak With Interrupt
Phrase: "the savings acct interest rate is"
Continue
Case: "2"
Speak With Interrupt
Phrase: "the checking acct interest rate is"
Continue
Case: "3"
Speak With Interrupt
Phrase: "the mortgage interest rate is"
Continue
Case: "4"
Speak With Interrupt
Phrase: "the auto loan interest rate is"
Continue
Case: "*"
Goto Main_Menu
Case: "Not On List"
Speak With Interrupt
Phrase: "i’m sorry, that was an invalid entry"
Reprompt
Case: "Initial Timeout"
Reprompt
Case: "Too Few Digits"
Speak With Interrupt
Phrase: "i’m sorry, i didn’t get all your
ouch tones"
Reprompt
Case: "No More Tries"
Speak With Interrupt
Phrase: "please try again"
Quit

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 776

A

Sample Application

Transaction Outline

End Prompt & Collect
#** Read Table with rate_request, get current rate
35. Read Table
Table Name: river_db
Search From Beginning
Field: tt_code = change_request
#** Speak the rate to the caller
36. Announce
Speak With Interrupt
Field: current_rate As ND2
Phrase: "percent."
#** Get the new rate and modify the table entry
37. Prompt & Collect
Prompt
Speak With Interrupt
Phrase: "Enter the new rate or press * to keep
it unchanged"
Phrase: "Enter from 1 to 4 digits"
Phrase: "If you enter less than 4 digits,
end with #"
Input
Max Number Of Digits: 04
TT Terminator Code Value: "#"
No. Of Tries To Get Input: 02
Checklist
Case: "nr"
Continue
Case: "*"
Speak Without Interrupt
Phrase: "No change"
Goto Get_Rate_To_Change
Case: "Not On List"
Reprompt
Case: "Initial Timeout"
Reprompt
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 777

A

Sample Application

38.
39.

40.
41.

42.

Host Session Maintenance Outline
Case: "Too Few Digits"
Reprompt
Case: "No More Tries"
Quit
End Prompt & Collect
Set Field Value
Field: new_rate = $CI_VALUE
Modify Table
Table Name: river_db Operation: Change
Field: current_rate = new_rate
#** Check to see if modify worked: read the table
#** with rate_request, get & speak the new rate
Read Table
Table Name: river_db
Search From Beginning
Field: tt_code = change_request
Announce
Speak Without Interrupt
Phrase: "The new rate is"
Field: current_rate As ND2
Phrase: "percent."
Goto Get_Rate_To_Change

Host Session Maintenance Outline
Figure 191 on page 779 shows all the host activities that take place in the
background of the River Bank sample application. Login, logout, and
recovery procedures are listed.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 778

A

Sample Application
Figure 191.

Host Session Maintenance Outline
Host Session Maintenance Outline — River Back Sample
Application

login:
1.
Get Host Screen
For Screen Name: login_base
2.
Send Host Screen
Send Screen Name: login_base Use Aid Key: ENTERKEY
Field: option = "c"
For Screen Name: cics_banner
3.
Send Host Screen
Send Screen Name: cics_banner Use Aid Key: CLRKEY
For Screen Name: blank
4.
Send Host Screen
Send Screen Name: blank Use Aid Key: ENTERKEY
Field: command = "acvm"
For Screen Name: main_menu
5.
Send Host Screen
Send Screen Name: main_menu Use Aid Key: ENTERKEY
Field: form_choice = "x"
For Screen Name: HOST_TIMEOUT
For Screen Name: UNRECOGNIZED_SCREEN
6.
Send Host Screen
# take appropriate action for these cases
# could be to do nothing
For Screen Name user_acct
# transaction base
End Get Host Screen
logout:
1. Get Host Screen
For Screen Name: user_acct
2. Send Host Screen
Send Screen Name: user_acct Use Aid Key: CLRKEY

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 779

A

Sample Application

Host Session Maintenance Outline

For Screen Name: blank
3. Send Host Screen
Send Screen Name: blank Use Aid Key: ENTERKEY
For Screen Name: HOST_TIMEOUT
For Screen Name: UNRECOGNIZED_SCREEN
4. Send Host Screen
# table appropriate action
For Screen Name: login_base
End Get Host Screen
recover:
1. Get Host Screen
For Screen Name: cics_banner
2. Send Host Screen
Send Screen Name: Use Aid Key: CLRKEY
For Screen Name: blank
3. Send Host Screen
Send Screen Name: blank Use Aid Key: ENTERKEY
Field: command = "acvm"
For Screen Name: main_menu
4. Send Host Screen
Send Screen Name: main_menu Use Aid Key: ENTERKEY
Field: form_choice = "exit"
#if we timeout, drop out of the Get host
#structure and try again
For Screen Name: HOST_TIMEOUT
#if we don’t recognize the screen, try to clear it
For Screen name: UNRECOGNIZED_SCREEN
5. Send Host Screen
Send Screen Name: Use Aid Key: CLRKEY
#this is the transaction base screen, so we don’t
#need to do anything else
For Screen Name: user_acct
#this is the login base screen, so do nothing
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 780

A

Sample Application

Standard Phrases

#we will jump to the login sequence automatically
For Screen Name: login_base
End Get Host Screen

Standard Phrases
Figure 192 on page 782 lists all enhanced basic speech (EBS) phrases,
(formerly called standard speech) used in the River Bank sample application.
Note:

Script Builder does not support speaking numbers in the billions
and trillions if they are defined as an integer variables. However,
the phrases “billion" and “trillion" are included in the Enhanced
Basic Speech package. If your script requires speaking such large
numbers, you can write an external function to accept a large
number in the form of an ASCII string, parse the string (getting the
amounts of billions and trillions as substrings), convert the three
resulting substrings to integer values, then speak them with the
tnum instruction inserting a talk instruction with the phrases for
“billion" or “trillion" where appropriate. See Intuity CONVERSANT
System Version 7.0 Application Development with Advanced
Methods, 585-313-203, for information on the tnum and talk
script instructions.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 781

A

Sample Application

Standard Phrases
For some enhanced basic speech (EBS) languages, the number
and currency formats also accept inputs as characters and can
handle values up to 15 digits (999,999,999,999) that can be
preceded by a minus sign (-) to indicate a negative number. See
"Maximum Values for Numbers and Currency" in Intuity
CONVERSANT System Version 7.0 Speech Development,
Processing, and Recognition, 585-313-201 for information on
language support for large numbers.

Note:

An asterisk (*) in front of the phrase name would indicate that it is
not recorded.

Figure 192.
:a
:b
:c
:d
:e
:f
:g
:h
:i
:j
:k
:l
:m
:n

List of Standard Phrases — River Bank Sample Application
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 782

A

Sample Application
:o
:p
:q
:r
:s
:t
:u
:v
:w
:x
:y
:z
:0
:1
:2
:3
:4
:5
:6
:7
:8
:9
:10
:11
:12
:13
:14
:15

Standard Phrases
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 783

A

Sample Application
:16
:17
:18
:19
:20
:30
:40
:50
:60
:70
:80
:90
:100
:1000
:1000000
:a.
:b.
:c.
:d.
:e.
:f.
:g.
:h.
:i.
:j.
:k.
:l.
:m.

Standard Phrases
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 784

A

Sample Application
:n.
:p.
:q.
:r.
:s.
:t.
:u.
:v.
:w.
:x.
:y.
:z.
:0.
:1.
:2.
:3.
:4.
:5.
:6.
:7.
:8.
:9.
:10.
:11.
:12.
:13.
:14.
:15.

Standard Phrases
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 785

A

Sample Application
:16.
:17.
:18.
:19.
:20.
:30.
:40.
:50.
:60.
:70.
:80.
:90.
:100.
:1000.
:1000000.
:a?
:b?
:c?
:d?
:e?
:f?
:g?
:h?
:i?
:j?
:k?
:l?
:m?

Standard Phrases
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 786

A

Sample Application
:n?
:o?
:p?
:q?
:r?
:s?
:t?
:u?
:v?
:w?
:x?
:y?
:z?
:0?
:1?
:2?
:3?
:4?
:5?
:6?
:8?
:9?
:10?
:11?
:12?
:13?
:14?
:15?

Standard Phrases
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 787

A

Sample Application
:16?
:17?
:18?
:19?
:20?
:30?
:40?
:50?
:60?
:70?
:80?
:90?
:100?
:1000?
:1000000?
am
april
april.
april?
august
august.
august?
cent
cents
december
december.
december?
dollar

Standard Phrases
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 788

A

Sample Application
dollar and
dollars
dollars and
eighteenth
eighteenth.
eighteenth?
eighth
eighth.
eighth?
eleventh
eleventh.
eleventh?
february
february.
february?
fifteenth
fifteenth.
fifteenth?
fifth
fifth.
fifth?
first
first.
first?
fourteenth
fourteenth.
fourteenth?
fourth

Standard Phrases
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 789

A

Sample Application
fourth.
fourth?
friday
friday.
friday?
january
january.
january?
july
july.
july?
june
june.
june?
march
march.
march?
may
may.
may?
midnight
monday
monday.
monday?
ninth
ninth.
ninth?
noon

Standard Phrases
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 790

A

Sample Application

Standard Phrases

november
std_speech
november.
std_speech
november?
std_speech
o’clock
std_speech
october
std_speech
october.
std_speech
october?
std_speech
oh (as in 8:05) std_speech
pm
std_speech
point
std_speech
saturday
std_speech
saturday.
std_speech
saturday?
std_speech
second
std_speech
second.
std_speech
second?
std_speech
september
std_speech
september.
std_speech
september?
std_speech
seventeenth
std_speech
seventeenth.
std_speech
seventeenth?
std_speech
seventh
std_speech
seventh.
std_speech
seventh?
std_speech
sixteenth
std_speech
sixteenth.
std_speech
sixteenth?
std_speech
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 791

A

Sample Application
sixth
sixth.
sixth?
sunday
sunday.
sunday?
tenth
tenth.
tenth?
third
third.
third?
thirteenth
thirteenth.
thirteenth?
thirtieth
thirtieth.
thirtieth?
thirtyfirst
thirtyfirst.
twelfth
thirtyfirst?
thursday
thursday.
thursday?
tuesday
tuesday.
tuesday?

Standard Phrases
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 792

A

Sample Application
twelfth.
twelfth?
twentieth
twentieth.
twentieth?
twentyeighth
twentyeighth.
twentyeighth?
twentyfifth
twentyfifth.
twentyfifth?
twentyfirst
twentyfirst.
twentyfirst?
twentyfourth
twentyfourth.
twentyfourth?
twentyninth
twentyninth.
twentyninth?
twentysecond
twentysecond.
twentysecond?
twentyseventh
wednesday?
twentyseventh.
twentyseventh?
twentysixth

Standard Phrases
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 793

A

Sample Application

Custom Phrases

twentysixth.
twentysixth?
twentythird
twentythird.
twentythird?
wednesday
wednesday.

std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
std_speech

Custom Phrases
Figure 193 on page 794 shows all custom speech used in the River Bank
sample application.
Note:

An asterisk (*) in front of the phrase name would indicate that it is
not recorded.

Figure 193.

List of Custom Phrases — River Bank Sample Application

i’m sorry, i didn’t get all your touch tones
percent.
please try again
sil.050
sil.500
thank you
Authorization code
Enter from 1 to 4 digits
Enter the new rate or press * to keep it unchang

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

std_speech
std_speech
std_speech
std_speech
std_speech
std_speech
River_Bank
River_Bank
River_Bank

Issue 2 January 2000 794

A

Sample Application
Holiday, not open, please call back
If you enter less than 4 digits, end with #
No change
The new rate is
enter last four digits of ssnum
for current rates
for savings checking mortgage
for savings or checking balance
host down hours in
host down hours out
host up hours out
i’m sorry, that was an invalid entry
id ssnum combination do no match
please enter id number
thank you for calling river bank
the mortgage interest rate is
the auto loan interest rate is
the checking acct interest rate is
the savings acct interest rate is
welcome to river bank
you will be xferred to the next attendant
your checking account balance is
your savings account balance is

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Custom Phrases
River_Bank
River_Bank
River_Bank
River_Bank
River_Bank
River_Bank
River_Bank
River_Bank
River_Bank
River_Bank
River_Bank
River_Bank
River_Bank
River_Bank
River_Bank
River_Bank
River_Bank
River_Bank
River_Bank
River_Bank
River_Bank
River_Bank
River_Bank

Issue 2 January 2000 795

A

Sample Application

Parameters

Parameters
Figure 194 on page 796 shows the River Bank sample application
parameters.
Figure 194.

Parameters — River Bank Sample Application

HOURS yes
SUN - - - - - MON 08 00 AM 05 30 PM
TUE 08 00 AM 05 30 PM
WED 08 00 AM 05 30 PM
THU 08 00 AM 05 30 PM
FRI 08 00 AM 05 30 PM
SAT - - - - - HOLIDAYS START:
01/01/91
02/18/91
05/27/91
07/04/91
09/02/91
10/14/91
11/28/91
12/25/91
HOLIDAYS END:
GREETINGS START:
GREETINGS END:
PRIMARY SPEECH POOL: std_speech
SECONDARY SPEECH POOL: River_Bank
HOST yes
TIMEOUT 60
UNRECTIME 60

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 796

A

Sample Application

Host Interface Screen Names and Fields

LUAVAIL 0
RESERVELU yes
LU START:
LU END:
CALL DATA START:
user_id
checking
savings
tt_code
CALL DATA END:

Host Interface Screen Names and Fields
Figure 195 on page 797 shows all fields in host screens used in the River
Bank sample application.
Note:

An asterisk (*) in front of the field name would indicate that it is not
completely defined. Fields used in the transaction but not
associated with a host screen would be labeled as No fields.

Figure 195. Fields in Host Screens — River Bank Sample Application
Screen blank :
Field command
Screen cics_banner :
- No fields
Screen login_base :
Field option
Screen main_menu :
Field errors_choice
Field form_choice

Size

38 Type char

Size

1

Type char

Size
Size

1
1

Type char
Type char

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 797

A

Sample Application

Database Tables and Fields

Field table_choice
Field unform_choice
Screen user_acct :
Field bday
Field checking
Field city
Field cur_date
Field cur_time
Field first_name
Field last_four
Field last_name
Field savings
Field ss_num
Field user_id

Size
Size

1
1

Type char
Type char

Size
Size
Size
Size
Size
Size
Size
Size
Size
Size
Size

24
21
24
19
5
30
4
15
21
4
5

Type
Type
Type
Type
Type
Type
Type
Type
Type
Type
Type

date
num
char
date
time
char
char
char
num
char
char

Database Tables and Fields
Figure 196 on page 798 shows all fields in database(s) used in the River
Bank sample application.
Figure 196.

Database Fields — River Bank Sample Application

Database river_db :
Field account_type
Field current_rate
Field tt_code

Size
Size
Size

13 Type char
12 Type num
7 Type num

Fields used in the transaction but not associated with a database are labeled
as No fields.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 798

A

Sample Application

Transaction and System Fields

Transaction and System Fields
Figure 197 on page 799 shows all transaction and system fields used in the
River Bank sample application.
Figure 197.

Transaction and System Fields — River Bank Sample Application

$CI_NO_DIGS_GOT

: Size

$CI_TRIES_USED
$CI_VALUE
$HOST_ERROR
$HOST_SCREEN
$HOURS_CLOSED
$MATCH_FOUND
$RECORDS_CHANGED
$TRANSFER_RESULT
acct_loop_tries
change_request
new_rate

:
:
:
:
:
:
:
:
:
:
:

Size
Size
Size
Size
Size
Size
Size
Size
Size
Size
Size

4 Type num
4
67
4
4
4
4
15
4

Type
Type
Type
Type
Type
Type
Type
Type
Type
1 Type
Type

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

num
char
num
num
num
num
char
num
num
char
num

Issue 2 January 2000 799

B Developing Language
Implementations

Overview
This appendix provides custom application developers with information
needed to build the language files required to support a Script Builder
application when making changes to a language package.
Note:

The information in this appendix applies only if you need to make
changes to a language package as it is provided with your system.

Topics covered include:
•

Overview of Developing Language Implementations on page 801

•

Defining the Language File and Directory on page 802

•

Defining the Speech Tables on page 802

•

Defining the TTS Tables on page 807

•

Phrase List File for EBS on page 808

•

Conventions for Language Implementations on page 809

•

Verifying Format and Consistency of Language Definition Files on page
813

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 800

B

Developing Language Implementations

Overview of Developing Language Implementations

Overview of Developing Language Implementations
Developing language implementations involves several steps:
•

Defining the directory in which the language implementations reside (for
example, /vs/bin/ag/formats/Dutch)

•

Identifying needed phrases and recording those phrases

•

Creating a talkfile and loading the recorded phrases onto the system

•

Developing functions (subroutines) in transaction assembler script (TAS)
language that use the recorded phrases to speak the desired format
See Intuity CONVERSANT System Version 7.0 Application Development
with Advanced Methods, 585-313-203, for more information about writing
TAS language subroutines.

Note:

See the German and Castilian Spanish language implementations
that are already available for guidance in developing the
necessary script functions.

•

Creating the speech format tables to support the developed script
functions and recorded speech

•

Applying common conventions to maximize the feasibility of multilingual
applications

•

Verifying format and consistency of language definition files

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 801

B

Developing Language Implementations

Defining the Language File and Directory

Defining the Language File and Directory
Each language that you want supported by Script Builder must have a
directory with the same name as the language and created under the
following directory:
/vs/bin/ag/formats
For example, the default language, US_English, is defined in the following
directory: /vs/bin/ag/formats/US_English
Language names can consist of uppercase or lowercase alphanumeric
characters and "." and "_". The name can be up to 14 characters in length.
No spaces are allowed.

Defining the Speech Tables
The language directory contains four tables that define the speech playback
capability, two optional tables that define the text-to-speech (TTS) option, and
a collection of TSM script routines that implement the various speech
playback and TTS formats.
format_tag

The format_tag file lists the speech formats supported and the phrase tags
required for each format. When a speech format is used by an application, all
of the speech phrases listed in the format_tag file are added to the

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 802

B

Developing Language Implementations

Defining the Speech Tables

application. Phrase tags can be listed directly or a group name can be listed
to refer to a collection of phrase tags. Phrase tag groups represent a
collection of phrase tags, such as digits with rising inflection, and are defined
in the tag_groups file (see tag_groups on page 804). Each format is defined
as follows (Figure 198 on page 803):
Figure 198.

format_tag File Format

format (description of format) = {category1 phrase tag1
tag2
category2
"quoted tag" etc}

Each format definition must begin on a new line. The description of
format argument is the speech playback format that is available in the
Choices menu (F2 ) of the Announce screen. This argument should be less
than 60 characters, but sufficient to identify the intended use of the format.
The description of the format should be placed in parentheses immediately
following the format name. Within the second set of brackets ("{" and "}") you
should include the list of phrase tags and phrase tag groups that may be
required to speak the format. Separate each phrase tag and/or phrase tag
group with white space, including blanks, tabs, and new lines); commas are
not allowed. If you have a phrase tag that consists of multiple words with
embedded white space, surround the phrase tag with quotes as shown in
format_tag File Format on page 803.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 803

B

Developing Language Implementations

tag_groups

Defining the Speech Tables

The tag_groups file lists groups of phrase tags and phrases in each group.
Group names can consist of uppecase or lowercase alphanumeric characters
and the characters "-," "_," "." Group names cannot have embedded white
space. Each group is defined as follows (Figure 199 on page 804):
Figure 199.

tag_groups File Format

groupname (description of group) = {tag1 tag2 tag3
"quoted tag" etc}

Each group must begin on a new line. The description of group is optional;
however, if it is provided, ten the groupname is shown in the Add Phrases
menu under Speech Administration. Because of this, you are able to add the
groupname to the application before using the formats that might reference
that group. Otherwise, the phrasegroup is not visible to you, and it is simply
used to specify phrases for the format_tag file. The phrase tags within the
second set of brackets are the phrase tags that are included in the phrase
group. If you have a phrase tag that consists of multiple words within
embedded white space, surround the phrase tag with quotes as shown in
tag_groups File Format on page 804. White space can be used freely within
the entry.
format_code

The format_code file lists the supported formats and the code to be
generated by the system for each format. Each format code description
includes four fields (Figure 200 on page 805):

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 804

B

Developing Language Implementations

Figure 200.

Defining the Speech Tables

Format Code File Format

format code_for_numeric_args
script_file

code_for_char_args

The format is identical to the format described in the format_tag file (see
Figure 198 on page 803). The second field, code_for_numeric_args,
contains the script code to be generated when a numeric field is being
spoken. The third field, code_for_char_args, contains the code to be
generated when a character, date, or time field is being spoken. The last
field, script_file, contains the name of the script file containing the
subroutines that must be included with the application, if any. If the code
generated contains a call of a subroutine, then this field must list the file
containing that subroutine. The file name, with no directories, is specified.
The system automatically generates the directory name.
Only one line per format is allowed, even if the line wraps when displayed, as
shown in the following example:
N$D2 "L__sp_dolc2 ($field)""L__csp_dolc2 ($field)"_sp_
dolc2.t

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 805

B

Developing Language Implementations

Defining the Speech Tables

Each field is separated by white space. If the code generated contains white
space (spaces or tabs), the code must be surrounded by quotes. Parameter
substitution occurs as follows:
•

The string, $field, is replaced with the field name of the data to be
spoken. The field name is prepended with the tas syntax, ch., int., or im.,
as appropriate for the script instruction.

•

The string, $format, is replaced by the current format as a string. To
accommodate TAS conventions, the format is copied into a temporary
variable, and the address of that variable is passed in place of $format.

Multiple script instructions can be included in one of the entries by separating
them with a semicolon (;). Within the field, a backslash ( \ ) is used as an
escape for quotes (or white space, for that matter). Unused fields can have a
"-" (dash) as a placeholder. The last two fields are optional.
If a numeric field is to be spoken with a format for which no numeric code is
provided, the system generates code to convert the field to ASCII format (an
itoa script instruction), and generates the code for character fields. Likewise,
if a character field is to be spoken, but only numeric code has been provided,
the system generates code to convert the numeric code and generates the
specified numeric code.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 806

B

Developing Language Implementations

proto.pl

Defining the Speech Tables

The proto.pl file specifies the enhanced basic speech (EBS), formerly called
standard speech, phrase tags and their corresponding phrase numbers. The
proto.pl file has the same format as a .pl file. See Phrase List File for EBS on
page 808 for more information about a .pl file.
The first field in each line of the proto.pl file is ignored. The first 999 phrase
numbers (1-999) are reserved for standard phrases with fixed phrase number
assignments. If a standard phrase does not need to be assigned a specific
phrase number, then the proto.pl file can show phrase number 0 for the
phrase. This causes the system to assign any available phrase number
greater than 999 to the phrase and place it in the primary pool for the
application. It is an error for a phrase to be listed in the format_tag or
tag_group file and not be listed in the proto.pl file. However, phrases can be
contained in the proto.pl file that are not currently referenced in the other
files.

Defining the TTS Tables
Two optional tables define the TTS capability. TTS can be supported in the
same way US English TTS is provided. Specific TTS formats are provided to
tell the system to speak field data in the various formats. The formats are
named the same as the non-TTS equivalents, but with a letter "A" preceding
them.
Note:

The TTS formats are only made available to the user if the TTS
package is loaded on the system.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 807

B

Developing Language Implementations

Phrase List File for EBS

TTSformat_tfile and The TTS formats are defined in separate TTS files:
TTSformat_cfile
• The TTSformat_tfile file is used to define TTS formats that are supported

for a particular language. If TTS is not available for a language, this file is
not provided.
The file has the same format as the format_tag file (see format_tag on
page 802), but there are no tags or tag groups listed within the curly
brackets.
•

The TTSformat_cfile file is used to specify the code to be generated for
TTS formats for a particular language. It is only provided if TTS is
available for the language.
The format of the file is the same as the format_code file (see
format_code on page 804).

Phrase List File for EBS
A language implementation normally includes an EBS package with all the
necessary prerecorded phrases in a female voice a (male voice is available
for US English only). A phrase list (.pl) file defines the phrase names and
phrase numbers for all the phrases in the EBS package. The first line of the
.pl file must have the language listed at the end in brackets. The language
name must be the same as used in the language package (the same as the
subdirectory name in the /vs/bin/ag/formats directory).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 808

B

Developing Language Implementations

Conventions for Language Implementations

An example of the first line of a .pl file is:
225

Standard speech in male voice

[US_English]

The purpose of identifying the EBS language is to prevent its inadvertent use
by the developer for the wrong language.

Conventions for Language Implementations
Phrase Tags

Standard phrases should be labeled using the following conventions:
•

The colon (:) can be used as the first character of a phrase to indicate that
a phrase is a standard phrase. Custom phrases may not start with a
colon.

•

The letters of the alphabet, digits, the minus sign ("-"), and the touch-tone
symbols ( * )and ( # ), will normally be allocated fixed phrase numbers and
have phrase numbers starting with a colon.

•

Additional numbers and phrase fragments, such as the teens, the tens
through 90, hundred, and thousand, as necessary to speak numbers in a
natural style for a particular language are also denoted with a colon, and
assigned fixed phrase numbers. Some languages may have to augment
these with different phrases to allow speaking a number with the
appropriate gender, or to include additional phrase fragments such as the
numbers through 99.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 809

B

Developing Language Implementations

Format Names

Conventions for Language Implementations

•

If a language implementation supports multiple inflections, then the
standard phrases would be recorded with a rising and falling inflection, in
addition to the medial inflection. The inflection is normally denoted by
adding a period ( . ) for falling inflection or a question mark ( ? ) for rising
inflection to the end of the phrase tag. For example, for US English, the
phrase tag ":100?" refers to the fragment "hundred" spoken with a rising
inflection:

•

Other standard phrases necessary to speak money in the correct
currency for a language, to speak dates and times, etc., must be defined.
These can start with a colon and/or be available in multiple inflections, but
this is not required.

•

All standard phrases must be included in the proto.pl file, whether or not
they start with a colon.

It is desirable that an application be easily modified to support different
languages. This requires that as many of the formats as possible follow a
standard naming convention, so the formats will be available in all languages.
The current naming convention is based on the US English implementation.
Thus, it is desirable that each language support the same formats as US
English using the same format name. Examples are THMAM (time: hour,
minute, AM/PM), and DMSPDYY (date: with month spoken as a word — for
example, January — day, and year as four digits). Currency is denoted with
the dollar sign "$" (such as N$D2 — number spoken as dollars and 2-digit
cents).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 810

B

Developing Language Implementations

Conventions for Language Implementations

In particular, the most standard way of speaking numbers, characters, dates,
currency, and times should be assigned the default format for the language
(N, C, D, N$, and T, respectively.)
Additional formats and names for formats can be specified to support natural
spoken data according to each language’s grammar. For example, the
Spanish formats for numbers referring to a masculine, feminine, or neutral
noun are "NM," "NF," and "NN," respectively.
If TTS is provided for a language, the TTS formats should be the same as the
formats for prerecorded phrases, except that the format is preceded by the
letter A (for example, "AN" and "ATHMAM"). Thus non-TTS formats should
not start with the letter A.
Phrase Numbers

The proto.pl file is used to define phrase numbers for the standard phrases.
The phrase numbers 1-999 are reserved for standard phrases.
It is desirable, but not necessary that all standard phrases be allocated
specific phrase numbers within this range. The phrases that must be
allocated in this range are those that must be allocated a specific number or
allocated contiguously for the implementation. Examples are the letters of the
alphabet, numbers, months, and ordinal numbers if needed. The
implementation will typically compute the phrase numbers for these by
adding an offset to a base phrase number of a contiguous set of phrases for
the set.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 811

B

Developing Language Implementations

Conventions for Language Implementations

In cases where standard phrases are referenced only by their phrase tag,
such a "dollars and" for US English, it is not necessary that a fixed phrase
number be assigned. These can be assigned phrase number 0, in the
proto.pl file.
Rules for Creating
Script Subroutine
Source Files

A language package should include a set of script subroutine source (.t) files,
necessary to implement the various formats, as well as the specific files listed
previously. The rules for these files are based on the rules for external
functions, described in Writing External Functions on page 736 in Chapter
11, Using Advanced Features. Particular differences are:
•

The files are installed in the same language directory as the language
definition files, /vs/bin/ag/formats/language, rather than in the directory
for external functions.

•

The file names should start with an underscore ("_"), and use a .t suffix.

•

The file names should include a language identifier, such as "CS" for
Castilian Spanish (_CSsp_dol.t).

•

Labels within the file should be of the following format:
L_fileprefix_uniquesuffix
For example, labels within the above file could include L__CSsp_dol,
L__CSsp_dolErr, L__CSsp_dol2, L__CSsp_dol_rtn, etc.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 812

B

Developing Language Implementations

Verifying Format and Consistency of Language Definition Files

Verifying Format and Consistency of Language
Definition Files
Use the utility program getformats to check that the language definition files
are properly formatted and consistent with each other. This tool reads the
language definition files for a specific language (once they have been
installed in the /vs/bin/ag/formats/language directory), and outputs a copy
of what it reads. Checking this output allows you to confirm that the files were
read properly. If any phrase tags are defined in the format_tags or
tag_groups file that are not listed in the proto.pl file, the program generates
an error message.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 813

Glossary
Numerics
23B+D
23 bearer (communication) and 1 data (signaling) channel on a T1 PRI circuit card.
30B+D
30 bearer (communication) and 1 data (signaling) channel (plus framing channel 0)
on an E1 PRI circuit card.
3270 interface
A link between one or more Intuity CONVERSANT machines and a host mainframe.
In Intuity CONVERSANT system documentation, the 3270 interface specifically
means the link between one or more system machines and an IBM host mainframe.
47B+D
47 bearer (communication) and 1 data (signaling) channel on two T1 PRI circuit
cards.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 814

4ESS®

Glossary

4ESS®
A large Lucent central office switch used to route calls through the telephone
network.

A

AC
alternating current
ACD
automatic call distributor
AD
application dispatch
AD-API
application dispatch application programming interface
adaptive differential pulse code modulation
A means of encoding analog voice signals into digital signals by adaptively
predicting future encoded voice signals. This adaptive modulation method reduces
the number of bits required to encode voice. See also “pulse code modulation.”

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 815

Glossary

adjunct products

adjunct products
Products (for example, the Adjunct/Switch Application Interface) that the Intuity
system administers via cut-through access to the inherent management capabilities
of the product itself; this is in opposition to the ability of the Intuity CONVERSANT
system to administer the switch directly.
Adjunct/Switch Application Interface
An optional feature package that provides an Integrated Services Digital Networkbased interface between Lucent Technologies PBXs and adjunct processors.
ADPCM
adaptive differential pulse code modulation
ADU
asynchronous data unit
advanced speech recognition
A speech recognition ability that allows the system to understand WholeWord and
FlexWord™ inputs from callers.
affiliate
A business organization that Lucent controls or with which Lucent is in partnership.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 816

Glossary

AGL

AGL
application generation language
alarm relay unit
A unit used in central office telecommunication arrangements that transmits warning
indicators from telephone communications equipment (such as an Intuity
CONVERSANT system) to audio.
ALERT
System alerter process
alerter
A system process that responds to patterns of events logged by the “logdaemon”
process.
American Standard Code for Information Interchange
A standard code for data representation that represents alphanumeric characters as
binary numbers. The code includes 128 upper- and lowercase letters, numerals, and
special characters. Each alphanumeric and special character has an ASCII code
(binary) equivalent that is 1 byte long.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 817

Glossary

analog

analog
An analog signal, such as voice or music, that varies in a continuous manner. An
analog signal may be contrasted with a digital signal, which represents only discrete
states.
ANI
automatic number identification
announcement
A message the system plays to the caller to provide information. The caller is not
asked to give a response. Compare to “prompt.”
API
Application programming interface
application
The automated transaction (interactions) among the caller, the voice response
system, and any databases or host computers required for your business. See also
“application script.”

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 818

Glossary

application administration

application administration
The component of the Intuity CONVERSANT system that provides access to the
applications currently available on your system and helps you to manage and
administer them.
application installation
A two-step process in which the Intuity CONVERSANT system invokes the TSM
script assembler for the specific application name and moves files to the appropriate
directories.
application script
The computer program that controls the application (the transaction between the
caller and the system). The Intuity CONVERSANT system provides several methods
for creating application scripts, including Voice@Work, Script Builder, Transaction
Assembler Script (TAS) language, and the Intuity Response Application
Programming Interface (IRAPI).
application verification
A process in which the Intuity CONVERSANT system verifies that all the
components needed by an application are complete.
ASCII
American Standard Code for Information Interchange
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 819

Glossary

ASI

ASI
analog switch integration
ASR
advanced speech recognition
asynchronous communication
A method of data transmission in which bits or characters are sent at irregular
intervals and spaced by start and stop bits rather than by time. Compare to
“synchronous communication.”
asynchronous data unit
An electronic communications device that allows computer systems to communicate
over asynchronous lines more than 50 feet (15 m) in length.
automatic call distributor
That part of a telephone system that recognizes and answers incoming calls and
completes these calls based on a set of instructions contained in a database. The
ACD can send the call to an operator or group of operators as soon as the operator
has completed a previous call or after the system has played a message to the
caller.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 820

Glossary

automatic number identification

automatic number identification
A method of identifying the calling party by automatically receiving a string of digits
that identifies the calling station of a particular customer.
AYC5B
The IVP6 Tip/Ring (analog) circuit card.
AYC10
The IVC6 Tip/Ring (analog) circuit card.
AYC21
The E1/T1 (digital) circuit card.
AYC30
The NGTR (analog) circuit card.
AYC43
The speech and signal processor (SSP) circuit card.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 821

Glossary

B

back up

back up
The preservation of the information in a file in a different location, so that the data is
not lost in the event of hardware or system failure.
backing up an application
Using a utility that makes an archive copy of a completed application or an interim
copy of an application in progress. The back-up copy can be restored to the system
if the on-line version is damaged, or if you make revisions and want to go back to the
previous version.
barge-in
A capability provided by WholeWord speech recognition and Dial Pulse Recognition
(DPR) that allows callers to speak or enter their responses during the prompt and
have those responses recognized (similar to the Speak with Interrupt capability). See
also “echo cancellation.”
batch file
A file containing one or more lines, each of which is a command executable by the
UNIX shell.
BB
bulletin board

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 822

Glossary

binary synchronous communications

binary synchronous communications
A character-oriented synchronous link protocol.
blind transfer protocol
A protocol in which a call is completed as soon as the extension is dialed, without
having to wait to see if the telephone is busy or if the caller answered.
bps
bits per second
BRDG
call bridging process
bridging
The process of connecting one telephone network connection to another over the
Intuity CONVERSANT system TDM bus. Bridging decreases the processing load on
the system since an active bridge does not require speech processing, database
access, host activity, etc., for the transaction.
BSC
binary synchronous communications

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 823

Glossary

bundle

bundle
In the context of the Enhanced File Transfer package, this term is used to denote a
single file, a group of files (package), or a combination of both.
byte
A unit of storage in the computer. On many systems, a byte is 8 bits (binary digits),
which is the equivalent of one character of text.

C

call classification analysis
A process that enables application designers to use information available within the
system to classify the disposition of originated and transferred calls. Intelligent CCA
is provided with the system. Full CCA is an optional feature package.
call data event
A parameter that specifies a list of variables that are appended to a call data record
at the end of each call.
call data handler process
A software process that accumulates generic call statistics and application events.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 824

Glossary

called party number

called party number
The number dialed by the person making a telephone call. Telephone switching
equipment can use this number to selectively route an incoming call to a particular
department or agent.
caller
The party who calls for a service, gets connected to the Intuity CONVERSANT
system, and interacts with it. As the Intuity CONVERSANT system can also make
outbound calls for service, the caller can also be the person who responds to those
outbound calls.
call flow
See ”transaction.”
call progress tones
Standard telephony sounds that indicate the status of the call. These sounds include
busy, fast busy, ringback, reorder, etc.
card cage
An area within a Intuity CONVERSANT system platform that contains and secures
all of the standard and optional circuit cards used in the system.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 825

Glossary

cartridge tape drive

cartridge tape drive
A high-capacity data storage/retrieval device that can be used to transfer large
amounts of information onto high-density magnetic cartridge tape based on a
predetermined format. This tape can be removed from the system and stored as a
backup, or used on another system.
CAS
channel associated signalling
caution
An admonishment or advisory statement used in Intuity CONVERSANT system
documentation to alert the user to the possibility of a service interruption or a loss of
data.
CCA
call classification analysis
CDH
call data handler process
CELP
code excited linear prediction

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 826

Glossary

central office

central office
An office or location in which large telecommunication devices such as telephone
switches and network access facilities are maintained. These locations follow strict
installation and operation requirements.
central processing unit
See “processor.”
CGEN
Voice system general message class
channel
See “port.”
channel associated signaling
A type of signaling that can be used on E1 circuit cards. It occurs on channel 16.
CICS
Customer Information Control System

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 827

Glossary

circuit card upgrade

circuit card upgrade
A new circuit card that replaces an existing card in the platform. Usually the
replacement is an updated version of the original circuit card to replace technology
made obsolete by industry trends or a new system release.
cluster controller
A bisynchronous interface that provides a means of handling remote communication
processing.
CMS
Call Management System
CO
central office
code excited linear prediction
A means of encoding analog voice signals into digital signals that provides excellent
quality with use of minimum disk space.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 828

Glossary

command

command
An instruction or request the user issues to the system software to make the system
perform a particular function. An entire command consists of the command name
and options.
configuration
The arrangement of the software and hardware of a computer system or network.
The Intuity CONVERSANT system configuration includes either a standard or
custom processor, peripheral equipment (for example, printers and modems), and
software applications. Configuration also refers to the way the switch network is set
up; that is, the types of products that are in the network and how those products
communicate.
configuration management
The component of the system that allows you to manage the current configuration of
voice channels, host sessions, and database connections, assign scripts to run on
specific voice channels or host sessions, assign functionality to SSP and E1/T1
circuit cards, and perform various maintenance functions.
connect and disconnect (C and D) tones
DTMF tones that inform the system when the attendant has been connected (C) and
when the caller has been disconnected (D).

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 829

Glossary

connected digits

connected digits
A sequence of digits that the system can process as a group, rather than requiring
the caller to enter the digits one at a time.
Converse Data Return (conv_data)
A Script Builder action that supports the DEFINITY® call vectoring (routing) feature
by enabling the switch to retain control of vector processing in the system
environment. It supports the DEFINITY “converse” vector command to establish a
two-way routing mechanism between the switch and the system to facilitate data
passing and return.
controller circuit card
A circuit card used on a computer system that controls its basic functionality and
makes the system operational. These circuit cards are used to control magnetic
peripherals, video monitors, and basic system communications.
copying an application
A utility in which information from a source application is directed into the destination
application.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 830

Glossary

coresidency

coresidency
The ability of two products or services to operate and interact with each other on a
single hardware platform. An example of this is the use of an Intuity CONVERSANT
system along with a package from a different vendor on the same system platform.
CPE
customer provided equipment or customer premise equipment
CPN
called party number
CPT
call progress tones
CPU
central processing unit
crash
An interactive utility for examining the operating system core and for determining if
system parameters are being exceeded.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 831

Glossary

CSU

CSU
channel service unit
custom speech
Unique words or phrases to be used in Intuity CONVERSANT system voice prompts
that Lucent Technologies custom records on a per-customer basis.
custom vocabulary
A specialized package of unique words or phrases created on a per-customer basis
and used by WholeWord or FlexWord speech recognition.
Customer Information Control System
Part of the operating system that manages resources for running applications (for
example, IND$FILE). Note that TSO and CMS provide analogous functionality in
other host environments.
CVS
converse vector step

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 832

Glossary

D

danger

danger
An admonishment or advisory statement used in Intuity CONVERSANT system
documentation to alert the user to the possibility of personal injury or death.
data interface process
A software process that communicates with Script Builder applications.
database
A structured set of files, records, or tables.
database field
A field used to extract values from a local database and form the structure upon
which a database is built.
database record
The information in a database for a person, product, event, etc. The database record
is made up of individual fields for each information item.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 833

Glossary

database table

database table
A structure, made up of columns and rows, that holds information in a database.
Database tables provide a means of storing information that changes too often to
“hard-code,” or store permanently, in the transaction outline.
dB
decibel
DB
database
DBC
database checking process
DBMS
database management system
DC
direct current
DCE
data communications equipment
Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 834

Glossary

DCP

DCP
digital communications protocol
debug
The process of locating and correcting errors in computer programs; also referred to
as “troubleshooting.”
default
The way a computer performs a task in the absence of other instructions.
default owner
The owner of a channel when no process takes ownership of that channel. The
default owner holds all idle, in-service channels. In terms of the IRAPI, this is
typically the Application Dispatch process.
diagnose
The process of performing diagnostics on a bus or on Tip/Ring, E1/T1, or SSP circuit
cards.
dial ahead
The ability to collect and process touch-tone inputs in sequence, even when they are
received before the prompts.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 835

Glossary

dial pulse recognition

dial pulse recognition
A method of recognizing caller pulse inputs from a rotary telephone.
dialed number identification service
A service that allows incoming calls to contain information about the telephone
number for which it is destined.
dial through
A capability provided by touch-tone and dial pulse recognition that allows callers to
enter their responses during the prompt and have those responses recognized
(similar to the Speak with Interrupt capability). See also “barge-in” and “echo
cancellation”.
dictionary
A reference book containing an alphabetical list of words, with information given for
each word including meaning, pronunciation, and etymology.
DIMM
dual in-line memory module
DIO
disk input and output process

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 836

Glossary

DIP

DIP
data interface process
directory
A type of file used to group and organize other files or directories.
display errdata
A command that displays system errors sent to the logger.
DMA
direct memory address
DNIS
dialed number identification service
DPR
dial pulse recognition
DSP
digital signal processor

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 837

Glossary

DTE

DTE
data terminal equipment
DTMF
dual tone multi-frequency
DTR
data terminal ready
dual 3270 links
A feature that provides an additional physical unit (PU) for a cost-effective means of
connecting to two host computers. The customer can connect a system to two
separate FEPs or to a single FEP shared by one or more host computers. Each link
supports a maximum of 32 LUs.
dual tone multi-frequency
A touch-tone sound that is an audio signal including two different frequencies. DTMF
feedback is the process of the “switch” providing this information to the system.
DTMF muting is the process of ignoring these tones (which might be simulated by
human speech) when they are not needed for the application.

Intuity™ CONVERSANT® System Version 7.0 Application Development with Script
Builder 585-313-206

Issue 2 January 2000 838

Glossary

dump space

dump space
An area of the disk that is fixed in size and should equal the amount of RAM on the
system. The operating sy