namespace Asterisk.NET.Manager.Event
{
///
/// An AgentsEvent is triggered for each agent in response to an AgentsAction.
/// Available since Asterisk 1.2
///
///
public class AgentsEvent : ResponseEvent
{
private string agent;
private string name;
private string status;
private string loggedInChan;
private string talkingTo;
private long loggedInTime;
///
/// Get/Set the agentid.
///
public string Agent
{
get { return this.agent; }
set { this.agent = value; }
}
///
/// Get/Set the name of this agent.
///
public string Name
{
get { return this.name; }
set { this.name = value; }
}
///
/// Get/Set the status of this agent.
/// This is one of
///
/// - "AGENT_LOGGEDOFF"
/// - Agent isn't logged in
/// - "AGENT_IDLE"
/// - Agent is logged in, and waiting for call
/// - "AGENT_ONCALL"
/// - Agent is logged in, and on a call
/// - "AGENT_UNKNOWN"
/// - Don't know anything about agent. Shouldn't ever get this.
///
///
public string Status
{
get { return this.status; }
set { this.status = value; }
}
///
/// Get/Set the name of channel this agent logged in from or "n/a" if the agent is not logged in.
///
public string LoggedInChan
{
get { return this.loggedInChan; }
set { this.loggedInChan = value; }
}
///
/// Get/Set the time (in seconds since 01/01/1970) when the agent logged in or 0 if the user is not logged.
///
public long LoggedInTime
{
get { return this.loggedInTime; }
set { this.loggedInTime = value; }
}
///
/// Get/Set the numerical Caller*ID of the channel this agent is talking toor "n/a" if this agent is talking to nobody.
///
public string TalkingTo
{
get { return this.talkingTo; }
set { this.talkingTo = value; }
}
public AgentsEvent(ManagerConnection source)
: base(source)
{
}
}
}