Exemple #1
0
        public static clsArea seleccionarArea(clsArea objArea)
        {
            List <SqlParameter> lstParametrosSQL = new List <SqlParameter>();
            SqlParameter        sqlParametro;

            lstParametrosSQL = crearLista(objArea);

            sqlParametro = new SqlParameter();
            sqlParametro.ParameterName = "@Accion";
            sqlParametro.Value         = 4;
            sqlParametro.Direction     = ParameterDirection.Input;

            lstParametrosSQL.Add(sqlParametro);

            sqlParametro = new SqlParameter();
            sqlParametro.ParameterName = "@IdGenerado";
            sqlParametro.Value         = 0;
            sqlParametro.Direction     = ParameterDirection.Output;

            lstParametrosSQL.Add(sqlParametro);

            DataTable dtResultado = clsGestorBD.ejecutarStoredProcedureDataTable("up_ManArea", lstParametrosSQL);

            objArea.Nombre      = dtResultado.Rows[0]["Nombre"].ToString();
            objArea.TipoArea    = dtResultado.Rows[0]["TipoArea"].ToString();
            objArea.Descripcion = dtResultado.Rows[0]["Descripcion"].ToString();

            return(objArea);
        }
Exemple #2
0
        private void mostrarInformacion(clsArea objArea, int numAccion)
        {
            if (numAccion != clsComun.INSERTAR)
            {
                txtNombreDetalle.Text       = objArea.Nombre;
                cboTipoDetalle.Text         = objArea.TipoArea;
                rtxtDescripcionDetalle.Text = objArea.Descripcion;
            }

            if (numAccion == clsComun.VER)
            {
                txtNombreDetalle.Solo_Lectura       = SistemaCentroSalud.Controles.cuTextBox.SoloLectura.verdadero;
                cboTipoDetalle.Enabled              = false;
                rtxtDescripcionDetalle.Solo_Lectura = SistemaCentroSalud.Controles.cuRichTextBox.SoloLectura.verdadero;

                btnCancelar.Visible = false;
                btnGuardar.Text     = "Volver";
            }
            else
            {
                txtNombreDetalle.Solo_Lectura       = SistemaCentroSalud.Controles.cuTextBox.SoloLectura.falso;
                cboTipoDetalle.Enabled              = true;
                rtxtDescripcionDetalle.Solo_Lectura = SistemaCentroSalud.Controles.cuRichTextBox.SoloLectura.falso;

                btnCancelar.Visible = true;
                btnGuardar.Text     = "Guardar";
            }

            clsComun.tabSiguiente(tbcArea, tbpBuscar, tbpDetalle);
        }
Exemple #3
0
        private void ProcessAreaReceived(clsArea area, Topic command, string payload)
        {
            int code;

            (payload, code) = payload.ToCommandCode();

            if (command == Topic.command && Enum.TryParse(payload, true, out AreaCommands cmd))
            {
                if (area.Number == 0)
                {
                    log.Debug("SetArea: 0 implies all areas will be changed");
                }

                log.Debug("SetArea: {id} to {value}", area.Number, cmd.ToString().Replace("arm_", "").Replace("_", " "));
                OmniLink.SendCommand(AreaMapping[cmd], (byte)code, (ushort)area.Number);
            }
            else if (command == Topic.alarm_command && area.Number > 0 && Enum.TryParse(payload, true, out AlarmCommands alarm))
            {
                log.Debug("SetAreaAlarm: {id} to {value}", area.Number, payload);

                OmniLink.Controller.Connection.Send(new clsOL2MsgActivateKeypadEmg(OmniLink.Controller.Connection)
                {
                    Area    = (byte)area.Number,
                    EmgType = (byte)alarm
                }, (M, B, Timeout) => { });
            }
        }
        public static string ToBasicState(this clsArea area)
        {
            if (area.AreaAlarms.IsBitSet(0) ||  // Burgulary
                area.AreaAlarms.IsBitSet(3) ||  // Auxiliary
                area.AreaAlarms.IsBitSet(6))    // Duress
            {
                return("triggered");
            }
            else if (area.ExitTimer > 0)
            {
                return("pending");
            }

            switch (area.AreaMode)
            {
            case enuSecurityMode.Night:
            case enuSecurityMode.NightDly:
                return("armed_night");

            case enuSecurityMode.Day:
            case enuSecurityMode.DayInst:
                return("armed_home");

            case enuSecurityMode.Away:
            case enuSecurityMode.Vacation:
                return("armed_away");

            case enuSecurityMode.Off:
            default:
                return("disarmed");
            }
        }
