Share via


Media Endpoint Settings Interface

This content is no longer actively maintained. It is provided as is, for anyone who may still be using these technologies, with no warranties or claims of accuracy with regard to the most recent product version or service release.

The IUccMediaEndpointSettings interface encapsulates the methods and properties you use to provide configuration information used by the media stack.

Configuration Information

The media endpoint settings interface provides the management functionality necessary to configure port ranges on a local computer and locate and add media connectivity server objects to the endpoint. A media connectivity server interface (IUccMediaConnectivityServer) can be obtained directly by calling AddMediaConnectivityServer. With this method call, you must supply several configuration values that are not provisioned on a client as part of the serverConfiguration category. If a local user provides the ICE protocol, connectivity server address, server port number, transport mode, realm, and priority, the user can configure a media endpoint for an organization media connectivity server.

An alternate method for configuring media connectivity servers is to let the media endpoint discover the media connectivity servers configured on the network topology. To locate the media connectivity servers installed in an organization topology, call FindMediaConnectivityServers. The collection of located servers is returned asynchronously in an OnFindMediaConnectivityServers. The second argument to this callback function provides a collection of located media connectivity servers. To add the located servers to the media endpoint, iterate on the collection and call AddMediaConnectivityServerWithCredential.

The Unified Communications Client API media stack component can be restricted to use a specified range of ports. This is normally desired when a client computer is configured to run the IPSecurity (IPSec) service. IPSecurity is a policy agent that manages IP security policy for computer ports. IPSec managed ports do not provide functionality needed by the media stack. A range of computer ports can be set aside as unmanaged ports. It is a good idea to set the media port range used by the media stack to correspond to the range of ports IPSec does not manage. To set a port range, use SetMediaPortRange. To see a previously set range, call GetMediaPortRange. The method arguments are out parameters and the method itself has no return value.

Note

If you set a port range, you should provide at least two ports for an audio session and four ports for an audio+video session.

Instantiating the interface

The following example handles an endpoint OnEnable event and instantiates a media endpoint settings interface. The code instantiates the media endpoint settings interface in the OnEnable callback event handler. The endpoint object implements IUccEndpoint.

// _IuccEndpointEvents::OnEnable callback event handler
void _IUccEndpointEvents.OnEnable(
    IUccEndpoint pEventSource,
    IUccOperationProgressEvent pEventData
    )
{
    if (pEventData.IsComplete && pEventData.StatusCode >= 0)
    {
        IUccMediaEndpointSettings _mediaSettings = pEventSource as IUccMediaEndpointSettings;
    }
}

See Also

Concepts

Media Connectivity Server Interface
Programming Patterns with Media Connectivity Objects