




4. R4 Voice API for DM3
4.1. Voice API Features Not Supported (By Category)
The following is a summary of the voice features that are currently not supported. The categories are presented for convenience and are not a definitive way of organizing the information. Some categories appear on their own although they may strictly be defined as a subset of another category. Make sure to check all the categories.
For details on the functions and parameters affected, and for a few unsupported functions that do not fall into any of these categories, see Section 4.3. Voice API Function and Parameter Restrictions.
For information on all SCbus restrictions (including Echo Cancellation Resource), see Chapter 3. R4 SCbus Routing API for DM3.
For a list of supported system and voice features, see Sections 2.2.1. Basic System Features Supported and 2.2.3. Basic Voice Features Supported.
4.1.1. Tone Detection/Generation Features Not Supported
- Voice library r2_creatfsig( ) function for detecting R2MF signals
- Voice library r2_playbsig( ) function for detecting R2MF signals
- Multi-frequency (MF) tone detection
- Voice library dx_setdigtyp( ) and dx_getdig( ) functions for detecting MF digits
4.1.2. Pulse Detection/Generation Features Not Supported
- Global Dial Pulse Detection (GDPD)
- Pulse dialing
4.1.3. Analog Line Handling Features Not Supported
- Ring detection
- Detection of loop current on/off events
- Detection of rings received
- Hookswitch control
- Detection and generation of a wink
4.1.4. Call Management Features Not Supported
4.1.5. Play/Record Limitations and Features Not Supported
- Unsupported formats include the following (see Section 2.2.3. Basic Voice Features Supported for a list of supported formats):
- VOX and WAVE Linear PCM 6 kHz with 8-bit samples (48 Kb/s)
- VOX and WAVE Linear PCM 8 kHz with 8-bit samples (64 Kb/s)
- VOX and WAVE either _-law or A-law coding PCM at 11 kHz with 8-bit samples (88 Kb/s)
- Play Does Not Support:
- Voice Barge-In (Note: CSP Barge-in is supported.)
- Play/Record Routing Limitation:
- On DM3 boards, voice channels must be listening to a CT Bus timeslot in order for any voice streaming functions, such as dx_rec( ), to work. In other words, you must issue a dx_listen( ) function call on the device handle before calling any voice streaming function for that device handle. Furthermore, the dx_listen( ) function must be called within the same process as the voice streaming functions. The actual recording operation will start only after the voice channel is listening to the proper external timeslot.
4.1.6. Running Transaction Record
The Transaction Record feature allows you to record two CT Bus time slots from a single channel. Voice activity on two channels can be summed and stored in a single file, device, and/or memory.
Transaction Record uses the external reference as its secondary input to the summing algorithm in the digital signal processors (DSP). Usually, transaction record is used to record both sides of a two-sided conversation.
The following figure shows a typical CT Bus connection where an external reference signal is used.
Figure 2. CT Bus Connection with External Reference
Use the guidelines in this section to achieve full density of transaction record, which is up to 120 channels of dx_mreciottdata( ) on a single DM3 board.
- NOTES:
- 1. These guidelines assume that this feature is used on its own without conferencing, Continuous Speech Processing (CSP), or another feature in use at the same time.
- 2. These are general guidelines. Not every task is described here; for example, setting up recording parameters is not included.
To run 120 channels of transaction record, follow these guidelines:
- The voice channel used for transaction record must be on the same physical board as the network interface device that is listening to the far-end input, normally the secondary input on the transaction record (see below). In these guidelines, the voice channel used for transaction record is called the local voice channel, and the network interface device, the local network interface device.
- On the local network device, issue dt_listen( ) or gc_Listen( ) to listen to the CT Bus time slot that is providing one of the inputs (normally the secondary, or external reference) on the transaction record call.
The device that is providing the secondary input can be derived from another CT Bus time slot. This device does not have to be on the same physical board as the local network interface and local voice channel.
- NOTE:
- You must call dt_listen( ) or gc_Listen( ) to listen to the external reference before dx_mreciottdata( ) is initiated to achieve full density (up to 120 channels) of transaction record.
- Issue dx_mreciottdata( ) on the local voice device where one of the inputs (normally the secondary) is the time slot previously used in the local network interface dt_listen( ). This is the same signal from the same time slot discussed in step 2.
- Before tearing down the connection, wait until dx_mreciottdata( ) on the local voice channel has completed.
- To tear down the connection, issue dt_unlisten( ) or gc_unlisten( ) on the local network interface device.
- NOTE:
- Make sure dx_mreciottdata( ) has completed before attempting to call dt_unlisten( ) or gc_Unlisten( ) to break the connection to the external reference, regardless of the number of channels engaged in transaction record or use of the external reference.
- If receiving DTMFs is one of the termination conditions for recording,
make sure that terminating DTMFs are sent over the first of the two timeslots
with which the dx_mreciottdata( ) function is dealing.
If the termination DTMFs are sent over the second timeslot, the record will
continue.
4.1.7. Miscellaneous Features Not Supported
- Sharing DSP resource features (including DSP Fax)
- Voice library dx_GetRscStatus( ) resource sharing function
- Syntellect License Automated Attendant functions
- Echo Cancellation Resource





Click here to contact Dialogic Customer Engineering
Copyright 2002, Intel Corporation
All rights reserved
This page generated February, 2002