Exemple #5
0
        public static bool eliminarArea(clsArea objArea)
        {
            List <SqlParameter> lstParametrosSQL = new List <SqlParameter>();
            SqlParameter        sqlParametro;

            lstParametrosSQL = crearLista(objArea);

            sqlParametro = new SqlParameter();
            sqlParametro.ParameterName = "@Accion";
            sqlParametro.Value         = 2;
            sqlParametro.Direction     = ParameterDirection.Input;

            lstParametrosSQL.Add(sqlParametro);

            sqlParametro = new SqlParameter();
            sqlParametro.ParameterName = "@IdGenerado";
            sqlParametro.Value         = 0;
            sqlParametro.Direction     = ParameterDirection.Output;

            lstParametrosSQL.Add(sqlParametro);

            int numResultado = clsGestorBD.ejecutarStoredProcedureInt("up_ManArea", lstParametrosSQL);

            if (numResultado != 0)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
Exemple #6
0
        private void cargarCombosArea()
        {
            clsArea objArea = new clsArea();

            objArea.TipoArea = "MÉDICA";

            DataTable dt = ctrArea.seleccionarAreasCriterios(objArea);

            objArea.Nombre = "SELECCIONAR";

            cboArea.Items.Add(objArea);

            objArea        = new clsArea();
            objArea.Nombre = "TODAS";

            cboAreaBuscar.Items.Add(objArea);

            for (int i = 0; i < dt.Rows.Count; i++)
            {
                objArea = new clsArea();

                objArea.IdArea = Int32.Parse(dt.Rows[i]["IdArea"].ToString());
                objArea.Nombre = dt.Rows[i]["Nombre"].ToString();

                cboArea.Items.Add(objArea);
                cboAreaBuscar.Items.Add(objArea);
            }
        }
Exemple #7
0
        public static string ToBasicState(this clsArea area)
        {
            if (area.AreaBurglaryAlarmText != "OK")
            {
                return("triggered");
            }
            else if (area.ExitTimer > 0)
            {
                return("pending");
            }

            switch (area.AreaMode)
            {
            case enuSecurityMode.Night:
            case enuSecurityMode.NightDly:
                return("armed_night");

            case enuSecurityMode.Day:
            case enuSecurityMode.DayInst:
                return("armed_home");

            case enuSecurityMode.Away:
            case enuSecurityMode.Vacation:
                return("armed_away");

            case enuSecurityMode.Off:
            default:
                return("disarmed");
            }
        }
        public List <pa_PeticionesWeb_Catalogos_Obtener_Areas_Result> ObtenerAreas(clsArea pEntrada, ErrorProcedimientoAlmacenado pError)
        {
            var respuestaWeb = new List <pa_PeticionesWeb_Catalogos_Obtener_Areas_Result>();

            try
            {
                using (var Db = new TramitesDigitalesEntities())
                {
                    respuestaWeb = Db.pa_PeticionesWeb_Catalogos_Obtener_Areas(
                        estatusRegistro: pEntrada.EstatusRegistro,
                        pi_errorNumero: pError.Numero,
                        pnvc_errorMensaje: pError.Mensaje,
                        pi_errorLinea: pError.Linea,
                        pnvc_errorProcAlm: pError.ProcedimientoAlmacenado,
                        pi_errorSeveridad: pError.Severidad,
                        pi_errorEstado: pError.Estado
                        ).ToList();
                }
            }
            catch
            {
                throw;
            }
            return(respuestaWeb);
        }
Exemple #9
0
        public static List <clsArea> up_SelArea(string strTipoArea, string strEstadoArea)
        {
            List <clsArea> lstAreas = new List <clsArea>();
            DataTable      dtAreas  = clsGestorBD.up_SelArea(0, "", strTipoArea, strEstadoArea, clsGestorBD.SELECTCUSTOM);

            for (int i = 0; i < dtAreas.Rows.Count; i++)
            {
                string strId          = dtAreas.Rows[i][0].ToString();
                string strNombre      = dtAreas.Rows[i][1].ToString();
                string strDescripcion = dtAreas.Rows[i][2].ToString();
                string strTipo        = dtAreas.Rows[i][3].ToString();
                string strEstado      = dtAreas.Rows[i][4].ToString();

                clsArea objArea = new clsArea();

                objArea.NumIdArea      = Int32.Parse(strId);
                objArea.StrNombre      = strNombre;
                objArea.StrDescripcion = strDescripcion;
                objArea.StrTipoArea    = strTipo;
                objArea.StrEstado      = strEstado;

                lstAreas.Add(objArea);
            }

            return(lstAreas);
        }
        public static Alarm ToConfig(this clsArea area)
        {
            Alarm ret = new Alarm();

            ret.name          = Global.mqtt_discovery_name_prefix + area.Name;
            ret.state_topic   = area.ToTopic(Topic.basic_state);
            ret.command_topic = area.ToTopic(Topic.command);
            return(ret);
        }
        public static Alarm ToConfig(this clsArea area)
        {
            Alarm ret = new Alarm();

            ret.unique_id     = $"{Global.mqtt_prefix}area{area.Number.ToString()}";
            ret.name          = Global.mqtt_discovery_name_prefix + area.Name;
            ret.state_topic   = area.ToTopic(Topic.basic_state);
            ret.command_topic = area.ToTopic(Topic.command);
            return(ret);
        }
        public static BinarySensor ToConfigBurglary(this clsArea area)
        {
            BinarySensor ret = new BinarySensor();

            ret.name           = $"{Global.mqtt_discovery_name_prefix}{area.Name} Burglary";
            ret.device_class   = BinarySensor.DeviceClass.safety;
            ret.state_topic    = area.ToTopic(Topic.json_state);
            ret.value_template = "{% if value_json.burglary_alarm %} ON {%- else -%} OFF {%- endif %}";
            return(ret);
        }
        public static BinarySensor ToConfigTemp(this clsArea area)
        {
            BinarySensor ret = new BinarySensor();

            ret.unique_id      = $"{Global.mqtt_prefix}area{area.Number.ToString()}temp";
            ret.name           = $"{Global.mqtt_discovery_name_prefix}{area.Name} Temp";
            ret.device_class   = BinarySensor.DeviceClass.heat;
            ret.state_topic    = area.ToTopic(Topic.json_state);
            ret.value_template = "{% if value_json.temperature_alarm %} ON {%- else -%} OFF {%- endif %}";
            return(ret);
        }
Exemple #14
0
        public AreaContract GetArea(ushort id)
        {
            Event.WriteVerbose("WebService", "GetArea: " + id);

            WebOperationContext ctx = WebOperationContext.Current;

            ctx.OutgoingResponse.Headers.Add("type", "area");

            clsArea area = WebService.HAC.Areas[id];

            return(Helper.ConvertArea(id, area));
        }
Exemple #15
0
        public JsonResult GetAreas()
        {
            ErrorProcedimientoAlmacenado errorErrror = new ErrorProcedimientoAlmacenado();
            clsArea cArea = new clsArea();

            cArea.EstatusRegistro = "A";
            CatalogoAreaRdn catAreaRdn = new CatalogoAreaRdn();
            List <pa_PeticionesWeb_Catalogos_Obtener_Areas_Result> respuesta = new List <pa_PeticionesWeb_Catalogos_Obtener_Areas_Result>();

            respuesta = catAreaRdn.ObtenerAreas(cArea, errorErrror);
            return(Json(respuesta.OrderBy(T => T.Nombre), JsonRequestBehavior.AllowGet));
        }
        private void llenarComboArea(List<clsArea> lstAreas)
        {
            clsArea objArea = new clsArea();
            objArea.StrNombre = "SELECCIONAR";

            cboArea.Items.Add(objArea);

            for (int i = 0; i < lstAreas.Count; i++)
            {
                cboArea.Items.Add(lstAreas[i]);
            }
        }
        public static Alarm ToConfig(this clsArea area)
        {
            Alarm ret = new Alarm
            {
                unique_id     = $"{Global.mqtt_prefix}area{area.Number}",
                name          = Global.mqtt_discovery_name_prefix + area.Name,
                state_topic   = area.ToTopic(Topic.basic_state),
                command_topic = area.ToTopic(Topic.command)
            };

            return(ret);
        }
Exemple #18
0
        public frmArea()
        {
            InitializeComponent();

            clsArea objArea = new clsArea();

            objArea.TipoArea = "TODAS";
            objArea.Estado   = "TODOS";

            dtAreas = ctrArea.seleccionarAreasCriterios(objArea);

            cargarGrilla();
        }
        private void ProcessAreaReceived(clsArea area, Topic command, string payload)
        {
            if (command == Topic.command && Enum.TryParse(payload, true, out AreaCommands cmd))
            {
                if (area.Number == 0)
                {
                    log.Debug("SetArea: 0 implies all areas will be changed");
                }

                log.Debug("SetArea: " + area.Number + " to " + cmd.ToString().Replace("arm_", "").Replace("_", " "));
                OmniLink.SendCommand(AreaMapping[cmd], 0, (ushort)area.Number);
            }
        }
Exemple #20
0
        private void Omnilink_OnConnect(object sender, EventArgs e)
        {
            if (Global.verbose_area)
            {
                for (ushort i = 1; i <= omnilink.Controller.Areas.Count; i++)
                {
                    clsArea area = omnilink.Controller.Areas[i];

                    if (i > 1 && area.DefaultProperties == true)
                    {
                        continue;
                    }

                    string status = area.ModeText();

                    if (area.ExitTimer > 0)
                    {
                        status = "ARMING " + status;
                    }

                    if (area.EntryTimer > 0)
                    {
                        status = "TRIPPED " + status;
                    }

                    log.Verbose("Initial AreaStatus {id} {name}, Status: {status}, Alarms: {alarms}", i, area.Name, status, area.AreaAlarms);
                }
            }

            if (Global.verbose_zone)
            {
                for (ushort i = 1; i <= omnilink.Controller.Zones.Count; i++)
                {
                    clsZone zone = omnilink.Controller.Zones[i];

                    if (zone.DefaultProperties == true)
                    {
                        continue;
                    }

                    if (zone.IsTemperatureZone())
                    {
                        log.Verbose("Initial ZoneStatus {id} {name}, Temp: {temp}", i, zone.Name, zone.TempText());
                    }
                    else
                    {
                        log.Verbose("Initial ZoneStatus {id} {name}, Status: {status}", i, zone.Name, zone.StatusText());
                    }
                }
            }
        }
        public static string ToJsonState(this clsArea area)
        {
            AreaState state = new AreaState()
            {
                arming            = area.ExitTimer > 0,
                burglary_alarm    = area.AreaAlarms.IsBitSet(0),
                fire_alarm        = area.AreaAlarms.IsBitSet(1),
                gas_alarm         = area.AreaAlarms.IsBitSet(2),
                auxiliary_alarm   = area.AreaAlarms.IsBitSet(3),
                freeze_alarm      = area.AreaAlarms.IsBitSet(4),
                water_alarm       = area.AreaAlarms.IsBitSet(5),
                duress_alarm      = area.AreaAlarms.IsBitSet(6),
                temperature_alarm = area.AreaAlarms.IsBitSet(7)
            };

            switch (area.AreaMode)
            {
            case enuSecurityMode.Night:
                state.mode = "night";
                break;

            case enuSecurityMode.NightDly:
                state.mode = "night_delay";
                break;

            case enuSecurityMode.Day:
                state.mode = "home";
                break;

            case enuSecurityMode.DayInst:
                state.mode = "home_instant";
                break;

            case enuSecurityMode.Away:
                state.mode = "away";
                break;

            case enuSecurityMode.Vacation:
                state.mode = "vacation";
                break;

            case enuSecurityMode.Off:
            default:
                state.mode = "off";
                break;
            }

            return(JsonConvert.SerializeObject(state));
        }
        public List <pa_PeticionesWeb_Catalogos_Obtener_Areas_Result> ObtenerAreas
            (clsArea pEntrada, ErrorProcedimientoAlmacenado pError)
        {
            var respuestaWeb = new List <pa_PeticionesWeb_Catalogos_Obtener_Areas_Result>();

            try
            {
                respuestaWeb = procesosArea.ObtenerAreas(pEntrada, pError);
            }
            catch (Exception)
            {
                throw;
            }
            return(respuestaWeb);
        }
Exemple #23
0
        private void PublishAreas()
        {
            log.Debug("Publishing {type}", "areas");

            for (ushort i = 1; i <= OmniLink.Controller.Areas.Count; i++)
            {
                clsArea area = OmniLink.Controller.Areas[i];

                // PC Access doesn't let you customize the area name for the Omni LTe or Omni IIe
                // (configured for 1 area). To workaround ignore default properties for the first area.
                if (i > 1 && area.DefaultProperties == true)
                {
                    PublishAsync(area.ToTopic(Topic.name), null);
                    PublishAsync($"{Global.mqtt_discovery_prefix}/alarm_control_panel/{Global.mqtt_prefix}/area{i}/config", null);
                    PublishAsync($"{Global.mqtt_discovery_prefix}/binary_sensor/{Global.mqtt_prefix}/area{i}burglary/config", null);
                    PublishAsync($"{Global.mqtt_discovery_prefix}/binary_sensor/{Global.mqtt_prefix}/area{i}fire/config", null);
                    PublishAsync($"{Global.mqtt_discovery_prefix}/binary_sensor/{Global.mqtt_prefix}/area{i}gas/config", null);
                    PublishAsync($"{Global.mqtt_discovery_prefix}/binary_sensor/{Global.mqtt_prefix}/area{i}aux/config", null);
                    PublishAsync($"{Global.mqtt_discovery_prefix}/binary_sensor/{Global.mqtt_prefix}/area{i}freeze/config", null);
                    PublishAsync($"{Global.mqtt_discovery_prefix}/binary_sensor/{Global.mqtt_prefix}/area{i}water/config", null);
                    PublishAsync($"{Global.mqtt_discovery_prefix}/binary_sensor/{Global.mqtt_prefix}/area{i}duress/config", null);
                    PublishAsync($"{Global.mqtt_discovery_prefix}/binary_sensor/{Global.mqtt_prefix}/area{i}temp/config", null);
                    continue;
                }

                PublishAreaState(area);

                PublishAsync(area.ToTopic(Topic.name), area.Name);
                PublishAsync($"{Global.mqtt_discovery_prefix}/alarm_control_panel/{Global.mqtt_prefix}/area{i}/config",
                             JsonConvert.SerializeObject(area.ToConfig()));
                PublishAsync($"{Global.mqtt_discovery_prefix}/binary_sensor/{Global.mqtt_prefix}/area{i}burglary/config",
                             JsonConvert.SerializeObject(area.ToConfigBurglary()));
                PublishAsync($"{Global.mqtt_discovery_prefix}/binary_sensor/{Global.mqtt_prefix}/area{i}fire/config",
                             JsonConvert.SerializeObject(area.ToConfigFire()));
                PublishAsync($"{Global.mqtt_discovery_prefix}/binary_sensor/{Global.mqtt_prefix}/area{i}gas/config",
                             JsonConvert.SerializeObject(area.ToConfigGas()));
                PublishAsync($"{Global.mqtt_discovery_prefix}/binary_sensor/{Global.mqtt_prefix}/area{i}aux/config",
                             JsonConvert.SerializeObject(area.ToConfigAux()));
                PublishAsync($"{Global.mqtt_discovery_prefix}/binary_sensor/{Global.mqtt_prefix}/area{i}freeze/config",
                             JsonConvert.SerializeObject(area.ToConfigFreeze()));
                PublishAsync($"{Global.mqtt_discovery_prefix}/binary_sensor/{Global.mqtt_prefix}/area{i}water/config",
                             JsonConvert.SerializeObject(area.ToConfigWater()));
                PublishAsync($"{Global.mqtt_discovery_prefix}/binary_sensor/{Global.mqtt_prefix}/area{i}duress/config",
                             JsonConvert.SerializeObject(area.ToConfigDuress()));
                PublishAsync($"{Global.mqtt_discovery_prefix}/binary_sensor/{Global.mqtt_prefix}/area{i}temp/config",
                             JsonConvert.SerializeObject(area.ToConfigTemp()));
            }
        }
Exemple #24
0
        private void buscarCriterios(object sender, EventArgs e)
        {
            try
            {
                clsArea objArea = new clsArea();
                objArea.Nombre   = txtNombreBuscar.Text;
                objArea.TipoArea = cboTipoBuscar.SelectedItem.ToString();
                objArea.Estado   = cboEstadoBuscar.SelectedItem.ToString();

                dtAreas = ctrArea.seleccionarAreasCriterios(objArea);
                cargarGrilla();
            }
            catch
            {
            }
        }
Exemple #25
0
        private void PublishAreas()
        {
            log.Debug("Publishing areas");

            for (ushort i = 1; i < OmniLink.Controller.Areas.Count; i++)
            {
                clsArea area = OmniLink.Controller.Areas[i];

                if (area.DefaultProperties == true)
                {
                    MqttClient.PublishAsync($"{Global.mqtt_discovery_prefix}/alarm_control_panel/{Global.mqtt_prefix}/area{i.ToString()}/config", null, MqttQualityOfServiceLevel.AtMostOnce, true);
                    MqttClient.PublishAsync($"{Global.mqtt_discovery_prefix}/binary_sensor/{Global.mqtt_prefix}/area{i.ToString()}burglary/config", null, MqttQualityOfServiceLevel.AtMostOnce, true);
                    MqttClient.PublishAsync($"{Global.mqtt_discovery_prefix}/binary_sensor/{Global.mqtt_prefix}/area{i.ToString()}fire/config", null, MqttQualityOfServiceLevel.AtMostOnce, true);
                    MqttClient.PublishAsync($"{Global.mqtt_discovery_prefix}/binary_sensor/{Global.mqtt_prefix}/area{i.ToString()}gas/config", null, MqttQualityOfServiceLevel.AtMostOnce, true);
                    MqttClient.PublishAsync($"{Global.mqtt_discovery_prefix}/binary_sensor/{Global.mqtt_prefix}/area{i.ToString()}aux/config", null, MqttQualityOfServiceLevel.AtMostOnce, true);
                    MqttClient.PublishAsync($"{Global.mqtt_discovery_prefix}/binary_sensor/{Global.mqtt_prefix}/area{i.ToString()}freeze/config", null, MqttQualityOfServiceLevel.AtMostOnce, true);
                    MqttClient.PublishAsync($"{Global.mqtt_discovery_prefix}/binary_sensor/{Global.mqtt_prefix}/area{i.ToString()}water/config", null, MqttQualityOfServiceLevel.AtMostOnce, true);
                    MqttClient.PublishAsync($"{Global.mqtt_discovery_prefix}/binary_sensor/{Global.mqtt_prefix}/area{i.ToString()}duress/config", null, MqttQualityOfServiceLevel.AtMostOnce, true);
                    MqttClient.PublishAsync($"{Global.mqtt_discovery_prefix}/binary_sensor/{Global.mqtt_prefix}/area{i.ToString()}temp/config", null, MqttQualityOfServiceLevel.AtMostOnce, true);
                    continue;
                }

                PublishAreaState(area);

                MqttClient.PublishAsync($"{Global.mqtt_discovery_prefix}/alarm_control_panel/{Global.mqtt_prefix}/area{i.ToString()}/config",
                                        JsonConvert.SerializeObject(area.ToConfig()), MqttQualityOfServiceLevel.AtMostOnce, true);
                MqttClient.PublishAsync($"{Global.mqtt_discovery_prefix}/binary_sensor/{Global.mqtt_prefix}/area{i.ToString()}burglary/config",
                                        JsonConvert.SerializeObject(area.ToConfigBurglary()), MqttQualityOfServiceLevel.AtMostOnce, true);
                MqttClient.PublishAsync($"{Global.mqtt_discovery_prefix}/binary_sensor/{Global.mqtt_prefix}/area{i.ToString()}fire/config",
                                        JsonConvert.SerializeObject(area.ToConfigFire()), MqttQualityOfServiceLevel.AtMostOnce, true);
                MqttClient.PublishAsync($"{Global.mqtt_discovery_prefix}/binary_sensor/{Global.mqtt_prefix}/area{i.ToString()}gas/config",
                                        JsonConvert.SerializeObject(area.ToConfigGas()), MqttQualityOfServiceLevel.AtMostOnce, true);
                MqttClient.PublishAsync($"{Global.mqtt_discovery_prefix}/binary_sensor/{Global.mqtt_prefix}/area{i.ToString()}aux/config",
                                        JsonConvert.SerializeObject(area.ToConfigAux()), MqttQualityOfServiceLevel.AtMostOnce, true);
                MqttClient.PublishAsync($"{Global.mqtt_discovery_prefix}/binary_sensor/{Global.mqtt_prefix}/area{i.ToString()}freeze/config",
                                        JsonConvert.SerializeObject(area.ToConfigFreeze()), MqttQualityOfServiceLevel.AtMostOnce, true);
                MqttClient.PublishAsync($"{Global.mqtt_discovery_prefix}/binary_sensor/{Global.mqtt_prefix}/area{i.ToString()}water/config",
                                        JsonConvert.SerializeObject(area.ToConfigWater()), MqttQualityOfServiceLevel.AtMostOnce, true);
                MqttClient.PublishAsync($"{Global.mqtt_discovery_prefix}/binary_sensor/{Global.mqtt_prefix}/area{i.ToString()}duress/config",
                                        JsonConvert.SerializeObject(area.ToConfigDuress()), MqttQualityOfServiceLevel.AtMostOnce, true);
                MqttClient.PublishAsync($"{Global.mqtt_discovery_prefix}/binary_sensor/{Global.mqtt_prefix}/area{i.ToString()}temp/config",
                                        JsonConvert.SerializeObject(area.ToConfigTemp()), MqttQualityOfServiceLevel.AtMostOnce, true);
            }
        }
Exemple #26
0
        private void btnActivar_Click(object sender, EventArgs e)
        {
            if (dgvAreas.SelectedRows.Count > 0)
            {
                if (MessageBox.Show("¿Está seguro que desea activar esta área?", "Mensaje", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == DialogResult.Yes)
                {
                    numAccion = clsComun.RECUPERAR;

                    numIdArea = Int32.Parse(dgvAreas.Rows[dgvAreas.CurrentRow.Index].Cells[0].Value.ToString());

                    clsArea objArea = new clsArea();
                    objArea.IdArea = numIdArea;

                    if (ctrArea.recuperarArea(objArea))
                    {
                        dgvAreas.Rows[dgvAreas.CurrentRow.Index].Cells[3].Value = "ACTIVO";

                        dgvAreas.Rows[dgvAreas.CurrentRow.Index].Cells[1].Style.ForeColor = Color.Black;
                        dgvAreas.Rows[dgvAreas.CurrentRow.Index].Cells[1].Style.BackColor = Color.White;
                        dgvAreas.Rows[dgvAreas.CurrentRow.Index].Cells[2].Style.ForeColor = Color.Black;
                        dgvAreas.Rows[dgvAreas.CurrentRow.Index].Cells[2].Style.BackColor = Color.White;
                        dgvAreas.Rows[dgvAreas.CurrentRow.Index].Cells[3].Style.ForeColor = Color.Black;
                        dgvAreas.Rows[dgvAreas.CurrentRow.Index].Cells[3].Style.BackColor = Color.White;

                        btnActivar.Visible  = false;
                        btnEliminar.Visible = true;

                        MessageBox.Show("El área se activó exitosamente", "Mensaje", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                    else
                    {
                        if (MessageBox.Show("Ocurrió un error mientras se intentaba activar el área", "Mensaje", MessageBoxButtons.RetryCancel, MessageBoxIcon.Error) != DialogResult.Cancel)
                        {
                            btnEliminar_Click(sender, e);
                        }
                    }
                }
            }
            else
            {
                MessageBox.Show("Debe seleccionar un área", "Mensaje", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
            }
        }
Exemple #27
0
 private void ProcessAreaReceived(clsArea area, string command, string payload)
 {
     if (string.Compare(command, Topic.command.ToString()) == 0)
     {
         if (string.Compare(payload, "arm_home", true) == 0)
         {
             log.Debug("SetArea: " + area.Number + " to home");
             OmniLink.Controller.SendCommand(enuUnitCommand.SecurityDay, 0, (ushort)area.Number);
         }
         else if (string.Compare(payload, "arm_away", true) == 0)
         {
             log.Debug("SetArea: " + area.Number + " to away");
             OmniLink.Controller.SendCommand(enuUnitCommand.SecurityAway, 0, (ushort)area.Number);
         }
         else if (string.Compare(payload, "arm_night", true) == 0)
         {
             log.Debug("SetArea: " + area.Number + " to night");
             OmniLink.Controller.SendCommand(enuUnitCommand.SecurityNight, 0, (ushort)area.Number);
         }
         else if (string.Compare(payload, "disarm", true) == 0)
         {
             log.Debug("SetArea: " + area.Number + " to disarm");
             OmniLink.Controller.SendCommand(enuUnitCommand.SecurityOff, 0, (ushort)area.Number);
         }
         // The below aren't supported by Home Assistant
         else if (string.Compare(payload, "arm_home_instant", true) == 0)
         {
             log.Debug("SetArea: " + area.Number + " to home instant");
             OmniLink.Controller.SendCommand(enuUnitCommand.SecurityDyi, 0, (ushort)area.Number);
         }
         else if (string.Compare(payload, "arm_night_delay", true) == 0)
         {
             log.Debug("SetArea: " + area.Number + " to night delay");
             OmniLink.Controller.SendCommand(enuUnitCommand.SecurityNtd, 0, (ushort)area.Number);
         }
         else if (string.Compare(payload, "arm_vacation", true) == 0)
         {
             log.Debug("SetArea: " + area.Number + " to vacation");
             OmniLink.Controller.SendCommand(enuUnitCommand.SecurityVac, 0, (ushort)area.Number);
         }
     }
 }
Exemple #28
0
        private void PublishAreas()
        {
            log.Debug("Publishing areas");

            for (ushort i = 1; i < OmniLink.Controller.Areas.Count; i++)
            {
                clsArea area = OmniLink.Controller.Areas[i];

                if (area.DefaultProperties == true)
                {
                    MqttClient.PublishAsync($"{Global.mqtt_discovery_prefix}/alarm_control_panel/{Global.mqtt_prefix}/area{i.ToString()}/config", null, MqttQualityOfServiceLevel.AtMostOnce, true);
                    continue;
                }

                PublishAreaState(area);

                MqttClient.PublishAsync($"{Global.mqtt_discovery_prefix}/alarm_control_panel/{Global.mqtt_prefix}/area{i.ToString()}/config",
                                        JsonConvert.SerializeObject(area.ToConfig()), MqttQualityOfServiceLevel.AtMostOnce, true);
            }
        }
Exemple #29
0
        public List <NameContract> ListAreas()
        {
            log.Debug("ListAreas");

            List <NameContract> names = new List <NameContract>();

            for (ushort i = 1; i < WebServiceModule.OmniLink.Controller.Areas.Count; i++)
            {
                clsArea area = WebServiceModule.OmniLink.Controller.Areas[i];

                if (area.DefaultProperties == false)
                {
                    names.Add(new NameContract()
                    {
                        id = i, name = area.Name
                    });
                }
            }
            return(names);
        }
Exemple #30
0
        public List <NameContract> ListAreas()
        {
            Event.WriteVerbose("WebService", "ListAreas");

            List <NameContract> names = new List <NameContract>();

            for (ushort i = 1; i < WebService.HAC.Areas.Count; i++)
            {
                clsArea area = WebService.HAC.Areas[i];

                if (area.DefaultProperties == false)
                {
                    names.Add(new NameContract()
                    {
                        id = i, name = area.Name
                    });
                }
            }
            return(names);
        }