Avaya Business Communications Manager Telephone User Manual

User-Defined Call Functions in the PeriProducer Environment

Avaya Business Communications Manager
Release 6.0
Document Status: Standard
Document Number: P0603935
Document Version: 3.7
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.
Warra nty
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 TAKE 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 AVAYA AFFILIATE ("AVAYA").
Copyright
Except where expressly stated otherwise, no use should be made of the Documentation(s) and Product(s) provided by Avaya. All content in this documentation(s) and the product(s) provided by Avaya including the selection, arrangement and design of the content is owned either by Avaya or its licensors and is protected by 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 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) provided 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 Avaya 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 support 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
any

Table of Contents

Table of Contents
Preface..............................................................................5
Scope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Intended Audience . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
How to Use This Manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Organization of This Manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Conventions Used in This Manual . . . . . . . . . . . . . . . . . . . . . . . . . 7
Solaris and Windows 2000 Conventions . . . . . . . . . . . . . . . . . . . . 8
Chapter 1 — Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Chapter 2 — Call Functions . . . . . . . . . . . . . . . . . . . . . . . . . 11
User Defined Call Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Calling Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Accessing Arguments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Verifying Arguments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Signal Handling (Solaris Only). . . . . . . . . . . . . . . . . . . . . . . 16
Memory Access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Error Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Function Prototype . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Connecting to VMST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Compiling and Using Shared Libraries . . . . . . . . . . . . . . . . . . . . 22
Compiling Shared Libraries . . . . . . . . . . . . . . . . . . . . . . . . . 22
Makecall on Solaris . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Makecall on Windows 2000 . . . . . . . . . . . . . . . . . . . . . . 23
Using Shared Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Including Third Party Software . . . . . . . . . . . . . . . . . . . . . . 25
Debugging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Calldaemon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
# P0603935 Ver: 3.7 Page 3
User-Defined Call Functions in PeriProducer
This page has been intentionally left blank.
Page 4 # P0603935 Ver: 3.7

Preface

User-Defined Call Functions in PeriProducer

Scope

This manual is intended as a guide to producing and integrating custom Call Functions for use in the PeriProducer environment. It should be used in conjuction with the PeriProducer User’s Guide. It is not intended as a style guide or tutorial on how to program a custom Call Function.
Examples contained in this manual are for illustration purposes only. The techniques and styles presented in the examples should not be considered as necessary or appropriate for any specific application.

Intended Audience

This manual is intended for those who will be creating custom Call Functions and integrating them into a PeriProducer environment. The reader should be familiar with programming in C and using Solaris system compilers and utilities. The reader should also be familiar with the Avaya Media Processing Server (MPS) Series system and have a working knowledge of PeriProducer. It is assumed that the reader has completed MPS Series system and PeriProducer training courses conducted by Avaya.

How to Use This Manual

This manual uses many standard terms relating to computer system and software application functions. However, it contains some terminology that can only be explained in the context of the MPS Series system. Refer to the Glossary of MPS Terminology for definitions of MPS Series specific terms.
Initially, you should read this manual at least once, from start to finish. Later, you can 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.
To familiarize yourself with various specialized textual references within the manual, see Conventions Used in This Manual on page 7.
Periphonics is now part of Avaya. The name Periphonics, and variations thereof, appear in this manual only where it is referred to in a product. (For examples, a PeriProducer application, the PERImps package, the perirev command, and so on.)
EFT> click once with your mouse while positioned
Page 6 # P0603935 Ver: 3.7

Organization of This Manual

This manual is organized into separate chapters explaining the features and functions of PeriProducer.
Chapter 1 — Overview
This chapter provides an introduction to creating User-Defined Call Functions for use in a PeriProducer environment.
Chapter 2 — Call Functions
This chapter provides instructions that apply to integrating User-Defined Call Functions into the PeriProducer environment.

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 Sheet 1 of 2
Notation Description
Normal text
important term
system command
command, condition and alarm
file name / directory
on-screen field
<KEY NAME>
Book 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 magenta text and reference the Command Reference Manual, the PeriProducer User’s Guide, or the Alarm Reference Manual, respectively. Refer to these documents for detailed information
Commands, Conditions, and Alarms.
about
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 (for example, 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.
# P0603935 Ver: 3.7 Page 7
User-Defined Call Functions in PeriProducer
Conventions Used in This Manual Sheet 2 of 2
Notation Description
cross reference
!
1. Windows 2000 and the flying Window logo are either trademarks or registered trademarks of the Microsoft Corporation.
2. Solaris® is a registered trademark of The Open Group in the U.S. and other countries.
A cross reference is shown on the screen in blue. 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.
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 only.
2
1

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 2000 operating system.
Solaris Windows 2000
Environment $MPSHOME %MPSHOME%
Paths $MPSHOME/common/etc %MPSHOME%\common\etc
Command <command> & start /b <command>
Page 8 # P0603935 Ver: 3.7

Overview

This chapter covers:
1. Overview
Loading...
+ 21 hidden pages