Ejemplo n.º 1
0
 public void StayArmTest()
 {
     using (var manager = new IpModuleManager(module))
     {
         manager.Login();
         manager.GetAlarmInformation();
         manager.AlarmAction(PartitionNumber.Two, AlarmMode.RegularArm);
         manager.Logout();
     }
 }
Ejemplo n.º 2
0
 public void GetStatusTest()
 {
     using (var manager = new IpModuleManager(module))
     {
         manager.Login();
         manager.GetAlarmInformation();
         manager.GetStatus();
         manager.Logout();
     }
 }
Ejemplo n.º 3
0
 private void BtnConnect_Click(object sender, RoutedEventArgs e)
 {
     ipmm.Logout();
     BtnConnect.IsEnabled = false;
     if (!ipmm.IsLoggedIn)
     {
         ipmm.Login();
     }
     ipmm.GetAlarmInformation();
     BtnGetAlarmInfo.IsEnabled    = true;
     BtnGetDeviceStatus.IsEnabled = true;
     BtnGetVersionInfo.IsEnabled  = true;
     CmbArming.IsEnabled          = true;
     ipmm.DeviceStatusChanged    += Ipmm_DeviceStatusChanged;
     AllDevices             = new ObservableCollection <Device>(ipmm.Devices);
     LstDevices.ItemsSource = AllDevices;
     dt.Interval            = new TimeSpan(0, 0, 0, 1, 50);
     dt.Start();
     dt.Tick += Dt_Tick;
 }
        public AlarmInformationResponse Get(AlarmInformationRequest request)
        {
            manager.GetAlarmInformation();
            manager.GetVersionInformation();

            return(new AlarmInformationResponse()
            {
                Action = "info",
                SiteName = manager.SystemName,
                IpModuleEco = manager.Module.IpModuleVersion.Eco,
                IpModuleFirmwareVersion = manager.Module.IpModuleVersion.FirmwareVersion,
                IpModuleHardwareVersion = manager.Module.IpModuleVersion.HardwareVersion,
                IpModuleIpBoot = manager.Module.IpModuleVersion.IpBoot,
                IpModuleMacAddress = manager.Module.IpModuleVersion.MacAddress,
                IpModuleSerialBoot = manager.Module.IpModuleVersion.SerialBoot,
                IpModuleSerialNumber = manager.Module.IpModuleVersion.SerialNumber,
                PanelFirmwareVersion = manager.Module.AlarmPanelVersion.FirmwareVersion,
                PanelSerialNumber = manager.Module.AlarmPanelVersion.SerialNumber,
                PanelType = manager.Module.AlarmPanelVersion.Type
            });
        }
Ejemplo n.º 5
0
        public void GetSystemDataTest()
        {
            using (var manager = new IpModuleManager(module))
            {
                manager.Login();
                manager.GetAlarmInformation();
                manager.Logout();

                Assert.IsNotEmpty(manager.TroubleCodes);
                Assert.IsNotEmpty(manager.Devices);
                Assert.IsNotEmpty(manager.Partitions);
            }
        }
Ejemplo n.º 6
0
        public void StatusEventTest()
        {
            using (var manager = new IpModuleManager(module))
            {
                manager.Login();
                manager.GetAlarmInformation();
                manager.AlarmStatusUpdate += (sender, args) => Console.Write("raised");
                manager.MonitorEvents();
                manager.GetStatus();
                Thread.Sleep(1500);
                manager.GetStatus();

                manager.ShouldRaise("AlarmStatusUpdate");

                manager.Logout();
            }
        }
        public override void Configure(Container container)
        {
            GlobalResponseFilters.Add((req, res, dto) =>
            {
                res.AddHeader("X-Paradox", ServiceName);
            });

            JsConfig.EmitCamelCaseNames = true;
            Plugins.Add(new SwaggerFeature());

            bool smartThingsEnabled = Convert.ToBoolean(ConfigurationManager.AppSettings["enableSmartThings"]);

            if (smartThingsEnabled)
            {
                Plugins.Add(new SmartThingsPlugin());
            }

            var manager = new IpModuleManager(module);

            // try one attempt to logout/login if can't login initially
            if (!manager.Login())
            {
                logger.Warn("Couldn't login. Attempting to logout then login to alarm module.");
                manager.Logout();
                manager.Login();
            }

            try
            {
                manager.GetAlarmInformation();
            }
            catch (Exception)
            {
                logger.Error("Problem logging in and getting alarm information. Services will start but Alarm host will not be connected.");
            }

            container.Register(manager);

            alarmStatusCheckThread = new Thread(manager.StartStatusUpdates);
            container.Register(alarmStatusCheckThread);
            alarmStatusCheckThread.Start();
        }