/// <summary> /// Evento que escanea la red en busqueda de los xbee para conexión /// </summary> /// <param name="sender"></param> /// <param name="args"></param> private void NodeDiscovered_controller(object sender, NodeDiscoveredEventArgs args) { try { if (instancia.ListNodes == null) { if (MonitoreoEvent != null) MonitoreoEvent(this, new MonitoreoEventArgs("Escaneando Red...", ETipoEvento.Exitoso, 0, "")); instancia.ListNodes = new List<NodosXbee>(); } string _macNodoEncontrado = args.Node.Address.LongAddress.Value.ToString("X"); string _macImpresora = ""; int _tiempoEspera = 0; int _idXbee = 0; Enumeraciones.TipoDispositivo _tipDisp; using (Generales modGenerales = new Generales()) { DataTable XbeeConsultado = modGenerales.ObtenerXbeePorMac(_macNodoEncontrado); if (XbeeConsultado != null && XbeeConsultado.Rows.Count > 0) { _macImpresora = (string)XbeeConsultado.Rows[0]["impresoraXbee"]; _tiempoEspera = (int)XbeeConsultado.Rows[0]["tiempoEspXbee"]; _idXbee = (int)XbeeConsultado.Rows[0]["idXbee"]; _tipDisp = (Enumeraciones.TipoDispositivo)XbeeConsultado.Rows[0]["tipoXbee"]; NodosXbee newDispositivo = new NodosXbee(args.Node, args.Name, _macNodoEncontrado, _macImpresora, _tiempoEspera, _tipDisp, _idXbee); instancia.AgregarNodo(newDispositivo); if (MonitoreoEvent != null) MonitoreoEvent(this, new MonitoreoEventArgs("Se conectó el dispositivo: " + args.Name + " MAC:" + _macNodoEncontrado + "", ETipoEvento.Exitoso, 0, "")); if (_tipDisp == Enumeraciones.TipoDispositivo.Dispensador) { ActualizarDatosDispensador(newDispositivo.IdXbee); } } else { if (MonitoreoEvent != null) MonitoreoEvent(this, new MonitoreoEventArgs("Se encontro dispositivo pero no esta registrado en base de datos: " + args.Name + " MAC: " + _macNodoEncontrado + "", ETipoEvento.Exitoso, 0, "")); } } } catch (Exception e) { LocalLogManager.EscribeLog(e.Message, LocalLogManager.TipoImagen.TipoError); if (MonitoreoEvent != null) MonitoreoEvent(this, new MonitoreoEventArgs("Se detectó un error:\n" + e.Message, ETipoEvento.Error, 0, "")); } }