114 lines
3.4 KiB
C#
114 lines
3.4 KiB
C#
using System;
|
|
namespace AsterNET.Manager.Event
|
|
{
|
|
/// <summary>
|
|
/// A QueueParamsEvent is triggered in response to a QueueStatusAction and contains the parameters of a queue.<br/>
|
|
/// It is implemented in apps/app_queue.c
|
|
/// </summary>
|
|
/// <seealso cref="Manager.Action.QueueStatusAction" />
|
|
public class QueueParamsEvent : ResponseEvent
|
|
{
|
|
private string queue;
|
|
private int max;
|
|
private int calls;
|
|
private int holdtime;
|
|
private int completed;
|
|
private int abandoned;
|
|
private int serviceLevel;
|
|
private Double serviceLevelPerf;
|
|
private int weight;
|
|
private string strategy;
|
|
|
|
/// <summary>
|
|
/// Get/Set queue strategy.
|
|
/// </summary>
|
|
public string Strategy
|
|
{
|
|
get { return strategy; }
|
|
set { this.strategy = value; }
|
|
}
|
|
/// <summary>
|
|
/// Get/Set the name of the queue.
|
|
/// </summary>
|
|
public string Queue
|
|
{
|
|
get { return queue; }
|
|
set { this.queue = value; }
|
|
}
|
|
/// <summary> Returns the maximum number of people waiting in the queue or 0 for unlimited.<br/>
|
|
/// This corresponds to the maxlen setting in queues.conf.
|
|
/// </summary>
|
|
/// <summary> Sets the maximum number of people waiting in the queue.</summary>
|
|
public int Max
|
|
{
|
|
get { return max; }
|
|
set { this.max = value; }
|
|
}
|
|
/// <summary> Returns the number of calls currently waiting in the queue.</summary>
|
|
/// <summary> Sets the number of calls currently waiting in the queue.</summary>
|
|
public int Calls
|
|
{
|
|
get { return calls; }
|
|
set { this.calls = value; }
|
|
}
|
|
/// <summary> Returns the current average holdtime for this queue (in seconds).</summary>
|
|
/// <summary> Sets the current average holdtime for this queue.</summary>
|
|
public int Holdtime
|
|
{
|
|
get { return holdtime; }
|
|
set { this.holdtime = value; }
|
|
}
|
|
/// <summary> Returns the number of completed calls.</summary>
|
|
/// <summary> Sets the number of completed calls.</summary>
|
|
public int Completed
|
|
{
|
|
get { return completed; }
|
|
set { this.completed = value; }
|
|
}
|
|
/// <summary> Returns the number of abandoned calls.</summary>
|
|
/// <summary> Sets the number of abandoned calls.</summary>
|
|
public int Abandoned
|
|
{
|
|
get { return abandoned; }
|
|
set { this.abandoned = value; }
|
|
}
|
|
/// <summary> Returns the service level (in seconds) as defined by the servicelevel setting
|
|
/// in queues.conf.
|
|
/// </summary>
|
|
/// <summary> Sets the service level.</summary>
|
|
public int ServiceLevel
|
|
{
|
|
get { return serviceLevel; }
|
|
set { this.serviceLevel = value; }
|
|
}
|
|
/// <summary> Returns the ratio of calls answered within the specified service level per total completed
|
|
/// calls (in percent).
|
|
/// </summary>
|
|
/// <summary> Sets the ratio of calls answered within the specified service level per total completed
|
|
/// calls.
|
|
/// </summary>
|
|
public Double ServiceLevelPerf
|
|
{
|
|
get { return serviceLevelPerf; }
|
|
set { this.serviceLevelPerf = value; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// Returns the weight of this queue.<br/>
|
|
/// A queues can be assigned a 'weight' to ensure calls waiting in a
|
|
/// higher priority queue will deliver its calls first. Only delays
|
|
/// the lower weight queue's call if the member is also in the
|
|
/// higher weight queue.
|
|
/// </summary>
|
|
public int Weight
|
|
{
|
|
get { return weight; }
|
|
set { this.weight = value; }
|
|
}
|
|
|
|
public QueueParamsEvent(ManagerConnection source)
|
|
: base(source)
|
|
{
|
|
}
|
|
}
|
|
} |