2014-01-08 14:16:39 +00:00
|
|
|
namespace AsterNET.Manager.Action
|
2013-01-18 15:55:50 +00:00
|
|
|
{
|
2015-01-03 15:37:29 +00:00
|
|
|
/// <summary>
|
|
|
|
/// The AbsoluteTimeoutAction sets the absolute maximum amount of time permitted for a call on a given channel.<br />
|
|
|
|
/// Note that the timeout is set from the current time forward, not counting the number of seconds the call has already
|
|
|
|
/// been up.<br />
|
|
|
|
/// When setting a new timeout all previous absolute timeouts are cancelled.<br />
|
|
|
|
/// When the timeout is reached the call is returned to the T extension so that
|
|
|
|
/// you can playback an explanatory note to the calling party (the called party will not hear that).<br />
|
|
|
|
/// This action corresponds the the AbsoluteTimeout command used in the dialplan.
|
|
|
|
/// </summary>
|
|
|
|
public class AbsoluteTimeoutAction : ManagerAction
|
|
|
|
{
|
|
|
|
#region AbsoluteTimeoutAction()
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Creates a new empty AbsoluteTimeoutAction.
|
|
|
|
/// </summary>
|
|
|
|
public AbsoluteTimeoutAction()
|
|
|
|
{
|
|
|
|
}
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
#region AbsoluteTimeoutAction(channel, timeout)
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Creates a new AbsoluteTimeoutAction with the given channel and timeout.
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="channel">the name of the channel</param>
|
|
|
|
/// <param name="timeout">the timeout in seconds or 0 to cancel the AbsoluteTimeout</param>
|
|
|
|
public AbsoluteTimeoutAction(string channel, int timeout)
|
|
|
|
{
|
|
|
|
Channel = channel;
|
|
|
|
Timeout = timeout;
|
|
|
|
}
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
#region Action
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Get the name of this action, i.e. "AbsoluteTimeout".
|
|
|
|
/// </summary>
|
|
|
|
public override string Action
|
|
|
|
{
|
|
|
|
get { return "AbsoluteTimeout"; }
|
|
|
|
}
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
#region Channel
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Get/Set the name of the channel.
|
|
|
|
/// </summary>
|
|
|
|
public string Channel { get; set; }
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
#region Timeout
|
2013-01-18 15:55:50 +00:00
|
|
|
|
2015-01-03 15:37:29 +00:00
|
|
|
/// <summary>
|
|
|
|
/// Get/Set the timeout (in seconds) to set.
|
|
|
|
/// </summary>
|
|
|
|
public int Timeout { get; set; }
|
2013-01-18 15:55:50 +00:00
|
|
|
|
2015-01-03 15:37:29 +00:00
|
|
|
#endregion
|
|
|
|
}
|
2013-01-18 15:55:50 +00:00
|
|
|
}
|