Avaya VTCPD Features User Manual

Avaya VTCPD Features User Manual (Software Release 2.1 on Avaya MPS 2.1)
Avaya Business Communications Manager Release 6.0
Document Status: Standard Document Number: P0602483 Document Version: 03.41 Date: June 2010
Notices
While reasonable efforts have been made to ensure that the information in this document is complete and accurate at the time of printing, Avaya assumes no liability for any errors. Avaya reserves the right to make changes and corrections to the information in this document without the obligation to notify any person or organization of such changes.
Documentation disclaimer
Avaya shall not be responsible for any modifications, additions, or deletions to the original published version of this documentation unless such modifications, additions, or deletions were performed by Avaya. End User agree to indemnify and hold harmless Avaya, Avaya’s agents, servants and employees against all claims, lawsuits, demands and judgments arising out of, or in connection with, subsequent modifications, additions or deletions to this documentation, to the extent made by End User.
Link disclaimer
Avaya is not responsible for the contents or reliability of any linked Web sites referenced within this site or documentation(s) provided by Avaya. Avaya is not responsible for the accuracy of any information, statement or content provided on these sites and does not necessarily endorse the products, services, or information described or offered within them. Avaya does not guarantee that these links will work all the time and has no control over the availability of the linked pages.
Warranty
Avaya provides a limited warranty on this product. Refer to your sales agreement to establish the terms of the limited warranty. In addition, Avaya’s standard warranty language, as well as information regarding support for this product, while under warranty, is available to Avaya customers and other parties through the Avaya Support Web site: http://www.avaya.com/support
Please note that if you acquired the product from an authorized reseller, the warranty is provided to you by said reseller and not by Avaya.
Licenses
THE SOFTWARE LICENSE TERMS AVAILABLE ON THE AVAYA WEBSITE, HTTP://SUPPORT.AVAYA.COM/LICENSEINFO/ ARE APPLICABLE TO ANYONE WHO DOWNLOADS, USES AND/OR INSTALLS AVAYA SOFTWARE, PURCHASED FROM AVAYA INC., ANY AVAYA AFFILIATE, OR AN AUTHORIZED AVAYA RESELLER (AS APPLICABLE) UNDER A COMMERCIAL AGREEMENT WITH AVAYA OR AN AUTHORIZED AVAYA RESELLER. UNLESS OTHERWISE AGREED TO BY AVAYA IN WRITING, AVAYA DOES NOT EXTEND THIS LICENSE IF THE SOFTWARE WAS OBTAINED FROM ANYONE OTHER THAN AVAYA, AN AVAYA AFFILIATE OR AN AVAYA AUTHORIZED RESELLER, AND AVAYA RESERVES THE RIGHT TO T AKE LEGAL ACTION AGAINST YOU AND ANYONE ELSE USING OR SELLING THE SOFTWARE WITHOUT A LICENSE. BY INSTALLING, DOWNLOADING OR USING THE SOFTWARE, OR AUTHORIZING OTHERS TO DO SO, YOU, ON BEHALF OF YOURSELF AND THE ENTITY FOR WHOM YOU ARE INSTALLING, DOWNLOADING OR USING THE SOFTWARE (HEREINAFTER REFERRED TO INTERCHANGEABLY AS "YOU" AND "END USER"), AGREE TO THESE TERMS AND CONDITIONS AND CREATE A BINDING CONTRACT BETWEEN YOU AND AVAYA INC. OR THE APPLICABLE AVA YA AFFILIATE ("AVAYA").
Copyright
Except where expressly stated otherwise, no use should be made of the Documentation(s) and Pr oduct( s) p rovided by Avaya. All content in this documentation(s) and the product(s) pr ov id ed by Avaya including the selection, arrangement and design of the content is owned either by Avaya or its licensors and is protected b y copyright and other intellectual property laws including the sui generis rights relating to the protection of databases. You may not modify, copy, reproduce, republish, upload, post, transmit or distribute in any way any content, in whole or in part, including any code and software. Unauthorized reproduction, transmission, dissemination, storage, and or use without the express written consent of Avaya can be a criminal, as well as a civil offense under the applicable law.
Third Party Components
Certain software programs or portions thereof included in the Product may contain software distributed under third party agreements ("Third Party Components"), which may contain terms that expand or limit rights to use certain portions of the Product ("Third Party Terms" ). Information regarding distributed Linux OS source code (for those Products that have distributed the Linux OS source code), and identifying the copyright holders of the Third Party Components and the Third Party Terms that apply to them is available on the Avaya Support Web site: http://support.avaya.com/Copyright.
Trademarks
The trademarks, logos and service marks ("Marks") displayed in this site, the documentation(s) and product(s) pr ovided by Avaya are the registered or unregistered Marks of Avaya, its affiliates, or other third parties. Users are not permitted to use such Marks without prior written consent from A vaya or such third party which may own the Mark. Nothing contained in this site, the documentation(s) and product(s) should be construed as granting, by implication, estoppel, or otherwise, any license or right in and to the Marks without the express written permission of Avaya or the applicable third party. Avaya is a registered trademark of Avaya Inc. All non-Avaya
trademarks are the property of their respective owners.
Downloading documents
For the most current versions of documentation, see the Avaya Support. Web site: http://www.avaya.com/support
Contact Avaya Support
Avaya provides a telephone number for you to use to report problems or to ask questions about your product. The suppo rt telephone number is 1-800-242-2121 in the United States. For additional support telephone numbers, see the Avaya Web site: http://
www.avaya.com/support

