126 Voice API Programming Guide — June 2005
Send and Receive FSK Data
10.7.1 Library Support on DM3 BoardsDM3 boards support ADSI one-way, two-way FSK, and fixed-line short message service (SMS).
The following voice library functions and data structures support this functionality on DM3 boards:
dx_RxIottdata( ) function
Receives ADSI data on a specified channel.
dx_TxIottdata( ) function
Transmits ADSI data on a specified channel.
dx_TxRxIottdata( ) function
Starts a transmit-initiated reception of data (two-way ADSI) on a specified channel.
ADSI_XFERSTRUC data structure
Stores information for the transmission and reception of ADSI data. It is used by the
dx_RxIottdata( ), dx_TxIottdata( ), and dx_TxRxIottdata( ) functions.
DV_TPT data structure
Specifies a termination condition for an I/O function; in this case, dx_RxIottdata( ),
dx_TxIottdata( ), or dx_TxRxIottdata( ). DX_MAXDATA termination condition in the
tp_termno field specifies the maximum data for ADSI two-way FSK. The tp_length field
specifies the size of data. A transmit/receive FSK session is terminated when the specified
value of FSK DX_MAXDATA (in bytes) is transmitted/received.
ATDX_TERMMSK( ) function
Returns the reason for the last I/O function termination. The return value is TM_MAXDATA
for the DX_MAXDATA termination condition.
dx_setparm( ) function
Used to set the following channel level parameters on DM3 boards:
•DXCH_FSKINTERBLKTIMEOUT – measured in milliseconds. This parameter
specifies how long the firmware should wait for the next burst of FSK data before it can
conclude that no more data will be coming and can terminate the receive session.
•DXCH_FSKSTANDARD – Specifies the FSK protocol standard used for transmission
and reception of FSK data. The protocol standard can be set to either
DX_FSKSTDBELLCORE (Bellcore standard) or DX_FSKSTDETSI (ETSI standard).
The default value is DX_FSKSTDBELLCORE.
•DXCH_FSKCHSEIZURE – For a given FSK protocol standard specified in
DXCH_FSKSTANDARD, this parameter allows the application to set the channel
seizure.
•DXCH_FSKMARKLENGTH – For a given FSK protocol standard specified in
DXCH_FSKSTANDARD, this parameter allows the application to set the mark length.
dx_getparm() fu nction
Gets the current parameter settings for an open device set through dx_setparm( ).
To determine whether your board supports FSK, use dx_getfeaturelist() to return information
about the features supported in the FEATURE_TABLE structure; the ft_misc field,
FT_CALLERID bit, is used to indicate FSK support on DM3 boards.
For details on these functions and data structures, see the Voice API Library Reference. For an
example of FSK code, see the Example section for dx_RxIottdata(), dx_TxIottdata( ), and
dx_TxRxIottdata( ) in the Voice API Library Reference.