Passed to a Session in order to specify a stationless connection.

Namespace: ININ.IceLib.Connection
Assembly: ININ.IceLib (in ININ.IceLib.dll) Version: 0.0.0.0 (22.3.0.218)

Syntax

C#
public class StationlessSettings : StationSettings
Visual Basic
Public Class StationlessSettings _
	Inherits StationSettings

Remarks

The StationlessSettings object is used to specify that no station should be associated with the Session.

When using a stationless Session, telephony operations made from the ININ.IceLib.Interactions namespace will generally be rejected as most of these operations require the logged in user to be logged in with a station. The following is a list of operations that do require a logged in station:

  • ININ.IceLib.Interactions.InteractionsManager.MakeCall
  • ININ.IceLib.Interactions.Interaction.Coach
  • ININ.IceLib.Interactions.Interaction.ConsultTransfer
  • ININ.IceLib.Interactions.Interaction.InitiateSecureInput
  • ININ.IceLib.Interactions.Interaction.Join
  • ININ.IceLib.Interactions.Interaction.Listen
  • ININ.IceLib.Interactions.Interaction.Pickup
There are operations that can be performed without a station, for example:
  • ININ.IceLib.Interactions.Interaction.BlindTransfer
  • ININ.IceLib.Interactions.Interaction.Disconnect
  • ININ.IceLib.Interactions.Interaction.Hold
  • ININ.IceLib.Interactions.Interaction.Mute
  • ININ.IceLib.Interactions.Interaction.Park
  • ININ.IceLib.Interactions.Interaction.Pause
  • ININ.IceLib.Interactions.Interaction.Private
  • ININ.IceLib.Interactions.Interaction.Record
  • ININ.IceLib.Interactions.Interaction.SecureRecordingPause
  • ININ.IceLib.Interactions.Interaction.TransferToVoicemail
  • ININ.IceLib.Interactions.Interaction.Voicemail
Additionally, Sessions created via the various available proxy authentications (ProxyAuthSettings for example) that will require making telephony-related operations, should ensure that a station is in use by the proxied user. This can be done by logging in with the station settings that are already in use by the proxied user. The SessionWatch object can be used to obtain this information.

Examples

The following example shows how to create a connection to the IC server:
CopyC#
// The IceLib Session can be created once and used for the life of the process.
Session session = new Session();
// An event handler is usually added to monitor connection state changes.
session.ConnectionStateChanged += delegate { /* React to connection state changes. */ };

// The application name can be displayed in Interaction Supervisor and is used for diagnostic operations.
SessionSettings sessionSettings = new SessionSettings();
sessionSettings.ApplicationName = "<Custom Application Name>";

// Specify the server being connected to (which is usually the IC server name).
// (It can also be a DNS "A" record that refers to both IC servers in a switchover pair.)
HostEndpoint hostEndpoint = new HostEndpoint("<IC Server Name>");
HostSettings hostSettings = new HostSettings(hostEndpoint);

// There are many options for specifying user authentication information.
// (See the derived classes of ININ.IceLib.Connection.AuthSettings for more information.)
// 
// The current windows user's windows authentication can be used (if the IC user is configured with NT credentials).
WindowsAuthSettings authSettings = new WindowsAuthSettings();
// Alternatively, IC authentication can be used.
ICAuthSettings icAuthSettings = new ICAuthSettings("<IC_User_LoginID>", "<IC_User_Password>");

// There are many options for specifying IC station information.
// (See the derived classes of ININ.IceLib.Connection.StationSettings for more information.)
// 
// If the application does not require a Station login, a simple "stationless" connection can be used.
StationlessSettings stationSettings = new StationlessSettings();
// Alternatively, an IC station could be specified.
WorkstationSettings workstationSettings = new WorkstationSettings("<IC_StationID>", SupportedMedia.Call);
// Or, a dynamic remote number station could be specified.
RemoteNumberSettings remoteNumberSettings = new RemoteNumberSettings(SupportedMedia.Call, "555-555-5555", true);

// Note: Consider using the ConnectAsync method to avoid blocking the thread.
session.Connect(sessionSettings, hostSettings, authSettings, stationSettings);

Examples

The IceLib SDK includes example application references to the StationlessSettings class. Some examples are listed below.
ProjectLocation
TutorialExampleLoginStationViewModel.cs, line 119, in LoginStationViewModel.CreateStationSettings

Inheritance Hierarchy

System..::..Object
  ININ.IceLib.Connection..::..StationSettings
    ININ.IceLib.Connection..::..StationlessSettings

Version Information

Supported for IC Server version 2015 R1 and beyond.
For 4.0, supported for IC Server version 4.0 GA and beyond.
For 3.0, supported for IC Server version 3.0 GA and beyond.

See Also