Conference Manager Object


The Conference Manager object is the manager of the overall conference. An INmManager object can be created by using CoCreateInstance with a predefined class identifier (CLSID_NmManager) and interface (IID_INmManager).

INmManager Interface
INmManagerNotify Interface

Up ArrowBack to COM Object Reference

INmManager Interface

This interface enables you to create and retrieve information about conferences and calls.

CallConference
CreateCall
CreateConference
EnumCall
EnumConference
GetSysInfo
Initialize

Up ArrowBack to Conference Manager Object

INmManager::CallConference

HRESULT CallConference(
[out] INmCall **ppCall,
[in] NM_CALL_TYPE callType,
[in] NM_ADDR_TYPE addrType,
[in] BSTR bstrAddr,
[in] BSTR bstrName,
[in] BSTR bstrPassword);

Provides a pointer to an INmCall Interface on a new Call object.

ppCall
Pointer to a pointer to the INmCall Interface on the new Call object.
callType
NM_CALL_TYPE that identifies call types. Constants include:
NM_CALL_DEFAULT Allows audio, video, and data conferences.
NM_CALL_H323 Allows audio and video conferences.
NM_CALL_T120 Allows data conferences.
addrType
NM_ADDR_TYPE that identifies the type of the user name or address. Constants include:
NM_ADDR_H323_GATEWAY For calling a normal phone line. bstrAddr must be an IP address of the gateway server and the phone number (www.xxx.yyy.zzz/number). See INmManager::CreateCall.
NM_ADDR_IP bstrAddr requires an IP address.
NM_ADDR_MACHINENAME bstrAddr requires a computer name.
NM_ADDR_ULS bstrAddr requires an ILS server name and the e-mail name (server/e-mail).
NM_ADDR_UNKNOWN NetMeeting will determine if the bstrAddr string is a computer name, an ILS address, or an IP address.
bstrAddr
BSTR that contains the user's name or address.
bstrName
BSTR that contains the conference name.
bstrPassword
BSTR that contains a password. Password-protected conferences are currently unsupported. This parameter should be set to NULL.

This method places a NetMeeting call, and it can be used to call and join a conference with a specific name.

If known, it is recommended that applications use an explicit constant for addrType, such as NM_ADDR_IP, NM_ADDR_MACHINENAME, or NM_ADDR_ULS, instead of using NM_ADDR_UNKNOWN.

Up ArrowBack to INmManager Interface

Up ArrowBack to Conference Manager Object

Up ArrowBack to COM Object Listing

INmManager::CreateCall

HRESULT CreateCall(
[out] INmCall **ppCall,
[in] NM_CALL_TYPE callType,
[in] NM_ADDR_TYPE uType,
[in] BSTR bstrAddr,
[in] INmConference * pConference);

Places a call to a remote computer. Provides a pointer to an INmCall Interface on a new Call object.

ppCall
Pointer to a pointer to the returned INmCall Interface on a Call object. Can be set to NULL if the application does not need to use the returned Call object.
callType
NM_CALL_TYPE that identifies call types. Constants include:
NM_CALL_DEFAULT Allows audio, video, and data conferences.
NM_CALL_H323 Allows audio and video conferences.
NM_CALL_T120 Allows data conferences.
uType
NM_ADDR_TYPE that identifies the type of the user name or address. Constants include:
NM_ADDR_H323_GATEWAY For calling a normal phone line. bstrAddr must be an IP address of the gateway server (www.xxx.yyy.zzz/number). See comments.
NM_ADDR_IP bstrAddr requires an IP address.
NM_ADDR_MACHINENAME bstrAddr requires a computer name.
NM_ADDR_ULS bstrAddr requires an ILS server name.
NM_ADDR_UNKNOWN NetMeeting will determine if the bstrAddrstring is a computer name or an IP address.
bstrAddr
BSTR that contains the target of the call. Depending on the uType constant, this may take the form of an IP address, a computer name, an ILS server name, or the gateway server and phone number.
pConference
Pointer to the INmConference Interface on a Conference object. If pConference is NULL, this method will use the current active Conference object or create a new one, if needed.

If uType is NM_ADDR_H323_GATEWAY, the bstrAddr string must take the form IP address/number, or "www.xxx.yyy.zzz/number". IP address is the address of the gateway to use, and number is the phone number to dial. The allowed character set for the "number" half of bstrAddr is comprised of the following characters: 0123456789#*. NetMeeting will automatically strip extraneous characters. For example, the string "(425) 555 - 1212" becomes "4255551212" when it is passed to the gateway.

Up ArrowBack to INmManager Interface

Up ArrowBack to Conference Manager Object

Up ArrowBack to COM Object Listing

INmManager::CreateConference

HRESULT CreateConference(
[out] INmConference **ppConference,
[in] BSTR bstrName,
[in] BSTR bstrPassword,
[in] ULONG uchCaps);

Creates a conference on the local computer. Provides a pointer to an INmConference Interface on a new Conference object.

An application may create any number of Conference objects, but only one Conference object may be active at any given time. All others must be idle.

ppConference
Pointer to a pointer to the INmConference Interface on the new Conference object.
bstrName
BSTR that contains the conference name. This string cannot be NULL, and it cannot be a string of spaces.
bstrPassword
BSTR that contains a password. Password-protected conferences are currently unsupported. This parameter should be set to NULL.
uchCaps
Channel type. Can be NMCH_ALL, NMCH_NONE, or any combination of the remaining channel type constants. Determines what type of channel notifications the application will receive. This does not prevent other types of channels from being used.
NMCH_ALL All channel notifications.
NMCH_AUDIO Audio conferencing notifications only.
NMCH_DATA Data conferencing notifications only.
NMCH_FT File Transfer notifications only.
NMCH_NONE No channel notifications.
NMCH_SHARE Application Sharing notifications only.
NMCH_VIDEO Video conferencing notifications only.

