From d055641b18795e6ab95f9745414e737d6154298b Mon Sep 17 00:00:00 2001 From: Deantwo Date: Thu, 21 Dec 2017 16:02:23 +0100 Subject: [PATCH 1/9] Update QueueCallerJoinEvent.cs Inheritance from JoinEvent. --- .../Manager/Event/QueueCallerJoinEvent.cs | 30 +++++++++++++------ 1 file changed, 21 insertions(+), 9 deletions(-) diff --git a/Asterisk.2013/Asterisk.NET/Manager/Event/QueueCallerJoinEvent.cs b/Asterisk.2013/Asterisk.NET/Manager/Event/QueueCallerJoinEvent.cs index 0416417..ced7e16 100644 --- a/Asterisk.2013/Asterisk.NET/Manager/Event/QueueCallerJoinEvent.cs +++ b/Asterisk.2013/Asterisk.NET/Manager/Event/QueueCallerJoinEvent.cs @@ -1,15 +1,27 @@ namespace AsterNET.Manager.Event { - /// - /// A QueueCallerJoinEvent is triggered when a channel joins a queue.
- ///
- public class QueueCallerJoinEvent : QueueEvent - { - public string Position { get; set; } - - public QueueCallerJoinEvent(ManagerConnection source) + /// + /// A QueueCallerJoinEvent is triggered when a channel joins a queue.
+ ///
+ public class QueueCallerJoinEvent : JoinEvent + { + // "Channel" in ManagerEvent.cs + + // "Queue" in QueueEvent.cs + + /// + /// Get/Set the Caller*ID number of the channel that joined the queue if set. + /// If the channel has no caller id set "unknown" is returned. + /// + public string CallerIDNum { get; set; } + + // "CallerIdName" in JoinEvent.cs + + // "Position" in JoinEvent.cs + + public QueueCallerJoinEvent(ManagerConnection source) : base(source) { } } -} \ No newline at end of file +} From 7d06b2cfaf517715e4becba9300ff0183197e125 Mon Sep 17 00:00:00 2001 From: Deantwo Date: Thu, 21 Dec 2017 16:03:57 +0100 Subject: [PATCH 2/9] Update QueueCallerLeaveEvent.cs Inheritance from LeaveEvent. --- .../Manager/Event/QueueCallerLeaveEvent.cs | 22 +++++++++++-------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/Asterisk.2013/Asterisk.NET/Manager/Event/QueueCallerLeaveEvent.cs b/Asterisk.2013/Asterisk.NET/Manager/Event/QueueCallerLeaveEvent.cs index dff535a..86fc7b8 100644 --- a/Asterisk.2013/Asterisk.NET/Manager/Event/QueueCallerLeaveEvent.cs +++ b/Asterisk.2013/Asterisk.NET/Manager/Event/QueueCallerLeaveEvent.cs @@ -1,15 +1,19 @@ namespace AsterNET.Manager.Event { - /// - /// A QueueCallerLeaveEvent is triggered when a channel leaves a queue.
- ///
- public class QueueCallerLeaveEvent : QueueEvent - { - public string Position { get; set; } - - public QueueCallerLeaveEvent(ManagerConnection source) + /// + /// A QueueCallerLeaveEvent is triggered when a channel leaves a queue.
+ ///
+ public class QueueCallerLeaveEvent : LeaveEvent + { + // "Channel" in ManagerEvent.cs + + // "Queue" in QueueEvent.cs + + // "Count" in QueueEvent.cs + + public QueueCallerLeaveEvent(ManagerConnection source) : base(source) { } } -} \ No newline at end of file +} From 7d9260f4194adca99d513699275bcc25d394dda7 Mon Sep 17 00:00:00 2001 From: Deantwo Date: Thu, 21 Dec 2017 16:16:28 +0100 Subject: [PATCH 3/9] Removed CallerIdNum Makes it much easier to work with if it is the same as JoinEvent. --- .../Asterisk.NET/Manager/Event/QueueCallerJoinEvent.cs | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/Asterisk.2013/Asterisk.NET/Manager/Event/QueueCallerJoinEvent.cs b/Asterisk.2013/Asterisk.NET/Manager/Event/QueueCallerJoinEvent.cs index ced7e16..78e7c65 100644 --- a/Asterisk.2013/Asterisk.NET/Manager/Event/QueueCallerJoinEvent.cs +++ b/Asterisk.2013/Asterisk.NET/Manager/Event/QueueCallerJoinEvent.cs @@ -9,11 +9,7 @@ namespace AsterNET.Manager.Event // "Queue" in QueueEvent.cs - /// - /// Get/Set the Caller*ID number of the channel that joined the queue if set. - /// If the channel has no caller id set "unknown" is returned. - /// - public string CallerIDNum { get; set; } + // "CallerId" in JoinEvent.cs // "CallerIdName" in JoinEvent.cs From 7bab07421d0bdb9c72b67917daca74f468a25c5d Mon Sep 17 00:00:00 2001 From: Deantwo Date: Fri, 22 Dec 2017 14:09:10 +0100 Subject: [PATCH 4/9] Fixed Inheritance Bug 1 --- .../Manager/Event/QueueMemberAddedEvent.cs | 76 +++---------------- 1 file changed, 12 insertions(+), 64 deletions(-) diff --git a/Asterisk.2013/Asterisk.NET/Manager/Event/QueueMemberAddedEvent.cs b/Asterisk.2013/Asterisk.NET/Manager/Event/QueueMemberAddedEvent.cs index 0bd5cd9..4ee20fa 100644 --- a/Asterisk.2013/Asterisk.NET/Manager/Event/QueueMemberAddedEvent.cs +++ b/Asterisk.2013/Asterisk.NET/Manager/Event/QueueMemberAddedEvent.cs @@ -1,73 +1,21 @@ namespace AsterNET.Manager.Event { - /// - /// A QueueMemberAddedEvent is triggered when a queue member is added to a queue.
- /// It is implemented in apps/app_queue.c.
- /// - /// Available since : Asterisk 1.2.
- ///
- ///
- public class QueueMemberAddedEvent : AbstractQueueMemberEvent + /// + /// A QueueMemberAddedEvent is triggered when a queue member is added to a queue.
+ /// It is implemented in apps/app_queue.c.
+ /// + /// Available since : Asterisk 1.2.
+ ///
+ ///
+ public class QueueMemberAddedEvent : AbstractQueueMemberEvent { /// - /// Returns the name of the member's interface.
- /// E.g. the channel name or agent group. + /// Creates a new QueueMemberAddedEvent ///
- public new string MemberName { 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; } - - /// - /// 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 QueueMemberAddedEvent - /// - /// ManagerConnection passed through in the event. - public QueueMemberAddedEvent(ManagerConnection source) + /// ManagerConnection passed through in the event. + public QueueMemberAddedEvent(ManagerConnection source) : base(source) { } } -} \ No newline at end of file +} From c4431787a1b3e9f29b3cc785eb7c349bbb63b1b0 Mon Sep 17 00:00:00 2001 From: Deantwo Date: Fri, 22 Dec 2017 14:10:53 +0100 Subject: [PATCH 5/9] Fixed Inheritance Bug 2 --- .../Manager/Event/QueueMemberPausedEvent.cs | 52 ++++++++----------- 1 file changed, 21 insertions(+), 31 deletions(-) diff --git a/Asterisk.2013/Asterisk.NET/Manager/Event/QueueMemberPausedEvent.cs b/Asterisk.2013/Asterisk.NET/Manager/Event/QueueMemberPausedEvent.cs index 6d00390..1aff4ba 100644 --- a/Asterisk.2013/Asterisk.NET/Manager/Event/QueueMemberPausedEvent.cs +++ b/Asterisk.2013/Asterisk.NET/Manager/Event/QueueMemberPausedEvent.cs @@ -2,39 +2,29 @@ using System; namespace AsterNET.Manager.Event { - /// - /// A QueueMemberPausedEvent is triggered when a queue member is paused or unpaused.
- /// It is implemented in apps/app_queue.c.
- /// - /// Available since : Asterisk 1.2.
- /// Replaced by : since Asterisk 12.
- /// Removed since : Asterisk 13.
- ///
- ///
+ /// + /// A QueueMemberPausedEvent is triggered when a queue member is paused or unpaused.
+ /// It is implemented in apps/app_queue.c.
+ /// + /// Available since : Asterisk 1.2.
+ /// Replaced by : since Asterisk 12.
+ /// Removed since : Asterisk 13.
+ ///
+ ///
public class QueueMemberPausedEvent : AbstractQueueMemberEvent { - /// - /// The reason a member was paused - /// - public string Reason { get; set; } - - /// - /// Not Available, use instead. - /// - public new string PausedReason { get; set; } - - /// - /// Not Available, use instead. - /// - public new bool InCall { get; set; } - - /// - /// Creates a new QueueMemberPausedEvent - /// - /// ManagerConnection passed through in the event. - public QueueMemberPausedEvent(ManagerConnection source) + /// + /// The reason a member was paused + /// + public string Reason { get; set; } + + /// + /// Creates a new QueueMemberPausedEvent + /// + /// ManagerConnection passed through in the event. + public QueueMemberPausedEvent(ManagerConnection source) : base(source) { - } + } } -} \ No newline at end of file +} From 0949c1011e28044495cfeda866622ad53fe7530e Mon Sep 17 00:00:00 2001 From: Deantwo Date: Fri, 22 Dec 2017 14:11:33 +0100 Subject: [PATCH 6/9] Fixed Inheritance Bug 3 --- .../Manager/Event/QueueMemberPenaltyEvent.cs | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/Asterisk.2013/Asterisk.NET/Manager/Event/QueueMemberPenaltyEvent.cs b/Asterisk.2013/Asterisk.NET/Manager/Event/QueueMemberPenaltyEvent.cs index 417c46b..8918042 100644 --- a/Asterisk.2013/Asterisk.NET/Manager/Event/QueueMemberPenaltyEvent.cs +++ b/Asterisk.2013/Asterisk.NET/Manager/Event/QueueMemberPenaltyEvent.cs @@ -6,15 +6,10 @@ namespace AsterNET.Manager.Event public class QueueMemberPenaltyEvent : AbstractQueueMemberEvent { /// - /// Get/Set the penalty for the queue location. + /// Creates a new QueueMemberPenaltyEvent /// - public new int Penalty { get; set; } - - /// - /// Creates a new QueueMemberPenaltyEvent - /// - /// ManagerConnection passed through in the event. - public QueueMemberPenaltyEvent(ManagerConnection source) + /// ManagerConnection passed through in the event. + public QueueMemberPenaltyEvent(ManagerConnection source) : base(source) { } From 77b07a324736bfb4a3beca4e27af3d9bb415a122 Mon Sep 17 00:00:00 2001 From: Deantwo Date: Fri, 22 Dec 2017 14:12:02 +0100 Subject: [PATCH 7/9] Fixed Inheritance Bug 4 --- .../Manager/Event/QueueMemberRemovedEvent.cs | 28 ++++++++----------- 1 file changed, 11 insertions(+), 17 deletions(-) diff --git a/Asterisk.2013/Asterisk.NET/Manager/Event/QueueMemberRemovedEvent.cs b/Asterisk.2013/Asterisk.NET/Manager/Event/QueueMemberRemovedEvent.cs index b8d424d..27182e1 100644 --- a/Asterisk.2013/Asterisk.NET/Manager/Event/QueueMemberRemovedEvent.cs +++ b/Asterisk.2013/Asterisk.NET/Manager/Event/QueueMemberRemovedEvent.cs @@ -1,27 +1,21 @@ namespace AsterNET.Manager.Event { - /// - /// A QueueMemberRemovedEvent is triggered when a queue member is removed from a queue.
- /// It is implemented in apps/app_queue.c.
- /// - /// Available since : Asterisk 1.2.
- ///
- ///
- public class QueueMemberRemovedEvent : AbstractQueueMemberEvent + /// + /// A QueueMemberRemovedEvent is triggered when a queue member is removed from a queue.
+ /// It is implemented in apps/app_queue.c.
+ /// + /// Available since : Asterisk 1.2.
+ ///
+ ///
+ public class QueueMemberRemovedEvent : AbstractQueueMemberEvent { /// - /// Returns the name of the member's interface.
- /// E.g. the channel name or agent group. + /// Creates a new QueueMemberRemovedEvent ///
- public new string MemberName { get; set; } - - /// - /// Creates a new QueueMemberRemovedEvent - /// - /// ManagerConnection passed through in the event. + /// ManagerConnection passed through in the event. public QueueMemberRemovedEvent(ManagerConnection source) : base(source) { } } -} \ No newline at end of file +} From d541b23213fa1ad686e1349ff774b19fdb5187fe Mon Sep 17 00:00:00 2001 From: Deantwo Date: Fri, 22 Dec 2017 14:13:07 +0100 Subject: [PATCH 8/9] Fixed Inheritance Bug 5 --- .../Event/QueueMemberRinginuseEvent.cs | 27 +++++++------------ 1 file changed, 10 insertions(+), 17 deletions(-) diff --git a/Asterisk.2013/Asterisk.NET/Manager/Event/QueueMemberRinginuseEvent.cs b/Asterisk.2013/Asterisk.NET/Manager/Event/QueueMemberRinginuseEvent.cs index 97a2b23..05c1c0c 100644 --- a/Asterisk.2013/Asterisk.NET/Manager/Event/QueueMemberRinginuseEvent.cs +++ b/Asterisk.2013/Asterisk.NET/Manager/Event/QueueMemberRinginuseEvent.cs @@ -1,24 +1,17 @@ namespace AsterNET.Manager.Event { - /// - /// Raised when a member's ringinuse setting is changed - /// - public class QueueMemberRinginuseEvent : AbstractQueueMemberEvent - { - - /// - /// Evaluates if Ringinuse, - /// if not.
- ///
- public new bool Ringinuse { get; set; } - - /// - /// Creates a new QueueMemberRinginuseEvent - /// - /// ManagerConnection passed through in the event. + /// + /// Raised when a member's ringinuse setting is changed + /// + public class QueueMemberRinginuseEvent : AbstractQueueMemberEvent + { + /// + /// Creates a new QueueMemberRinginuseEvent + /// + /// ManagerConnection passed through in the event. public QueueMemberRinginuseEvent(ManagerConnection source) : base(source) { } } -} \ No newline at end of file +} From 7e7d02acb9601e4b6a4fb5b1acf9806aecc2c900 Mon Sep 17 00:00:00 2001 From: Deantwo Date: Fri, 22 Dec 2017 14:13:41 +0100 Subject: [PATCH 9/9] Fixed Inheritance Bug 6 --- .../Manager/Event/QueueMemberStatusEvent.cs | 83 +++---------------- 1 file changed, 10 insertions(+), 73 deletions(-) diff --git a/Asterisk.2013/Asterisk.NET/Manager/Event/QueueMemberStatusEvent.cs b/Asterisk.2013/Asterisk.NET/Manager/Event/QueueMemberStatusEvent.cs index fb1fce9..8cafaf7 100644 --- a/Asterisk.2013/Asterisk.NET/Manager/Event/QueueMemberStatusEvent.cs +++ b/Asterisk.2013/Asterisk.NET/Manager/Event/QueueMemberStatusEvent.cs @@ -1,80 +1,17 @@ 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. + /// + /// Raised when a Queue member's status has changed + /// + public class QueueMemberStatusEvent : AbstractQueueMemberEvent + { + /// + /// Creates a new QueueMemberStatusEvent + /// + /// ManagerConnection passed through in the event. public QueueMemberStatusEvent(ManagerConnection source) : base(source) { } } -} \ No newline at end of file +}