void HandleRfDataReceived(RfDataReceivedAction eventdata) { string data = XTenLib.Utility.ByteArrayToString(eventdata.RawData); if (InterfacePropertyChangedAction != null) { // flood protection =) - discard dupes if (rfLastStringData != data) { rfLastStringData = data; try { InterfacePropertyChangedAction(new InterfacePropertyChangedAction() { Domain = this.Domain, SourceId = "RF", SourceType = "W800RF32 RF Receiver", Path = "Receiver.RawData", Value = rfLastStringData }); } catch { // TODO: add error logging } // if (rfPulseTimer == null) { rfPulseTimer = new Timer(delegate(object target) { try { rfLastStringData = ""; InterfacePropertyChangedAction(new InterfacePropertyChangedAction() { Domain = this.Domain, SourceId = "RF", SourceType = "W800RF32 RF Receiver", Path = "Receiver.RawData", Value = "" }); } catch { // TODO: add error logging } }); } rfPulseTimer.Change(1000, Timeout.Infinite); } } }
void x10lib_RfDataReceived(RfDataReceivedAction eventdata) { if (InterfacePropertyChangedAction != null) { string data = XTenLib.Utility.ByteArrayToString(eventdata.RawData); // flood protection =) - discard dupes if (_rfprevstringdata != data) { _rfprevstringdata = data; try { InterfacePropertyChangedAction(new InterfacePropertyChangedAction() { Domain = this.Domain, SourceId = "RF", SourceType = "X10 RF Receiver", Path = "Receiver.RawData", Value = _rfprevstringdata }); } catch (Exception ex) { // TODO: add error logging } // if (_rfpulsetimer == null) { _rfpulsetimer = new Timer(delegate(object target) { try { _rfprevstringdata = ""; InterfacePropertyChangedAction(new InterfacePropertyChangedAction() { Domain = this.Domain, SourceId = "RF", SourceType = "X10 RF Receiver", Path = "Receiver.RawData", Value = "" }); } catch (Exception ex) { // TODO: add error logging } }); } _rfpulsetimer.Change(1000, Timeout.Infinite); } } }