Up ArrowBack to INmManager Interface

Up ArrowBack to Conference Manager Object

Up ArrowBack to COM Object Listing

INmManager::EnumCall

HRESULT EnumCall(
[out] IEnumNmCall **ppEnum);

Provides access to an enumerator that can be used to list each call in progress. The IEnumNmCall Interface methods can be used to manipulate this enumerator.

ppEnum
Pointer to a pointer to an enumerator for existing Call objects.

Up ArrowBack to INmManager Interface

Up ArrowBack to Conference Manager Object

Up ArrowBack to COM Object Listing

INmManager::EnumConference

HRESULT EnumConference(
[out] IEnumNmConference **ppEnum);

Provides access to an enumerator that can be used to list each conference in progress. The IEnumNmConference Interface methods can be used to manipulate this enumerator.

ppEnum
Pointer to a pointer to the IEnumNmCall Interface of the enumerator for existing Conference objects.

If there is a conference in progress, you can use it rather than start a new one. With the current implementation of NetMeeting, there can be only one active conference at a time.

Up ArrowBack to INmManager Interface

Up ArrowBack to Conference Manager Object

Up ArrowBack to COM Object Listing

INmManager::GetSysInfo

HRESULT GetSysInfo(
[out] INmSysInfo **ppSysInfo);

Provides a pointer to an INmSysInfo Interface on a Local System object.

ppSysInfo
Pointer to a pointer to the INmSysInfo Interface on the new Local System object, which provides general information about the local computer and local user. Methods in the INmSysInfo Interface can be used to access this information.

This method can be called before INmManager::Initialize.

Up ArrowBack to INmManager Interface

Up ArrowBack to Conference Manager Object

Up ArrowBack to COM Object Listing

INmManager::Initialize

HRESULT Initialize(
[in, out] ULONG * puOptions,
[in, out] ULONG * puchCaps);

Activates the Conference Manager object and enables the calling application to register itself with the conference services.

puOptions
Pointer to a ULONG that specifies the options to be used. This can be one of the following:
NM_INIT_NORMAL Starts NetMeeting as normal. The NetMeeting user interface will be visible.
NM_INIT_CONTROL Request control of the NetMeeting user interface. NetMeeting UI will not be visible.
NM_INIT_NO_LAUNCH Do not start NetMeeting if it isn't already running.
puchCaps
Pointer to a ULONG that specifies the types of channels allowed. This can be NMCH_ALL, NMCH_NONE, or any combination of the other types.
NMCH_ALL All channel notifications.
NMCH_AUDIO Audio conferencing notifications only.
NMCH_DATA Data conferencing notifications only.
NMCH_FT File Transfer notifications only.
NMCH_NONE No channel notifications.
NMCH_SHARE Application Sharing notifications only.
NMCH_VIDEO Video conferencing notifications only.

If NM_INIT_NORMAL was not used and NetMeeting was already running, the method will return S_OK, but will change puOptions to NM_INIT_NORMAL.

If NM_INIT_CONTROL is passed into and returned from this method, the INmManagerNotify::NmUI method must be implemented, and the application must handle the display of all dialogs and other user interface elements.

When an application accepts a call, the NetMeeting user interface will be displayed unless puOptions is set to NM_INIT_CONTROL.

Up ArrowBack to INmManager Interface

Up ArrowBack to Conference Manager Object

Up ArrowBack to COM Object Listing

INmManagerNotify Interface

This is an event notification sink interface for the INmManager interface. The methods in this interface are called by the Conference Manager object when specific events occur.

These event sink methods should be defined and implemented by the client application to respond to notifications from a Conference Manager object. For example, the INmManagerNotify::NmUI method is notified when a conference change occurs. The client application implementation of this method could provide a display to the user of that event.

CallCreated
ConferenceCreated
NmUI

Up ArrowBack to Conference Manager Object

INmManagerNotify::CallCreated

HRESULT CallCreated(
[in] INmCall *pCall);

Called by the Conference Manager object when an incoming call is received or when an outgoing call is placed.

pCall
Pointer to the INmCall Interface on the Call object.

Up ArrowBack to INmManagerNotify Interface

Up ArrowBack to Conference Manager Object

Up ArrowBack to COM Object Listing

INmManagerNotify::ConferenceCreated

HRESULT ConferenceCreated(
[in] INmConference *pConference);

Called by the Conference Manager object when a new conference is created. The Conference object can be used as if it were activated by the client application.

pConference
Pointer to the INmConference Interface on the Conference object.

Up ArrowBack to INmManagerNotify Interface

Up ArrowBack to Conference Manager Object

Up ArrowBack to COM Object Listing

INmManagerNotify::NmUI

HRESULT NmUI(
[in] CONFN uNotify);

Receives event notification when a conference change occurs that might require notification to be displayed to the user. This is not required if the Conference Manager object was initialized with NM_INIT_NORMAL.

uNotify
Identifier of an event constant during a conference. This can include the following values:
CONFN_NM_STARTED The NetMeeting system was started.
CONFN_NM_STOPPED The NetMeeting system was stopped.

Up ArrowBack to INmManagerNotify Interface

Up ArrowBack to Conference Manager Object

Up ArrowBack to COM Object Listing

Last Updated: November 1, 1997
© 1997 Microsoft Corporation. All rights reserved. Terms of Use.