namespace AsterNET.Manager.Event { /// /// Abstract base class for several queue member related events. /// public abstract class AbstractQueueMemberEvent : ManagerEvent { /// /// AbstractQueueMemberEvent contructor /// /// ManagerConnection passed through in the event. public AbstractQueueMemberEvent(ManagerConnection source) : base(source) { } /// /// The name of the queue. /// public string Queue { get; set; } /// /// Returns the name of the member's interface.
/// E.g. the channel name or agent group.
/// Removed since : Asterisk 12.
/// Replaced by : since Asterisk 12. ///
public string Location { get; set; } /// /// The queue member's channel technology or location.
/// Available since : Asterisk 12. ///
public string Interface { get; set; } /// /// Channel technology or location from which to read device state changes.
/// Available since : Asterisk 12. ///
public string StateInterface { get; set; } /// /// The name of the queue member.
/// Available since : Asterisk 12. ///
public string MemberName { get; set; } /// /// "dynamic" if the added member is a dynamic queue member,
/// "realtime" if the added member is a realtime queue member,
/// "static" if the added member is a static queue member.
/// Available since : Asterisk 12. ///
public string Membership { get; set; } /// /// The penalty associated with the queue member. When calls are distributed members with higher penalties are considered last.
/// Available since : Asterisk 12. ///
public int Penalty { get; set; } /// /// The number of calls this queue member has serviced.
/// Available since : Asterisk 12. ///
public int CallsTaken { get; set; } /// /// The time this member last took a call, expressed in seconds since 00:00, Jan 1, 1970 UTC.
/// Available since : Asterisk 12. ///
public long LastCall { get; set; } /// /// When queue member is paused (not accepting calls).
/// Evaluates if this member has been paused, /// if not.
/// Available since : Asterisk 12. ///
public bool Paused { get; set; } /// /// The numeric device state status of the queue member.
/// /// Valid status codes are:
/// /// AST_DEVICE_UNKNOWN /// AST_DEVICE_NOT_INUSE /// AST_DEVICE_INUSE /// AST_DEVICE_BUSY /// AST_DEVICE_INVALID /// AST_DEVICE_UNAVAILABLE /// AST_DEVICE_RINGING /// AST_DEVICE_RINGINUSE /// AST_DEVICE_ONHOLD /// ///
/// Available since : Asterisk 12. ///
public int Status { get; set; } /// /// Evaluates if Ringinuse, /// if not.
/// Available since : Asterisk 12. ///
public bool Ringinuse { get; set; } /// /// Evaluates if member is in call, /// after LastCall time is updated.
/// Available since : Asterisk 13. ///
public bool InCall { get; set; } /// /// If set when paused, the reason the queue member was paused.
/// Available since : Asterisk 13. ///
public string PausedReason { get; set; } } }