Prosody speech processing: API: sm_play_cptone_status

Prototype Definition

int sm_play_cptone_status(struct sm_play_cptone_status_parms *statusp)

Parameters

*statusp
a structure of the following type:
typedef struct sm_play_cptone_status_parms {
	tSMChannelId channel;					/* inout */
	enum kSMPlayCPToneStatus {
		kSMPlayCPToneStatusComplete,
		kSMPlayCPToneStatusOngoing,
	} status;						/* out */
} SM_PLAY_CPTONE_STATUS_PARMS;

Description

This call, typically invoke in response to a write event being signalled, allows an application to determine the status of a specific on-going call-progress tone generation job.

In order to determine the status of a specific call-progress tone generation job on a particular output channel, the application should set channel to specify the job concerned. On successful completion, the status parameter will indicate the status of that channel.

This function can also be used for 'any channel' operation. This mode of operation is a legacy feature and is not recommended for new applications. See Prosody TiNG: any channel operation for more details.

When this function reports that the channel status is kSMPlayCPToneStatusComplete, this also marks the end of the use of the channel for playing a tone, returning the channel output to an idle state ready to start a new replay or other output operation. Note that this means that if sm_play_cptone_status() is used again on the channel before starting a new tone, then it will report the error ERR_SM_WRONG_CHANNEL_STATE.

Fields

channel
The channel which is playing a call-progress tone.
status
The status of the channel. One of these values:
kSMPlayCPToneStatusComplete
The call-progress tone generation job has completed.
kSMPlayCPToneStatusOngoing
The call-progress tone generation job is still ongoing.

Returns

0 if call completed successfully, otherwise a standard error such as:


This function is part of the Prosody speech processing API.