Share via


IWMSAdminMulticastSink Interface

The IWMSAdminMulticastSink interface is a data sink that you can use to send content to multicast clients. It is exposed by the WMS Multicast Data Sink plug-in.

In addition to the methods inherited from IDispatch, the IWMSAdminMulticastSink interface exposes the following methods.

Method

Description

get_DataProtocol

Retrieves the data protocol for the multicast.

get_DestinationMulticastIPAddress

Retrieves the IP address to which the multicast broadcast is sent.

get_DestinationMulticastPort

Retrieves the port number to which the multicast broadcast is sent.

get_LocalIPAddress

Retrieves the local IP address from which the multicast broadcast is sent.

get_LoggingURL

Retrieves the URL used to log messages during a multicast.

get_MaximumPacketSize

Not implemented in this release.

get_MulticastTtl

Retrieves the maximum number of intermediate router hops permitted for the multicast transmission.

get_UnicastRolloverURL

Retrieves the unicast URL used to redirect clients when a multicast session request fails.

get_UnicastRolloverURLOptions

Retrieves an enumeration value indicating whether the unicast rollover URL is a default or custom type.

put_DataProtocol

Specifies the data protocol for the multicast.

put_DestinationMulticastIPAddress

Specifies the IP address to which a multicast broadcast is sent.

put_DestinationMulticastPort

Specifies the port number to which a multicast broadcast is sent.

put_LocalIPAddress

Specifies the local IP address to which a multicast broadcast is sent.

put_LoggingURL

Specifies the URL used to log messages during a multicast.

put_MaximumPacketSize

Not implemented in this release.

put_MulticastTtl

Specifies the maximum number of intermediate router hops permitted for the multicast transmission.

put_UnicastRolloverURL

Retrieves the unicast URL used to redirect clients when a multicast session request fails.

put_UnicastRolloverURLOptions

Specifies an enumeration value indicating whether the unicast rollover URL is a default or custom type.

Example

The following example illustrates how to retrieve a pointer to an IWMSAdminMulticastSink interface

#include <windows.h>
#include <atlbase.h>    // Includes CComBSTR and CComVariant.

// To access system plug-in interfaces, the
// entire type library must be imported as shown.
#import "WMSServerTypeLib.dll" no_namespace named_guids \
                               raw_interfaces_only

// Declare variables and interfaces.
IWMSServer                    *pServer;
IWMSPublishingPoints          *pPubPoints;
IWMSPublishingPoint           *pPubPoint;
IWMSBroadcastPublishingPoint  *pBCPubPoint;
IWMSPlugins                   *pPlugins;
IWMSPlugin                    *pPlugin;
IDispatch                     *pDispatch;
IWMSAdminMulticastSink        *pAdminMulticastSink;

HRESULT         hr;
CComVariant     varIndex;
CComBSTR        bstrName;
CComBSTR        bstrFile;

// Initialize the COM library and retrieve a pointer
// to an IWMSServer interface.
hr = CoInitialize(NULL);
hr = CoCreateInstance(CLSID_WMSServer,
                      NULL,
                      CLSCTX_ALL,
                      IID_IWMSServer,
                      (void **)&pServer);
if (FAILED(hr)) goto EXIT;

// Retrieve a pointer to the IWMSPublishingPoints
// interface and add a new broadcast publishing point.
hr = pServer->get_PublishingPoints(&pPubPoints);
if (FAILED(hr)) goto EXIT;
bstrName = "NewPubPoint";
bstrFile = "Push:*";
hr = pPubPoints->Add(bstrName, WMS_PUBLISHING_POINT_BROADCAST,
                     bstrFile, &pPubPoint);
if (FAILED(hr)) goto EXIT;

// Query the IWMSBroadcastPublishingPoint interface from
// the newly created publishing point.
hr = pPubPoint->QueryInterface(IID_IWMSBroadcastPublishingPoint,
                              (void **)&pBCPubPoint);
if (FAILED(hr)) goto EXIT;

// Retrieve a pointer to an IWMSPlugins interface
// containing broadcast data sink plug-ins.
hr = pBCPubPoint->get_BroadcastDataSinks(&pPlugins);
if (FAILED(hr)) goto EXIT;

// Retrieve a pointer to the IWMSPlugin interface
// of the plug-in to be configured.
varIndex = "WMS Multicast Data Writer";
hr = pPlugins->get_Item(varIndex, &pPlugin);
if (FAILED(hr)) goto EXIT;

// Retrieve a pointer to the custom interface
// of the plug-in.
hr = pPlugin->get_CustomInterface(&pDispatch);
if (FAILED(hr)) goto EXIT;

// Query the specific administration interface
// for the plug-in.
hr = pDispatch->QueryInterface(IID_IWMSAdminMulticastSink,
                              (void **)&pAdminMulticastSink);
if (FAILED(hr)) goto EXIT;

EXIT:
    // TODO: Release temporary COM objects and uninitialize COM.

See Also

Concepts

System Plug-in Interfaces (C++)