namespace AsterNET.Manager.Event
{
///
/// Raised when a Queue member's status has changed
///
public class QueueMemberStatusEvent : AbstractQueueMemberEvent
{
///
/// Returns the name of the member's interface.
/// E.g. the channel name or agent group.
///
public new string MemberName { get; set; }
///
/// Channel technology or location from which to read device state changes.
///
public new string StateInterface { get; set; }
///
/// Get/Set if the added member is a dynamic or static queue member.
/// "dynamic" if the added member is a dynamic queue member,
/// "static" if the added member is a static queue member.
///
public new string Membership { get; set; }
///
/// Get/Set the penalty for the added member. When calls are distributed
/// members with higher penalties are considered last.
///
public new int Penalty { get; set; }
///
/// Get/Set the number of calls answered by the member.
///
public new int CallsTaken { get; set; }
///
/// Get/Set the time (in seconds since 01/01/1970) the last successful call answered by the added member was hungup.
///
public new long LastCall { get; set; }
///
/// Evaluates if member is in call,
/// after LastCall time is updated.
///
public new bool InCall { get; set; }
///
/// Get/Set the status of this 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
///
///
public new int Status { get; set; }
///
/// Get/Set value if this queue member is paused (not accepting calls).
/// true if this member has been paused or false if not.
///
public new bool Paused { get; set; }
///
/// Creates a new QueueMemberStatusEvent
///
/// ManagerConnection passed through in the event.
public QueueMemberStatusEvent(ManagerConnection source)
: base(source)
{
}
}
}