Share via


IUccSessionParticipant.State Property

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.

Gets the current state of the participant.

Namespace: Microsoft.Office.Interop.UccApi
Assembly: Microsoft.Office.Interop.UccApi (in microsoft.office.interop.uccapi.dll)

Syntax

'Declaration
ReadOnly Property State As UCC_SESSION_ENTITY_STATE
UCC_SESSION_ENTITY_STATE State { get; }
property UCC_SESSION_ENTITY_STATE State {
    UCC_SESSION_ENTITY_STATE get ();
}
/** @property */
UCC_SESSION_ENTITY_STATE get_State ()
function get State () : UCC_SESSION_ENTITY_STATE

Property Value

A value of the UCC_SESSION_ENTITY_STATE* (UCC_SESSION_ENTITY_STATE, for a .NET application) type.

Remarks

Win32 COM/C++ Syntax

HRESULT get_State
(
   UCC_SESSION_ENTITY_STATE* penState
);

Note

In a Win32 application, the return value of a method or property is always an HRESULT value indicating the status of the call to the interface member. Any result of the operation is returned as a parameter marked with the [out, retval] attribute. In contrast, in a .NET application the HRESULT value indicating an error condition is returned as a COM exception and the [out, retval] parameter becomes the return value. For the UCC API-defined HRESULT values, see Trace and Handle Errors in Unified Communications Client API.

Example

The following example accepts an instance of IUccSessionParticipant and returns a string representing the current connection state of the session participant. An ideal place to call a method like the example is the session event, OnStateChanged or conference event, OnStateChanged event raised when a session participant connection state has changed.

/// <summary>
/// returns a string value representing the participant state
/// </summary>
/// <param name="pParticipant">participant source of context</param>
/// <returns>string property value</returns>
private string GetParticipantState(
    IUccSessionParticipant pParticipant)
{
    string returnValue = string.Empty;
    if (pParticipant == null)
    {
        throw new ArgumentNullException("pParticipant", "participant cannot be null");
    }
    switch (pParticipant.State)
    { 
            case UCC_SESSION_ENTITY_STATE.UCCSES_CONNECTED:
            returnValue = "In the session";
            break;
        case UCC_SESSION_ENTITY_STATE.UCCSES_CONNECTING:
            returnValue = "Joining the session";
            break;
        case UCC_SESSION_ENTITY_STATE.UCCSES_DISCONNECTED:
            returnValue = "Left the session";
            break;
        case UCC_SESSION_ENTITY_STATE.UCCSES_DISCONNECTING:
            returnValue = "Leaving the session";
            break;
        case UCC_SESSION_ENTITY_STATE.UCCSES_IDLE:
            returnValue = "Not Connected";
            break;
    }
    return returnValue;
}

Thread Safety

All public static (Shared in Visual Basic) members of this type are thread-safe. Instance members are not guaranteed to be thread-safe.

Platforms

Development Platforms

Windows XP Professional with Service Pack 2 (SP2), Windows Server 2000 with Service Pack 4, Windows Server 2003, Windows Vista Ultimate Edition, Windows Vista Business Edition, Windows Vista Enterprise Edition

Target Platforms

See Also

Reference

IUccSessionParticipant Interface
IUccSessionParticipant Members
Microsoft.Office.Interop.UccApi Namespace