public void Reset() { //TODO: clear Roomie representation of devices using (var stateWatcher = new ControllerNotificationWatcher(this)) { Manager.ResetController(HomeId.Value); stateWatcher.WaitUntilEventType(ZWNotification.Type.NodeQueriesComplete, ZWNotification.Type.EssentialNodeQueriesComplete); } }
public void Connect() { using (var watcher = new ControllerNotificationWatcher(this)) { Manager.AddDriver(_serialPortName); watcher.WaitUntilEventType(ZWNotification.Type.NodeQueriesComplete, ZWNotification.Type.EssentialNodeQueriesComplete); } Load(); Connected(); }
public override void RemoveDevice(Device device) { var zWaveDevice = device as OpenZWaveDevice; using (var watcher = new ControllerNotificationWatcher(this)) { Manager.RemoveFailedNode(HomeId.Value, zWaveDevice.Id); watcher.WaitUntilEventType(ZWNotification.Type.NodeRemoved); } _devices.Remove(zWaveDevice); }