ServerAgent

The ServerAgent class implements a Microsoft Lync Server 2010 agent.

Applications use ServerAgent objects to interact with Lync Server 2010. Each object of this class represents a logical SIP application to the server. Most applications will create only one such object, but in special cases, t may be necessary to create multiple server agent objects (such as for logging all incoming and all outgoing messages).

Before a ServerAgent object is instantiated, an application manifest should be created to describe the application to the server and provide the message filtering service.

This class implemented the IDisposable interface.

The ServerAgent class is derived from the System.Object class.

Public Constructors

The ServerAgent class has the following public constructors.

Constructor

Description

ServerAgent.ServerAgent (ApplicationManifest)

Creates an instance of a ServerAgent object with the specified application manifest.

NoteNote

This constructor is for script-only applications.

ServerAgent.ServerAgent (Object, ApplicationManifest)

Creates an instance of a ServerAgent object with the specified dispatch handler object and application manifest.

NoteNote

This constructor is for applications with a managed code component that handles dispatched messages.

Public Methods

The ServerAgent class has the following public methods.

Method

Description

ServerAgent.CloseHandle

Static (Shared). Closes an open Windows object handle.

ServerAgent.Dispose ()

Terminates interaction with Lync Server 2010 and releases all resources consumed by this object.

EqualString

Inherited from System.Object. Determines whether the specified System.Object is equal to the current System.Object.

GetHashCode()

Inherited from System.Object. Serves as a hash function for a particular type, suitable for use in hashing algorithms and data structures like a hash table.

GetType()

Inherited from System.Object. Gets the System.Type of the current instance.

ServerAgent.ProcessEvent

Removes an event from the server queue and processes it.

ToString()

Inherited from System.Object. Returns a System.String that represents the current System.Object.

ServerAgent.WaitForServerAvailable(Int32)

Static (Shared). Checks to see if the Lync Server 2010 process has started and initialized.

NoteNote

Applications should call this method before they create their first ServerAgent object.

Public Properties

The ServerAgent class has the following public properties.

Property

Description

ServerAgent.Pool

Data type: string

Access type: Read-only

Retrieves the name of the Enterprise Edition pool to which the server belongs.

ServerAgent.ServerProcess

Data type: System.Diagnostics.Process

Access type: Read-only

Static (Shared). Provides access to the Lync Server 2010 process.

ServerAgent.WaitHandle

Data type: WaitHandleAccess type: Read-only

Contains an internal handle used to signal that there is pending input from Lync Server 2010 that the server agent needs to process.

Public Events

The ServerAgent class has the following public event.

Event

Description

ServerAgent.ConnectionDropped

Occurs when the connection to the server has been dropped.

Protected Methods

The ServerAgent class has the following protected methods.

Method

Description

ServerAgent.CheckDisposed

Throws ObjectDisposedException if the server agent is in the disposed state.

ServerAgent.Dispose (bool)

Destroys this transaction and releases all unmanaged resources as well as optionally releasing all managed ones.

ServerAgent.Finalize

Provides a finalizer for this ServerAgent instance.

ServerAgent.OnConnectionDropped

Raises the ServerAgent.ConnectionDropped event with the supplied reason.

Remarks

Before creating an instance of this class, ServerAgent.WaitForServerAvailable should be called to determine if Lync Server 2010 is available.

To terminate interaction with the server, applications should call the Dispose() method.

Requirements

Redistributable: Requires Microsoft Lync Server 2010

Namespace:Microsoft.Rtc.Sip

Assembly: ServerAgent (in ServerAgent.dll)

See Also