MSPP unsolicited events

The MSPP service returns unsolicited events to the application when a channel or endpoint detects a particular condition. These events are not responses to specific filter commands and they can be returned at any time while a channel or endpoint is active. Depending on the filter, the endpoint can automatically send unsolicited events when it is created, or may need to be configured or commanded to send the unsolicited events.

For example, when an application creates a T38UDP fax endpoint (endpoints are enabled by default when created), the endpoint automatically begins monitoring incoming data to detect any T.38 packets. The first time it detects a T.38 fax packet, it sends an unsolicited event to the application.

However, RTP endpoint filters do not return unsolicited events with RTCP monitoring information unless the application explicitly turns on this monitoring. The application initiates RTCP monitoring by setting parameter values in the RTPRTCP_ENDPOINT_PARMS structure when creating the endpoint.

After receiving MSPP service unsolicited events, applications must free the associated buffer with mspReleaseBuffer. However, calling mspReleaseBuffer twice for the same buffer creates an access violation.

The following table lists unsolicited events returned by MSPP filters:

Event

Associated filter

Description

MSPEVN_RTCP_REPORT

RTP (IPv4 and IPv6) duplex

Provides RTCP information for a particular voice connection. Useful for monitoring packet quality of service (QOS). These are disabled by default.

MSPEVN_DPF_DTMF_PLAY_END

Voice decoder filter

Notifies the application that the voice decoder filter has finished playing a DTMF tones as a result of an MSP_CMD_PLAY_DTMF_DIGIT filter command.

MSPEVN_DPF_DTMF_REPORT

Voice encoder filter

Notifies the application when the voice encoder filter detects the presence of a DTMF input signal.

MSPEVN_RFC2833_REPORT

RTP duplex and RTP receive (IPv4 and IPv6) endpoints

Notifies the application that the RTP endpoint received an RFC 2833 RTP packet.

MSPEVN_FAXRELAY_FAX_BEGIN

MSPEVN_FAXRELAY_FAX_END

MSPEVN_FAXRELAY_PASSED_PAGE

T.38 fax channel filter

Returns status information about an active T.38 fax session.

MSPEVN_T38_PACKET_DETECTED

T38UDP endpoint

Notifies the application that a T38UDP endpoint received a T.38 fax packet  (that is, voice fax switchover can be initiated).

MSPEVN_NOROUTE_AVAILABLE

Not applicable. This event returns board-level information and therefore is not associated with a specific filter.

Indicates that an RTP or T38UDP endpoint has lost the ability to route outbound data to its destination.

MSPEVN_ROUTE_AVAILABLE

Not applicable. This event returns board-level information and therefore is not associated with a specific filter.

Indicates that an RTP or T38UDP endpoint lost the ability to route outbound data to its destination.

For more information about scenarios for receiving unsolicited events, refer to the Fusion Developer's Manual.