Table of contents

Chapter 1 — Preface 7
Chapter 2 — Avaya VTCPD Overview 13
Scope. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Intended Audience . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
How to Use This Manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Organization of This Manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Conventions Used in This Manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Solaris and Windows 2000 Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Trademark Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Host Communications Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
MPS Software Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Avaya VTCPD Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Connection Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Single Host Connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
One Connection Per Line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Multiple Hosts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Client and Server Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Application-Defined Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
UDP Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Chapter 3 — Avaya VTCPD Configuration and Options 21
Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
The services File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Avaya VTCPD Daemon Names. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Avaya VTCPD Port Assignments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Options Overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Connection Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Host Connection Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Client Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Server Mode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Single Host Connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Multiple Hosts Connections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
One Connection Per Line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Multiple Avaya VTCPD Daemons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Application-Defined Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Dynamic Connections For Each Line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
UDP Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Attaching to VMST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Application Connection Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Application-Host Options. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Monitoring Host Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Backup LAN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Time-Outs 39
P0602483 Ver: 03.41 Page 3
VTCPD Features User Manual
VTCPD Features User Manual
Chapter 4 — VTCPD Messages 45
Message Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Message Identification (ID) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Format of Outgoing and Incoming Messages. . . . . . . . . . . . . . . . . . . . . . . 52
Message Routing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
ISSUE-SEND-RECEIVE (ISR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
Reserving a Slot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Queuing Requests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Clearing the Connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
Changing Data Length . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
Application's Connection Choice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
Replies Routing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
Asynchronous Replies and Reply Notification. . . . . . . . . . . . . . . . . . . . . . 61
Unidentified Host Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Administrative Line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
ISSUE-RECEIVE-SEND (IRS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Registering the ID. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Inverted Mode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Application Connection Choice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
Choosing the Daemon. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Releasing Connection Slot and Handling Exceptions . . . . . . . . . . . . . . . . 69
Chapter 5 — VTCPD Application Programming 71
Communicating With the Host . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
Soliciting Host Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Host Driven Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
Receiving Data From a Known ID. . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Receiving the Next Available Host Message. . . . . . . . . . . . . . . . . . . . 78
Establishing or Changing the Host Specifications . . . . . . . . . . . . . . . . . . . . . . 79
Specifying the Host Connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
Specifying the Connection From the Application . . . . . . . . . . . . . . . . . . . 81
Allowing VTCPD to Specify the Connection. . . . . . . . . . . . . . . . . . . . . . . 82
Sending Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
Routing Replies in a Host Driven Application . . . . . . . . . . . . . . . . . . . . . . 85
Variable Length Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
Receiving Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
Receiving Message Headers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
Host Responses From Any Connection . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
Asynchronous Replies and Reply Notification. . . . . . . . . . . . . . . . . . . . . . 89
Retrieving Unidentified Host Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
Configurations That Require Multiple VTCPD . . . . . . . . . . . . . . . . . . . . . . . . 91
Specifying Which VTCPD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
Using the VTCPD Port Number. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
Freeing the Host Connection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
VTCPD Message Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
Setting Resource Timers from an Application . . . . . . . . . . . . . . . . . . . . . . 97
Handling Resource Timeouts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
Page 4 P0602483 Ver: 03.41
Chapter 6 — VTCPD Debugging and Maintenance 101
Debugging. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
Displaying Debugging Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
Host Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
Fault Tolerance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
VTCPD Status and Exception Conditions Reference. . . . . . . . . . . . . . . . . . . . 106
VTCPD Troubleshooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
Typical Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
Questions and Answers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
Chapter 7 — Index 111
P0602483 Ver: 03.41 Page 5
VTCPD Features User Manual
VTCPD Features User Manual
This page has been intentionally left blank.
Page 6 P0602483 Ver: 03.41

Preface

VTCPD Features User Manual
VTCPD Features User Manual

Scope

The Avaya Voice Transmission Control Protocol Daemon (Avaya VTCPD) Features User Manual documents the use of Avaya VTCPD. This manual provides background information and details about Avaya VTCPD configuration parameters and commands. This manual does not explain general telephony or host computer communications concepts.
See the Avaya Media Processing Server Series COMMGR Reference Manual for details about general host-related configuration and operations commands. See the Avaya PeriProducer Reference Manual for details about application programming. For a list of user manuals use the Avaya Reference Material link in PeriDoc.

Intended Audience

This manual is intended for the staff members who configure and program the Avaya VTCPD. The reader should be familiar with telecommunications and computer equipment, their functions and the associated terminology. In addition, the reader must be familiar with the characteristics of the specific installation, including onsite power systems, computers, peripherals, and telephony components.
This manual assumes that the user has completed an onsite system familiarization training program conducted as part of the initial system installation. Basic knowledge of the Solaris or Windows 2000 operating system should be familiar with other site-specific operating procedures relating to the MPS that are due to specific application functions performed by the MPS and with any other equipment to which the MPS may be connected.

How to Use This Manual

This manual uses many standard terms relating to computer system and software application functions. However, for terminology that can only be explained in the context of the MPS system refer to the Glossary of Avaya Media Processing Server Series Terminology for specific term definitions.
Initially, read this manual at least once, from start to finish. Later, use the Table of Contents to locate topics of interest for reference and review.
If you are reading this document online, use the cross-reference links (shown in blue) to quickly locate related topics. <L with your cursor over the cross-reference link. Click on any point in a Table of Contents entry to move to that topic. Click on the page number of any Index entry to access that topic page. For additional related information, use the Reference Material link in PeriDoc. To familiarize yourself with various specialized textual references within the manual, see Conventions Used in This Manual on page 10.
(s) is also assumed. In addition, they
EFT> click once with your mouse while positioned
Periphonics is now part of Avaya. The name Periphonics, and variations thereof, may appear in this manual where it is refers specifically to certain product names and commands, for example, a PeriProducer application, the PERImps package, the
Page 8 P0602483 Ver: 03.41
perirev command.

Organization of This Manual

The following briefly outlines the structure of this manual:
Chapter 1—Avaya VTCPD Overview
Introduces the Avaya VTCPD host daemon as a configurable host resource that allows the MPS to communicate with multiple external hosts.
Chapter 2—Avaya VTCPD Configuration and Options
Details the commands and parameter settings for configuring the system for Avaya VTCPD operations.
Chapter 3—Avaya VTCPD Messages
Details the message format and parameter settings.
Chapter 4—Avaya VTCPD Application Programming
Explains the basic concepts related to application-host interaction. The various message command tags and their attributes are documented.
Preface
Chapter 5—Avaya VTCPD Debugging and Maintenance
Provides Debugging and Maintenance information.
P0602483 Ver: 03.41 Page 9
VTCPD Features User Manual
VTCPD Features User Manual

Conventions Used in This Manual

This manual uses different fonts and symbols to differentiate between document elements and types of information. These conventions are summarized in the following table.
Conventions Used in This Manual
Notation Description
Normal text
important term
system command
command, condition and alarm
file name / directory
on-screen field
<KEY NAME>
Book Reference
cross reference
Normal text font is used for most of the document.
The Italics font is used to introduce new terms, to highlight meaningful words or phrases, or to distinguish specific terms from nearby text.
This font indicates a system command and/or its arguments. Such keywords are to be entered exactly as shown (i.e., users are not to fill in their own values).
Command, Condition and Alarm references appear on the screen in bold text and reference the Command Reference Manual, the Condition Reference Manual, or the Alarm Reference Manual. Refer to these documents for detailed information about Commands, Conditions, and Alarms.
This font is used for highlighting the names of disk directories, files, and extensions for file names. It is also used to show displays on text-based screens (e.g., to show the contents of a file.)
This font is used for field labels, on-screen menu buttons, and action buttons.
A term that appears within angled brackets denotes a terminal keyboard key, a telephone keypad button, or a system mouse button.
This font indicates the names of other publications referenced within the document.
A cross reference appears on the screen in blue text. Click on the cross reference to access the referenced location. A cross reference that refers to a section name accesses the first page of that section.
The Note icon identifies notes, important facts, and other keys to understanding.
The Caution icon identifies procedures or events that require special attention. The icon indicates a warning that serious problems may arise if the stated instructions are improperly followed.
PERIPRO
The flying Window icon identifies procedures or events that apply to the Windows 2000 operating system only.
The Solaris icon identifies procedures or events that apply to the Solaris operating system
2
only.
This font indicates PeriProducer resource blocks.
1
RESOURCE BLOCK
1. Windows 2000 and the flying Window logo are trademarks or registered trademarks of the Microsoft Corp.
2. Solaris is a trademark or registered trademark of Sun Microsystems, Inc.
Page 10 P0602483 Ver: 03.41

Solaris and Windows 2000 Conventions

This manual depicts examples (command line syntax, configuration files, and screen shots) in Solaris format. In certain instances Windows 2000 specific commands, procedures, or screen shots are shown where required. The following table lists examples of general operating system conventions to keep in mind when using this manual with either the Solaris or Windows operating system.
Solaris Windows 2000
Environment $MPSHOME %MPSHOME%
Paths $MPSHOME/common/etc %MPSHOME%\common\etc
Command <command> & start /b <command>

Trademark Conventions

The following trademark information is presented here and applies throughout for third party products discussed within this manual. Trademarking information is not repeated hereafter.
Preface
Solaris is a trademark or registered trademark of Sun Microsystems, Inc. in the United States and other countries.
Microsoft, Windows, Windows 2000, Internet Explorer, and the Flying Windows logo are either trademarks or registered trademarks of Microsoft Corporation.
Netscape® and the Netscape N® and Ship's Wheel® logos are registered trademarks of Netscape Communications Corporation in the U.S. and other countries. Netscape Navigator is also a trademark of Netscape Communications Corporation and may be registered outside the U.S.
P0602483 Ver: 03.41 Page 11
VTCPD Features User Manual
VTCPD Features User Manual
This page has been intentionally left blank.
Page 12 P0602483 Ver: 03.41
Avaya VTCPD Over-
view
This chapter covers:
1. Host Communications Overview
2. Avaya MPS Software Architecture
3. Avaya VTCPD Features
4. Connection Types
VTCPD Features User Manual
VTCPD Features User Manual

Host Communications Overview

The Avaya Media Processing Server (Avaya MPS) Series product family is an Interactive Voice Response (IVR) system enhanced with multimedia and advanced telephone switching functions. The MPS can function as a standalone services system, with its own transaction processing and storage facilities, or it can be integrated into service-provider environments having their own central computer systems.
The Avaya VTCPD is an MPS software process used for integrating the system into a
Transmission Control Protocol/Internet Protocol (TCP/IP) or User Datagram Protocol (UDP) network. Avaya VTCPD can accommodate a wide variety of
applications and network configurations.
Avaya VTCPD is an alternative to using the MPS system’s built-in host communications and protocol management facilities. The applications using Avaya VTCPD see it as a resource and access the Avaya VTCPD using the PeriProducer resource block. MPS applications that use Avaya VTCPD have to be developed specially for that purpose.
The MPS is the telephony services environment link between network features and the calling community. External systems connected to the MPS via the network are referred to as host computers. Generally, hosts are classified as mini, mainframe, and workstation. They provide database and transaction processing functions, which are integrated with the MPS voice and media features.
Caller
Before the advent of IVR systems, computer-based transactions involved having a live operator enter data and receive information through a terminal connected to a central computer system. IVR systems have automated this type of transaction.
Telephone
8
network
Operator
Basic Transaction Processing Environment
Protocol-based
interaction
Computer network
Host
Page 14 P0602483 Ver: 03.41
Avaya VTCPD Overview
The applications control the actions of the MPS. They contain program instructions that tell the MPS how to perform functions, such as receiving caller input, providing voice output, and accessing the host. MPS applications are created using PeriProducer, which is a GUI-type editor that allows visual sequencing of application instructions. (See the PeriProducer User’s Guide.)
Applications are directly associated with a specific MPS telephone line, or set of telephone lines. When a phone line is called, the application associated with that phone line activates and interacts with the caller and host based on the programmed instructions.
The application uses the Avaya VTCPD interface to provide the host with a communication format that matches the host’s requirements. Read and write operations are performed between the application and the host, based on the characteristics of that particular host communications protocol.
A protocol is a standardized format for data transmitted between computer systems, which consists of command codes, data fields, and delimiters. that both computers can recognize. To send and receive data to/from a host using Avaya VTCPD, applications must be designed to format and decode messages according the protocol expected by the host.
Telephone
Network
8
An application with a Avaya VTCPD interface can communicate with several hosts, provided the hosts are using the same protocol. Applications can change the host session (switching from one host to the other) as needed.
Application
VTCPD
MPS
Protocol-based
interaction
Computer network
Host
Caller
Basic MPS VTCPD-Based Network
P0602483 Ver: 03.41 Page 15
VTCPD Features User Manual
VTCPD Features User Manual

MPS Software Architecture

The MPS Communications Software Subsystem is the MPS software specifically dedicated to host interaction. It resides in the MPS’ Voice Operating Software (VOS), and comprises the Communications Manager (COMMGR) process and protocol layer.
The COMMGR provides a protocol-independent interface between MPS applications and the protocol layer. The COMMGR also performs host-related phone line configuration, application-to-host session mapping, and host input/output message processing. Message interaction at the protocol level is handled by processes in the protocol layer. Together, the COMMGR and protocol layer manage most of the lower­level system functions related to host communications, and applications need only issue high-level send and receive commands to interact with a host.
Avaya VTCPD is an alternative to using the MPS Communications Software Subsystem (COMMGR process and the protocol layer). Avaya VTCPD is intended for host environments that have existing TCP/IP or UDP software infrastructures that implement unique variations of standard protocols. MPS applications using Avaya VTCPD must be specifically coded to interact with the host(s) at the protocol level.
MPS
Solaris / Windows
ASE / VOS
VMST
VAM P
MPS Communications Software Subsystem
COMMGR
Protocol
layer
VENGINE(s)
Application(s)
VTCPD
TCP/IP
Host
VSH
System Console
TCP/IP
Host
MPS Communications Software Architecture
Page 16 P0602483 Ver: 03.41
Avaya VTCPD Overview
Avaya VTCPD and the MPS Communications Subsystem are separate software entities. At any one time, an application uses one or the other to interact with a host. An MPS can be configured to use both software systems, and applications can switch back and forth as needed. For example, the MPS can be set up to use Avaya VTCPD to interact with one host and the communications subsystem to interact with another. (For additional information, see Connection Types on page 19.)
This manual documents only the Avaya VTCPD host interface. For more information about TCP/IP links, host communications, and protocols, refer to the Avaya Media Processing Server Series COMMGR Reference Manual.
System processes that are important from a host communications perspective are described below.
MPS System Software
VSH
ASE
VOS
Vshell is the command interface for MPS configuration and operations. Configuration and status commands can be entered from the VSH tool as needed. VSH also receives status information from the various system processes and displays messages on the console as appropriate.
The Application Service Environment software is dedicated to providing the data and services requested by applications. The ASE exists on a separate workstation, referred to as the applications processor. The workstation can be either an open-systems Solaris or Windows 2000 implementation.
applications
Interactive Voice Response or multimedia script created with PeriProducer. An application runs on a system phone line. Multiple instances of the same application can be assigned to different lines.
VENGINE
Software process that executes an application. A single VENGINE process is required for each application telephone line.
VMST
The VENGINE Message Server provides a message funnel between the ASE and VOS processes. On a node that contains multiple MPS systems, VMST provides connectivity between the application processor and each MPS. One VMST is required for each MPS.
VAMP
The Voice Application Management Process provides an interface between the PeriProducer 3.0 voice applications and the VOS subsystem.
The Voice Operating Software is the set of processes that provide the low-level system functions in the MPS. These functions, including telephony and host I/O, are common to most types of applications.
COMMGR
The Communications Manager provides a generic application interface for host communications services. A single COMMGR is required for each MPS in the network.
protocol layer
One or more software processes that implement the particular communications protocol. The protocol layer links the COMMGR with the host network.
P0602483 Ver: 03.41 Page 17
VTCPD Features User Manual
VTCPD Features User Manual

Avaya VTCPD Features

The Avaya VTCPD process facilitates communication between application programs (PeriProducer) and one or more external hosts.
The PeriProducer applications see the Avaya VTCPD daemon as a resource, with a configurable name. The applications use the PeriProducer resource blocks to provide the GET, FREE, SEND RESOURCE, and RECEIVE RESOURCE functions. The following table correlates specific VRAM code to PeriProducer blocks:
Table 1: VRAM Commands and PeriProducer Resource Blocks
VRAM Command PeriProducer Resource Block
ISSUE GET
ISSUE SET
ISSUE FREE
SEND RESOURCE
RECEIVE RESOURCE
GET
CONTROL
FREE
SEND
RECEIVE
The external hosts see the Avaya VTCPD daemon as a configurable host resource and communicate through the daemon’s TCP/IP or UDP connections.
The Avaya VTCPD daemon can connect with one or more external hosts and accommodates a wide variety of application requirements and host configurations. The daemon can also be used to monitor the elapsed time on any outstanding request and also provides a timing utility for applications.
One limitation is that a Avaya VTCPD daemon can run only one protocol at time. It can connect to several hosts using the same protocol, but if a new protocol is required another Avaya VTCPD process must be started for the new protocol.
Configurations Include:
Connection to multiple VMST processes
One or more connections to a single host
Multiple connections to multiple hosts
Connections to (yet-to-be-specified) hosts and port numbers
Multiple Avaya VTCPD daemons with one or more hosts (one connection per line)
Avaya VTCPD can also be configured to automatically switch to a secondary host, in the event of a primary host failure.
Page 18 P0602483 Ver: 03.41

Connection Types

Avaya VTCPD Overview
This document only deals with the Avaya VTCPD daemon process. For information about application communication with TCP/IP hosts, refer to the Avaya Media Processing Server Series Application Programming Reference Guide.
The Avaya VTCPD process provides a variety of connection types to support diverse application requirements and host configurations. Avaya VTCPD can also be configured to automatically switch to a secondary host, in the event of a primary host failure.
The Avaya VTCPD daemon can run only one protocol at time. It can connect to several hosts using the same protocol, but if other protocols are required, additional Avaya VTCPD process must be started for each protocol.

Single Host Connection

The single host network is Avaya VTCPD basic configuration. The process connects to a single host using the host name and TCP/IP port number (specified as arguments on the command line). If a host name is not specified, Avaya VTCPD is configured as a server, in which case it accepts connections on the specified port.
An application uses the SEND function (PeriProducer resource block) to send a message to the host and it issues the RECEIVE function (PeriProducer resource block) when it expects a response.

One Connection Per Line

Avaya VTCPD can create as many connections to a host as there are lines available. In this type of configuration, each application has its own connection to the host. Avaya VTCPD can also be started with the number of links equal to the number of phone lines, without specifying host names and port numbers. This allows Avaya VTCPD to open a connection for each new call, as needed.

Multiple Hosts

Multiple Avaya VTCPD daemons can connect to multiple hosts, each handling different functions and protocols. Applications can switch the host sessions as needed.

Client and Server Modes

The Avaya VTCPD daemon is capable of running in both client and server modes. In client mode, Avaya VTCPD connects to a host as a client process. In the server mode, the Avaya VTCPD daemon accepts connections on the specified TCP/IP port. In a multiple-host environment, for different hosts, the daemon supports both client and server modes simultaneously.
P0602483 Ver: 03.41 Page 19
VTCPD Features User Manual
VTCPD Features User Manual

Application-Defined Mode

When all or some host specifications are unavailable, the Avaya VTCPD daemon can be started using the Application-Defined mode. The links will remain unavailable for applications until port and host information are associated with the links (host information is needed only in client mode). However, the administrative applications can dynamically assign or change host specifications. The specific links are differentiated from other host links by the number (any additional host or port information is optional). The host name can be either the name or IP address.

UDP Mode

All Avaya VTCPD modes (client, server) also support User Datagram Protocol (UDP)
-type host connections. The host must extract the Avaya VTCPD address and port
number from the UDP message to enable it to reply to applications.
Page 20 P0602483 Ver: 03.41
Avaya VTCPD Con-
figuration and
Options
This chapter covers:
1. Configuration
2. Options Overview
3. Connection Options
4. Application-Host Options
VTCPD Features User Manual
VTCPD Features User Manual

Configuration

The services File

The services file contains configuration information required by Avaya VTCPD and must be set up accordingly.
Information required in the services file includes:
Avaya VTCPD
Port assignments used by Avaya VTCPD
The services file contains a list of processes (i.e., the services), some of which can be accessed by call processing or by using administrative applications. This file defines the port and protocol associated with each service and is used by the Application Services Environment (ASE) software process group (see
Communicating With the Host on page 72.) For Windows systems, the services
file is stored in %ASEHOME%\etc. In Solaris systems, the file is stored in the $ASEHOME/etc file. Avaya VTCPD uses the services file definitions for the Avaya VTCPD Daemon Names, the Avaya VTCPD Port Assignments and the VMST Port Assignments.
daemon names

Avaya VTCPD Daemon Names

If more than one Avaya VTCPD daemon is running simultaneously, then each Avaya VTCPD must have a unique name. The unique Avaya VTCPD names must be defined in the services file before they can be used by the Avaya VTCPD command line
option -n (see Specifying Which VTCPD on page 91.)
In the example services file (page 23) vtcpd and newhost are VTCPD daemon names.

Avaya VTCPD Port Assignments

In a typical configuration, all Avaya VTCPD daemons must have different names and be distinguished by the unique port numbers. In the example services file (page
23) vtcpd and newhost are Avaya VTCPD daemon names.
services File Field Definitions
Variable Description
Service Specifies the process name.
Port(s) Identifies the system ports from which each process is accessed.
The port numbers represent internal handles to the VMST processes (i.e., they are not TCP/IP ports). The numbers must not exceed 254, must be unique in this file. If this file is changed, all instances of VMST and services must be restarted.
Page 22 P0602483 Ver: 03.41
Avaya VTCPD Configuration and Options
services File Field Definitions
Variable Description
Protocol Defines the protocol used when accessing each process.
Example: services File
# Service Port(s) Protocol ############################## vmst 1-10 htmls 12-15 linfo periq 16-17 linfo . . . vtcpd 132-145 linfo newhost 150-151 linfo . . .
P0602483 Ver: 03.41 Page 23
VTCPD Features User Manual
VTCPD Features User Manual

Options Overview

The Avaya VTCPD options support a wide range of application requirements and host configurations. The options list provides a quick reference to the available options and the options examples provide a quick overview of how some of the options can be used. The Connection Options on page 26 and Application-Host Options on page 36 sections provide in-depth discussions of those option types. These Avaya VTCPD options are specified as command line arguments.
Option Type Option Description
Message Processing -l [#:][host:]port # Links to host machine: TCP/IP port.
-f len | d:delim Message length | delimiter, where the delimiter can be a
character or a string.
-f m:maxlen Maximum message length, applied in addition to other -f
options.
-f l:flen[:pos[:hdr]] Message length field [position [header length]].
-f a:flen[:pos[:hdr]] Message length field in ASCII [position [header length]].
-F opts Same as -f, but for incoming messages only.
-i{len:pos|len@str} ID length:pos (from 1) or length@idstring.
-j opts Same as -i, but for incoming messages only.
-I{len:pos|len@str} Set ID, length:pos (1, 2, 3, or 6 length) or length@idstring.
-P -|# Common pool size (- unlimited [999], default).
-p # Per line pool size.
-q # Queue requests per link (when there are # unanswered by
host requests).
-Q # Queue requests in global queue (when all links have #
unanswered requests).
-d sec Connection timeout (if a request is not answered).
Use with -q/-Q only.
-D sec Connection timeout (if a request is not answered).
Close the link. Use with -q/-Q only.
-a line[:link] Administrative line for unidentified host data.
-A line[:link] Administrative line for all host data.
-m {a|n|i|t|u|U|h} Mode {send async|notify|invert|truncate spaces|send hostup
cond|UDP|keep the header}.
-m{l|L|I|R} Mode {use same link|keep link information|ISSUE doesn't
reserve a slot|regular round robin}.
-mB Binary headers are in non-network order.
-u port Port to listen on for server's replies (in UDP client mode only).
Page 24 P0602483 Ver: 03.41
Avaya VTCPD Configuration and Options
Option Type Option Description
Connection to VMST -v [node:]mps MPS number with optional remote node name.
-s # Port number to VMST.
-n name Optional service name (default Avaya VTCPD).
Debugging Options -X {a|2} Debugging level (a- display all messages to/from VMST, 2-
host).
-r device Redirect output (to /dev/tty#,/dev/console).
-H Help.
Examples: vtcpd -v1 -s160 -l 4:servh:10000 -f d:0x0a -i 48:6
Specifies four connections, unlimited pool, NL message delimiter, and 48 bytes message ID from 6th position.
vtcpd -v1 -s160 -l 2:servh:9000 -m d -q 3 -P 20...
Specifies two connections, a reply can arrive from a different connection, 20 slots are allocated in the global pool, and requests are queued for up to 3 seconds.
vtcpd -n mainmps -v1 -s160 -l48:servh:9000 -p 1 -f 65 -ma
VMST is running on the machine 'mainmps'. There is one connection per line (no ID), fixed­length messages and asynchronous host data delivery.
vtcpd -v1 -s160 ... -f d:'<end>' -f m:64000 ...
Sets the message delimiter to the string "<end>" and the max message length to 64000 bytes.
P0602483 Ver: 03.41 Page 25
VTCPD Features User Manual
VTCPD Features User Manual

Connection Options

The Avaya VTCPD daemon can run as a client or server. In a multiple-host environment, for different hosts, the daemon supports both client and server modes simultaneously, provided unique port numbers are specified for each mode. In client mode, Avaya VTCPD connects to a host as a client process. In the server mode, the Avaya VTCPD daemon accepts connections on the specified TCP/IP port.

Host Connection Options

Host connections are specified by the Avaya VTCPD daemon's command line options. Each connection is defined by the specified host machine name (or IP address) and the TCP/IP port number.
The -l command option is used to specify whether to run the Avaya VTCPD daemon as a client or server (see Client Mode on page 26 and Server Mode on page 27). In a multiple-host environment, for different hosts, the daemon can support both client and server modes simultaneously, if appropriate (and different) port numbers are specified.
Client Mode
In this mode, Avaya VTCPD connects to a host as a client process. The -l option is used to specify the number of connections (links) to the host using a specific TCP/IP port. This option can be used multiple times.
The following table shows the Avaya VTCPD client mode syntax.
Client Mode Connection Options
vtcpd -l [#:][host]:[port]
Args: # Indicates the number of connections to the specified host. (The
default is 1.)
host Indicates the name or IP address of each host.
port Indicates the TCP/IP port number. (Port numbers 7000-7256 are
reserved for the VMST and must not be used.)
Examples: vtcpd -l 2:eagle:10000 -l eagle:10001 -l hawk:11000
Specifies three connections to the host name eagle (TCP/IP ports 10000 and
10001) and one connection to the host named hawk (port 11000).
vtcpd -l 1::5000
Specifies a link to a yet-to-be-defined host via port 5000.
vtcpd -l 2:eagle:
Specifies two links to the host eagle via a yet-to-be-defined port.
vtcpd -l 3::
Specifies three yet-to-be-defined links.
Page 26 P0602483 Ver: 03.41
Avaya VTCPD Configuration and Options
Client Mode Connection Options
vtcpd -l [#:][host]:[port]
In client mode, if the host or port arguments are omitted, the links are unavailable to applications until this information is supplied by an administrative application. This allows the links to be allocated dynamically. See the Avaya Media Processing Server Series Application Programming Reference Guide for details.
Ports 7000-7256 are reserved for VMST and must not be used.
Correct sequencing of the connection specifications is important because applications can refer to connections by numeric designation when requesting a specific connection. The connections are numbered in the order specified on the command line. (For example, the numeric designation of the hawk connection as shown above is 4.)
If the number of connections is not specified, it defaults to one.
Server Mode
In the server mode, the Avaya VTCPD daemon accepts connections on the specified TCP/IP port. The server mode uses the -l option and the specified port number to configure the connections between the Avaya VTCPD daemon and the TCP/IP port.
The following table shows the Avaya VTCPD server mode syntax.
Server Mode Connection Options
vtcpd -l [#:][port]
Args:
Example: vtcpd -l 3:
#: [port]
Specifies three links in server mode on yet-to-be defined ports
If all connections are in server mode, the switch to the backup LAN (see
Backup LAN on page 38) will not be reversed even when the LAN is down.
The Avaya VTCPD daemon always uses the server mode if a host name is not specified using the -l option.
If the port argument is omitted, the links are unavailable to applications until this information is supplied by an administrative application. This allows the links to be allocated dynamically. See the Avaya Media Processing Server Series Application Programming Reference Guide for details.
Indicates how many connections can be accepted on a given port. The daemon can support client and server modes simultaneously for different hosts (in which case, the specified port numbers must be different).
P0602483 Ver: 03.41 Page 27
VTCPD Features User Manual
VTCPD Features User Manual

Single Host Connection

The Avaya VTCPD daemon connects to a single host using the host name and TCP/IP port number (specified as arguments on the command line). If a host name is not specified, Avaya VTCPD is configured as a server, in which case it accepts connections on the specified port.
The application uses the SEND function (PeriProducer resource block) to send a message to the host and the application issues the RECEIVE function (PeriProducer resource block) when it is expecting a response.

Multiple Hosts Connections

The Avaya VTCPD daemon can be connected simultaneously to several hosts, provided each host is specified (on the command line) when the daemon is started. These connections are made with no priority given to any particular host. Avaya VTCPD sends messages on a round-robin, load-balancing basis. The round robin system is a form of non-sequential access, in which the system maintains a list of available Virtual Terminals (VT) and assigns the first VT in the list to the requesting line. When the VT is freed, it is put to the end of the list. The nonsequential method uses all the VT in the list equally.
The Avaya VTCPD assumes that each host provides equivalent services. The application can override Avaya VTCPD and choose a specific host. The number of outstanding requests on a given connection can be limited (if required by the host). If Avaya VTCPD cannot send a message to a host because the specified limit is exceeded, it returns an appropriate condition message to the application.

One Connection Per Line

Avaya VTCPD can create as many connections to a host as there are lines available. In this type of configuration, each application has its own host connection. Message IDs are not required (in this type of configuration) because there is only one connection per line.

Multiple Avaya VTCPD Daemons

Multiple Avaya VTCPD daemons can be connected to one or more hosts, each handling different message formats and services. The application uses the resource names to identify the messages (see Specifying Which VTCPD on page 91.)
Page 28 P0602483 Ver: 03.41
Avaya VTCPD Configuration and Options

Application-Defined Mode

The Avaya VTCPD daemon can start when all or some host specifications are unavailable. The links will remain unavailable for applications until port and host information is associated with the links (host information is needed only in client mode). However, the administrative applications can dynamically assign or change host specifications. The specific links are differentiated from other host links by the number (any additional host or port information is optional). The host name can be either the name or IP address.
To define such hosts use the option:
-l #:hostname:port
Using this option hostname or port can be omitted:
Examples:
-l 1::5000
Specifies a link to undefined host through port 5000
-l 2:ablaze:
Specifies 2 links to host 'ablaze' through the as yet undefined port
-l 3::
Specifies 3 completely undefined links
-l 3:
Specifies 3 links in server mode on yet to be defined ports
The links are unavailable for applications until port and host information is associated with the links (in client mode, only host information is needed). Administrative applications can dynamically assign or change host specifications, as depicted by the following sample PeriProducer screenshot:
P0602483 Ver: 03.41 Page 29
VTCPD Features User Manual
VTCPD Features User Manual
Channel Number
A specific host link can be differentiated from other host links by the number (any additional host or port information is optional). The hname uses either the name or IP address: host:192.84.160.127.
For example, for the first link in the examples above, set the host using:
Channel Number
Page 30 P0602483 Ver: 03.41
Loading...
+ 84 hidden pages