SafeDispatch/SipComponent/Linx/Definitions.cs
2024-02-22 18:43:59 +02:00

83 lines
2.1 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace SipComponent.Linx
{
/// <summary>
/// Contains the list of LINX alarm types
/// </summary>
public enum LinxEmergencyType
{
/// <summary>
/// Man down
/// </summary>
MAN_DOWN = 1,
/// <summary>
/// Lone worker
/// </summary>
LONE_WORKER = 2,
/// <summary>
/// Motionless
/// </summary>
MOTIONLESS = 3,
/// <summary>
/// Regular
/// </summary>
REGULAR = 4
}
/// <summary>
/// Provides data about the LinxArsReceived event
/// </summary>
public class ArsReceivedEventArgs : MBusEventArgs
{
/// <summary>
/// True if the radio is on, else false
/// </summary>
public bool IsOn { get; private set; }
internal ArsReceivedEventArgs(string sipIDinDialogWith, string seqID, bool isOn)
: base(sipIDinDialogWith, seqID)
{
IsOn = isOn;
}
}
/// <summary>
/// Provides data about the LinxEmergencyAlarmReceived event
/// </summary>
public class LinxEmergencyAlarmReceivedEventArgs : MBusEventArgs
{
/// <summary>
/// The type of emergency
/// </summary>
public LinxEmergencyType EmergencyType { get; private set; }
internal LinxEmergencyAlarmReceivedEventArgs(string sipIDinDialogWith, string seqID, LinxEmergencyType emergencyType) :
base(sipIDinDialogWith, seqID)
{
this.EmergencyType = emergencyType;
}
}
/// <summary>
/// Contains a list of types of calls that a Linx can made
/// </summary>
public enum LinxTypeOfCall
{
/// <summary>
/// Full duplex Linx call, like a phone call
/// </summary>
FULL_DUPLEX,
/// <summary>
/// Half duplex Ptt call, like a radio
/// </summary>
HALF_DUPLEX
}
}