of 38
Conferencing API Pr ogramming Guide A ugust 2006 05-2505-00 1.
Conferencing API Programm ing Guide – August 2006 INFORMA TION IN THIS DO CUMENT IS PRO VIDED IN CONNECTION WITH INTEL® PRODUCTS. NO LICENSE, EX PRESS OR IMPLIED , BY EST OPPEL OR O THER WISE, T O ANY INTELLECTU AL PR OPER TY RIGHTS IS GRANTED BY THIS DOCUMENT .
Conferencing API Program m ing Guide – August 2006 3 Contents Revision H istory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 About This Publication . . . . . . . . . . .
4 Conferencing API Programm ing Guide – August 2006 Contents 8.1.1 Include Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 8.1.2 Required Lib raries . . . . . . . . . . . . . . . .
Conferencing API Programming G uide — August 2006 5 Re vision Histor y This re vision history summarizes the changes made in each published vers ion of this document. Document No. Publication Date Description of Revisions 05-2505-001 A u gust 2006 Initial version of document.
6 Conferencing API Progra mming Guide — August 2006 Revisi on History.
Conferencing API Programming G uide — August 2006 7 About This Pub lication The following topics provide more inform ation about this publication: • Purpose • Applicability • Intended Audience.
8 Conferencing API Progra mming Guide — August 2006 About This Public ation How to Use This Pub lication This document assumes that y ou are familiar with the Linux* or Windo ws* operatin g systems and the C programming language.
Conferencing API Programming G uide — August 2006 9 1 1 . Pr oduct Description This chapter provides an ov erview of th e conferencing library . T opics include: • Overvie w . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10 Conferencing API Progra mming Guide — August 2006 Produc t Description DTMF digit detection The application can determine whether a party has generated a DTMF digit. Vo l u m e c o n t r o l A party can adjust the listening volume of th e conference using pre-pr ogra mmed DTMF di gits.
Conferencing API Programming G uide — August 2006 11 Pr oduct Descriptio n A conference may be formed from parties that are connected to an y one of th e follo win g technology device handles: • v.
12 Conferencing API Progra mming Guide — August 2006 Produc t Description through the device management library . For more information about device management functions, see the Device Manag ement API Library Refer ence .
Conferencing API Programming G uide — August 2006 13 2 2 . Pr ogramming Models This chapter describes the programming models supported by the confer encing software. The follo wing topics are covered: • Programming Models Overvie w . . . . . . . .
14 Conferencing API Progra mming Guide — August 2006 Progra mm ing Models.
Conferencing API Programming G uide — August 2006 15 3 3 . Event Handling All conferencing e vents are retrieved using St andard Runtime Library (SRL) e vent retriev al mechanisms, including ev ent handlers. The SRL is a de vice-independent library cont aining ev ent management functions and Standard At tribute func tions.
16 Conferencing API Progra mming Guide — August 2006 Event Handling ATDV_NAMEP( ) pointer to device name ATDV_SUBDEVS( ) number of subde vices Note: See the Standard Runtime Library API Libr ary Reference for function details.
Conferencing API Programming G uide — August 2006 17 4 4 . Err or Handling This chapter describes error hand ling for the conferencing software. All conferencing functions return a v alue that indicates the success or f ailure of the function call. Success is indicated b y a return v alue of CN F_ SUCCESS .
18 Conferencing API Progra mming Guide — August 2006 Error Handling.
Conferencing API Programming G uide — August 2006 19 5 5 . Application De velopment Guidelines This chapter contains guidelines for dev eloping conferenci ng applications. The following topics are cov ered: • Using Symbolic Def ines . . . . . . . .
20 Conferencing API Progra mming Guide — August 2006 Application Development Gu idelines devices at once. A conference device and a party device are independent; that is, you can open a party device without first opening a conference device. 5.3 Creating a Conference The following steps describe ho w to create a conference.
Conferencing API Programming G uide — August 2006 21 Application Development Guide lines 11. If desired, you can specify attributes for a party using cnf_SetA ttributes( ) . A ttributes are contained in the CNF_A TTR data stru cture. Use cnf_GetAttributes( ) to return the current attributes for the party .
22 Conferencing API Progra mming Guide — August 2006 Application Development Gu idelines • Even though two (or more) conferences can be bridged together , the attributes and settings of each conference remain unchang ed. The application is responsible for managing each conference and conference related e vents separately .
Conferencing API Programming G uide — August 2006 23 Application Development Guide lines 5.7 Multipr ocessing Considerations Having multiple processes acting on the sam e board is undesirable. It is recommended to use a single process per board, or a single process for al l boards, rather than more than one process acting on the same board.
24 Conferencing API Progra mming Guide — August 2006 Application Development Gu idelines.
Conferencing API Programming G uide — August 2006 25 6 6 . Using Active T alker This chapter provides information about the acti ve talker feature. An acti ve talker refers to a party in a confer ence who is pro viding “non -silence” energ y . Activ e talkers are determined by the loudness or strength of their “non-silence” ener gy .
26 Conferencing API Progra mming Guide — August 2006 Using Active T alker.
Conferencing API Programming G uide — August 2006 27 7 7 . Using V olume Contr ol This chapter provides informat ion about controlling th e volume le vel in a conferen ce. A party in a conference may wish to change the volume le vel of the recei ved signal.
28 Conferencing API Progra mming Guide — August 2006 Using V olume Contr ol.
Conferencing API Programming G uide — August 2006 29 8 8 . Building Applications This chapter provides information on building a pplications using the conferencing API library . The following topics are discussed: • Compiling and Linking . . . . .
30 Conferencing API Progra mming Guide — August 2006 Building Applications If you use other library functions such as voice or IP media, you will hav e to include the header files for that library: dxxxlib.h Contains function prototypes and symbolic defines for the v oice library .
Conferencing API Programming G uide — August 2006 31 Building Applicat ions Linux In Linux, you must link the following library files in the order sho wn when compiling your conferencing application: libsrl.so Standard Runtime Library file. Required in all applications.
32 Conferencing API Progra mming Guide — August 2006 Building Applications.
Conferencing API Programming G uide — August 2006 33 Glossar y active tal ker: A participant in a conf erence who is providin g “non-silence” ener gy . automatic g ain control (A GC ): An electronic circuit used to maintain the audio signal volume at a constant lev el.
34 Conferencing API Progra mming Guide — August 2006 configuratio n file: An unformat ted ASCII file that stores de vice initializati on information for an application.
Conferencing API Programming G uide — August 2006 35 pupil: A participant in a conference that has a mentoring relationship with a coach. resour ce: Funct ionality (for example, conferencing) that can be assigned to a call. Resources are shared whe n functionality is selectiv ely assigned to a call a nd may be shared among mu ltiple calls.
36 Conferencing API Progra mming Guide — August 2006 tone c lamping: (DTMF tone clamping) Mutes DTMF tones h eard in a conference. If a confereee’ s phon e generates a tone, the DTMF signal will not inte rfere with the conference. Applies to transmitted aud io into the conference and does not affe ct DTMF function.
Conferencing API Programming G uide — August 2006 37 Inde x A active talker enabling 25 feature description 10 asynchronous callback model, Linux 13 asynchronous mode programming Linux 13 asynchrono.
38 Conferencing API Programmi ng Guide — August 2006 ipmlib.h 30 L libcnf.lib 30 libcnf.so 31 libdevmgmt.lib 30 libdevmgmt.so 31 libdti.so 31 libdtimt.li b 30 libdxxmt.lib 30 libdxxx.so 31 libgc.lib 30 libgc.so 31 libipm.lib 30 libipm.so 31 libsrl.so 31 libsrlmt.