protected override void CreateInstance() { if (Args != null && Args.Length > 0) { byte[] args = new byte[Args.Length + 2]; args[0] = (byte)InitMode; Array.Copy(Args, 0, args, 2, Args.Length); messageStart = new ApiMessage(SerialApiCommands[0], args); messageStart.SequenceNumberCustomIndex = 3; } else { messageStart = new ApiMessage(SerialApiCommands[0], (byte)InitMode); } if ((InitMode & ~Modes.FlagModes) != Modes.NodeStop || (InitMode & ~Modes.FlagModes) != Modes.NodeStopFailed) { messageStart.SetSequenceNumber(SequenceNumber); } else { messageStart.SetSequenceNumber(0); } messageStop = new ApiMessage(SerialApiCommands[0], new byte[] { (byte)Modes.NodeStop }); messageStop.SetSequenceNumber(SequenceNumber); messageStopFailed = new ApiMessage(SerialApiCommands[0], new byte[] { (byte)Modes.NodeStopFailed }); messageStopFailed.SetSequenceNumber(0); //NULL funcID = 0 messageStopDone = new ApiMessage(SerialApiCommands[0], new byte[] { (byte)Modes.NodeStop }); messageStopDone.SetSequenceNumber(0); //NULL funcID = 0 handlerProtocolDone = new ApiHandler(FrameTypes.Request, SerialApiCommands[0]); handlerProtocolDone.AddConditions(ByteIndex.AnyValue, new ByteIndex((byte)NodeStatuses.ProtocolDone)); handlerDone = new ApiHandler(FrameTypes.Request, SerialApiCommands[0]); handlerDone.AddConditions(ByteIndex.AnyValue, new ByteIndex((byte)NodeStatuses.Done)); handlerNodeFound = new ApiHandler(FrameTypes.Request, SerialApiCommands[0]); handlerNodeFound.AddConditions(ByteIndex.AnyValue, new ByteIndex((byte)NodeStatuses.NodeFound)); handlerAddingController = new ApiHandler(FrameTypes.Request, SerialApiCommands[0]); handlerAddingController.AddConditions(ByteIndex.AnyValue, new ByteIndex((byte)NodeStatuses.AddingRemovingController)); handlerAddingSlave = new ApiHandler(FrameTypes.Request, SerialApiCommands[0]); handlerAddingSlave.AddConditions(ByteIndex.AnyValue, new ByteIndex((byte)NodeStatuses.AddingRemovingSlave)); handlerLearnReady = new ApiHandler(FrameTypes.Request, SerialApiCommands[0]); handlerLearnReady.AddConditions(ByteIndex.AnyValue, new ByteIndex((byte)NodeStatuses.LearnReady)); handlerFailed = new ApiHandler(FrameTypes.Request, SerialApiCommands[0]); handlerFailed.AddConditions(ByteIndex.AnyValue, new ByteIndex((byte)NodeStatuses.Failed)); handlerNotPrimary = new ApiHandler(FrameTypes.Request, SerialApiCommands[0]); handlerNotPrimary.AddConditions(ByteIndex.AnyValue, new ByteIndex((byte)NodeStatuses.NotPrimary)); }
protected override void CreateInstance() { messageStart = new ApiMessage(SerialApiCommands[0], ReplacedNodeId); messageStart.SetSequenceNumber(SequenceNumber); handlerRemoveStarted = new ApiHandler(SerialApiCommands[0]); handlerRemoveStarted.AddConditions(new ByteIndex((byte)FailedNodeRetValues.ZW_FAILED_NODE_REMOVE_STARTED)); handlerNotPrimary = new ApiHandler(SerialApiCommands[0]); handlerNotPrimary.AddConditions(new ByteIndex((byte)FailedNodeRetValues.ZW_NOT_PRIMARY_CONTROLLER)); handlerNoCallback = new ApiHandler(SerialApiCommands[0]); handlerNoCallback.AddConditions(new ByteIndex((byte)FailedNodeRetValues.ZW_NO_CALLBACK_FUNCTION)); handlerNotFound = new ApiHandler(SerialApiCommands[0]); handlerNotFound.AddConditions(new ByteIndex((byte)FailedNodeRetValues.ZW_FAILED_NODE_NOT_FOUND)); handlerRemoveBusy = new ApiHandler(SerialApiCommands[0]); handlerRemoveBusy.AddConditions(new ByteIndex((byte)FailedNodeRetValues.ZW_FAILED_NODE_REMOVE_PROCESS_BUSY)); handlerRemoveFail = new ApiHandler(SerialApiCommands[0]); handlerRemoveFail.AddConditions(new ByteIndex((byte)FailedNodeRetValues.ZW_FAILED_NODE_REMOVE_FAIL)); handlerNodeOk = new ApiHandler(FrameTypes.Request, SerialApiCommands[0]); handlerNodeOk.AddConditions(ByteIndex.AnyValue, new ByteIndex((byte)FailedNodeStatuses.ZW_NODE_OK)); handlerRemoved = new ApiHandler(FrameTypes.Request, SerialApiCommands[0]); handlerRemoved.AddConditions(ByteIndex.AnyValue, new ByteIndex((byte)FailedNodeStatuses.ZW_FAILED_NODE_REMOVED)); handlerNotRemoved = new ApiHandler(FrameTypes.Request, SerialApiCommands[0]); handlerNotRemoved.AddConditions(ByteIndex.AnyValue, new ByteIndex((byte)FailedNodeStatuses.ZW_FAILED_NODE_NOT_REMOVED)); }
protected override void CreateInstance() { messageStart = new ApiMessage(SerialApiCommands[0], new byte[] { (byte)mInitMode, (byte)NodeId }); messageStart.SetSequenceNumber(SequenceNumber); messageStop = new ApiMessage(SerialApiCommands[0], new byte[] { (byte)Modes.NodeStop }); messageStop.SetSequenceNumber(SequenceNumber); messageStopFailed = new ApiMessage(SerialApiCommands[0], new byte[] { (byte)Modes.NodeStopFailed }); messageStopFailed.SetSequenceNumber(0); //NULL FuncId messageStopDone = new ApiMessage(SerialApiCommands[0], new byte[] { (byte)Modes.NodeStop }); messageStopDone.SetSequenceNumber(0); //NULL FuncId handlerDone = new ApiHandler(FrameTypes.Request, SerialApiCommands[0]); handlerDone.AddConditions(ByteIndex.AnyValue, new ByteIndex((byte)NodeStatuses.Done)); handlerNodeFound = new ApiHandler(FrameTypes.Request, SerialApiCommands[0]); handlerNodeFound.AddConditions(ByteIndex.AnyValue, new ByteIndex((byte)NodeStatuses.NodeFound)); handlerRemovingController = new ApiHandler(FrameTypes.Request, SerialApiCommands[0]); handlerRemovingController.AddConditions(ByteIndex.AnyValue, new ByteIndex((byte)NodeStatuses.AddingRemovingController)); handlerRemovingSlave = new ApiHandler(FrameTypes.Request, SerialApiCommands[0]); handlerRemovingSlave.AddConditions(ByteIndex.AnyValue, new ByteIndex((byte)NodeStatuses.AddingRemovingSlave)); handlerLearnReady = new ApiHandler(FrameTypes.Request, SerialApiCommands[0]); handlerLearnReady.AddConditions(ByteIndex.AnyValue, new ByteIndex((byte)NodeStatuses.LearnReady)); handlerFailed = new ApiHandler(FrameTypes.Request, SerialApiCommands[0]); handlerFailed.AddConditions(ByteIndex.AnyValue, new ByteIndex((byte)NodeStatuses.Failed)); handlerNotPrimary = new ApiHandler(FrameTypes.Request, SerialApiCommands[0]); handlerNotPrimary.AddConditions(ByteIndex.AnyValue, new ByteIndex((byte)NodeStatuses.NotPrimary)); }
protected override void CreateInstance() { message = new ApiMessage(CommandTypes.CmdSerialApiTest, TestCmd, (byte)(TestDelay >> 8), (byte)TestDelay, TestPayloadLength, (byte)(TestCount >> 8), (byte)TestCount, (byte)TxOptions, (byte)TestNodeMask.Length); message.AddData(TestNodeMask); message.SetSequenceNumber(SequenceNumber); messageStop = new ApiMessage(CommandTypes.CmdSerialApiTest, 0, 0, 0, 0, 0, 0, 0, 0); handlerRetFailed = new ApiHandler(CommandTypes.CmdSerialApiTest); handlerRetFailed.AddConditions(new ByteIndex(0)); handlerCallback = new ApiHandler(FrameTypes.Request, CommandTypes.CmdSerialApiTest); }
protected override void CreateInstance() { message = new ApiMessage(SerialApiCommands[0], RxAckTimeout, RxByteTimeout); message.SetSequenceNumber(SequenceNumber); handler = new ApiHandler(SerialApiCommands[0]); }
protected override void CreateInstance() { cmStart = new ApiMessage(SerialApiCommands[0], NodeId, (byte)Mode); cmStart.SetSequenceNumber(SequenceNumber); cmStop = new ApiMessage(SerialApiCommands[0], NodeId, (byte)SlaveLearnModes.VirtualSlaveLearnModeDisable); cmStop.SetSequenceNumber(SequenceNumber); cmSlaveNodeInfo = new ApiMessage(SerialApiCommands[1], NodeId, 0xFF, TxOptions); cmSlaveNodeInfo.SetSequenceNumber(SequenceNumber); chOk = new ApiHandler(SerialApiCommands[0]); chOk.AddConditions(new ByteIndex(0x01)); chFailed = new ApiHandler(SerialApiCommands[0]); chFailed.AddConditions(new ByteIndex(0x00)); chAssignComplete = new ApiHandler(FrameTypes.Request, SerialApiCommands[0]); chAssignComplete.AddConditions(ByteIndex.AnyValue, new ByteIndex((byte)AssignStatuses.AssignComplete)); chAssignNodeIdDone = new ApiHandler(FrameTypes.Request, SerialApiCommands[0]); chAssignNodeIdDone.AddConditions(ByteIndex.AnyValue, new ByteIndex((byte)AssignStatuses.AssignNodeIdDone)); chAssignRangeInfoUpdate = new ApiHandler(FrameTypes.Request, SerialApiCommands[0]); chAssignRangeInfoUpdate.AddConditions(ByteIndex.AnyValue, new ByteIndex((byte)AssignStatuses.AssignRangeInfoUpdate)); }
protected override void CreateInstance() { byte[] args = null; if (Args != null && Args.Length > 0) { args = new byte[Args.Length + 2]; args[0] = (byte)mReplacedNodeId; Array.Copy(Args, 0, args, 2, Args.Length); messageStart = new ApiMessage(SerialApiCommands[0], args); messageStart.SequenceNumberCustomIndex = 3; } else { args = new byte[1]; args[0] = mReplacedNodeId; messageStart = new ApiMessage(SerialApiCommands[0], args); } messageStart.SetSequenceNumber(SequenceNumber); messageStopDone = new ApiMessage(CommandTypes.CmdZWaveAddNodeToNetwork, new byte[] { (byte)Modes.NodeStop }); messageStopDone.SetSequenceNumber(0); //NULL funcID = 0 handlerRemoveStarted = new ApiHandler(SerialApiCommands[0]); handlerRemoveStarted.AddConditions(new ByteIndex((byte)FailedNodeRetValues.ZW_FAILED_NODE_REMOVE_STARTED)); handlerNotPrimary = new ApiHandler(SerialApiCommands[0]); handlerNotPrimary.AddConditions(new ByteIndex((byte)FailedNodeRetValues.ZW_NOT_PRIMARY_CONTROLLER)); handlerNoCallback = new ApiHandler(SerialApiCommands[0]); handlerNoCallback.AddConditions(new ByteIndex((byte)FailedNodeRetValues.ZW_NO_CALLBACK_FUNCTION)); handlerNotFound = new ApiHandler(SerialApiCommands[0]); handlerNotFound.AddConditions(new ByteIndex((byte)FailedNodeRetValues.ZW_FAILED_NODE_NOT_FOUND)); handlerRemoveBusy = new ApiHandler(SerialApiCommands[0]); handlerRemoveBusy.AddConditions(new ByteIndex((byte)FailedNodeRetValues.ZW_FAILED_NODE_REMOVE_PROCESS_BUSY)); handlerRemoveFail = new ApiHandler(SerialApiCommands[0]); handlerRemoveFail.AddConditions(new ByteIndex((byte)FailedNodeRetValues.ZW_FAILED_NODE_REMOVE_FAIL)); handlerNodeOk = new ApiHandler(FrameTypes.Request, SerialApiCommands[0]); handlerNodeOk.AddConditions(ByteIndex.AnyValue, new ByteIndex((byte)FailedNodeStatuses.ZW_NODE_OK)); handlerReplace = new ApiHandler(FrameTypes.Request, SerialApiCommands[0]); handlerReplace.AddConditions(ByteIndex.AnyValue, new ByteIndex((byte)FailedNodeStatuses.ZW_FAILED_NODE_REPLACE)); handlerReplaceDone = new ApiHandler(FrameTypes.Request, SerialApiCommands[0]); handlerReplaceDone.AddConditions(ByteIndex.AnyValue, new ByteIndex((byte)FailedNodeStatuses.ZW_FAILED_NODE_REPLACE_DONE)); handlerReplaceFail = new ApiHandler(FrameTypes.Request, SerialApiCommands[0]); handlerReplaceFail.AddConditions(ByteIndex.AnyValue, new ByteIndex((byte)FailedNodeStatuses.ZW_FAILED_NODE_REPLACE_FAILED)); handlerDone = new ApiHandler(FrameTypes.Request, CommandTypes.CmdZWaveAddNodeToNetwork); handlerDone.AddConditions(ByteIndex.AnyValue, new ByteIndex((byte)NodeStatuses.Done)); }
protected override void CreateInstance() { messageStart = new ApiMessage(SerialApiCommands[0]); messageStart.SetSequenceNumber(SequenceNumber); handler = new ApiHandler(FrameTypes.Request, CommandTypes.CmdZWaveRequestNetworkUpdate); handler.AddConditions(ByteIndex.AnyValue, ByteIndex.AnyValue); handlerRetValFalse = new ApiHandler(CommandTypes.CmdZWaveRequestNetworkUpdate); handlerRetValFalse.AddConditions(new ByteIndex(0x00)); }
protected override void CreateInstance() { message = new ApiMessage(SerialApiCommands[0]); if (FuncId > 0) { message.SetSequenceNumber(FuncId); } handlerOk = new ApiHandler(FrameTypes.Response, SerialApiCommands[0]); handlerOk.AddConditions(new ByteIndex(0x01)); handlerFail = new ApiHandler(FrameTypes.Response, SerialApiCommands[0]); handlerFail.AddConditions(new ByteIndex(0x00)); }
protected override void CreateInstance() { messageStart = new ApiMessage(SerialApiCommands[0], new byte[] { mNodeId }); messageStart.SetSequenceNumber(SequenceNumber); handlerStarted = new ApiHandler(FrameTypes.Request, SerialApiCommands[0]); handlerStarted.AddConditions(ByteIndex.AnyValue, new ByteIndex((byte)RequestNeighborUpdateStatuses.Started)); handlerDone = new ApiHandler(FrameTypes.Request, SerialApiCommands[0]); handlerDone.AddConditions(ByteIndex.AnyValue, new ByteIndex((byte)RequestNeighborUpdateStatuses.Done)); handlerFailed = new ApiHandler(FrameTypes.Request, SerialApiCommands[0]); handlerFailed.AddConditions(ByteIndex.AnyValue, new ByteIndex((byte)RequestNeighborUpdateStatuses.Failed)); }
protected override void CreateInstance() { _isAssignCompleteReceived = false; Mode = Mode == LearnModes.NodeAnyS2 ? LearnModes.LearnModeClassic : Mode; _setLearnModeStart = new ApiMessage(CommandTypes.CmdZWaveSetLearnMode, new byte[] { (byte)Mode }); _setLearnModeStart.SetSequenceNumber(SequenceNumber); _setLearnModeStop = new ApiMessage(CommandTypes.CmdZWaveSetLearnMode, new byte[] { (byte)LearnModes.LearnModeDisable }); _setLearnModeStop.SetSequenceNumber(0); _stopDelay = new TimeInterval(22, 200); _learnReady = new ApiHandler(FrameTypes.Response, CommandTypes.CmdZWaveSetLearnMode); _learnReady.AddConditions(new ByteIndex(0x01)); _assignComplete = new ApiHandler(FrameTypes.Request, CommandTypes.CmdZWaveSetLearnMode); _assignComplete.AddConditions(ByteIndex.AnyValue, new ByteIndex((byte)AssignStatuses.AssignComplete)); _assignNodeIdDone = new ApiHandler(FrameTypes.Request, CommandTypes.CmdZWaveSetLearnMode); _assignNodeIdDone.AddConditions(ByteIndex.AnyValue, new ByteIndex((byte)AssignStatuses.AssignNodeIdDone)); _assignRangeInfoUpdate = new ApiHandler(FrameTypes.Request, CommandTypes.CmdZWaveSetLearnMode); _assignRangeInfoUpdate.AddConditions(ByteIndex.AnyValue, new ByteIndex((byte)AssignStatuses.AssignRangeInfoUpdate)); _exploreRequestInclusion = new ApiMessage(CommandTypes.CmdZWaveExploreRequestInclusion); _exploreRequestInclusion.SetSequenceNumber(SequenceNumber); _exploreRequestInclusion.IsNoAck = true; _exploreRequestExclusion = new ApiMessage(CommandTypes.CmdZWaveExploreRequestExclusion); _exploreRequestExclusion.SetSequenceNumber(SequenceNumber); _exploreRequestExclusion.IsNoAck = true; _sendNodeInfo = new ApiMessage(CommandTypes.CmdZWaveSendNodeInformation, 0xFF, (byte)TransmitOptions.TransmitOptionNone); _sendNodeInfo.SetSequenceNumber(SequenceNumber); _sendNodeInfoRetFail = new ApiHandler(FrameTypes.Response, CommandTypes.CmdZWaveSendNodeInformation); _sendNodeInfoRetFail.AddConditions(new ByteIndex(0x00)); _sendNodeInfoCallback = new ApiHandler(FrameTypes.Request, CommandTypes.CmdZWaveSendNodeInformation); _sendNodeInfoCallback.AddConditions(ByteIndex.AnyValue, ByteIndex.AnyValue); }
protected override void CreateInstance() { messageStart = new ApiMessage(SerialApiCommands[0], new byte[] { mNodeId }); messageStart.SetSequenceNumber(SequenceNumber); handlerRetValTrue = new ApiHandler(SerialApiCommands[0]); handlerRetValTrue.AddConditions(new ByteIndex(0xFF, 0xFF)); handlerRetValFalse = new ApiHandler(SerialApiCommands[0]); handlerRetValFalse.AddConditions(new ByteIndex(0x00)); handlerUpdateDone = new ApiHandler(FrameTypes.Request, SerialApiCommands[0]); handlerUpdateDone.AddConditions(ByteIndex.AnyValue, new ByteIndex((byte)RouteStatuses.UpdateDone)); handlerUpdateAbort = new ApiHandler(FrameTypes.Request, SerialApiCommands[0]); handlerUpdateAbort.AddConditions(ByteIndex.AnyValue, new ByteIndex((byte)RouteStatuses.UpdateAbort)); handlerLostFailed = new ApiHandler(FrameTypes.Request, SerialApiCommands[0]); handlerLostFailed.AddConditions(ByteIndex.AnyValue, new ByteIndex((byte)RouteStatuses.LostFailed)); handlerLostAccept = new ApiHandler(FrameTypes.Request, SerialApiCommands[0]); handlerLostAccept.AddConditions(ByteIndex.AnyValue, new ByteIndex((byte)RouteStatuses.LostAccept)); }
protected override void CreateInstance() { cmZWaveSetLearnModeStart = new ApiMessage(SerialApiCommands[0], new byte[] { (byte)Mode }); cmZWaveSetLearnModeStart.SetSequenceNumber(SequenceNumber); cmZWaveSetLearnModeStop = new ApiMessage(SerialApiCommands[0], new byte[] { (byte)LearnModes.LearnModeDisable }); cmZWaveSetLearnModeStop.SetSequenceNumber(SequenceNumber); cmZWaveExploreRequestInclusion = new ApiMessage(CommandTypes.CmdZWaveExploreRequestInclusion); cmZWaveExploreRequestInclusion.SetSequenceNumber(SequenceNumber); cmZWaveExploreRequestExclusion = new ApiMessage(CommandTypes.CmdZWaveExploreRequestExclusion); cmZWaveExploreRequestExclusion.SetSequenceNumber(SequenceNumber); chZWaveSetLearnModeStarted = new ApiHandler(FrameTypes.Request, SerialApiCommands[0]); chZWaveSetLearnModeStarted.AddConditions(ByteIndex.AnyValue, new ByteIndex((byte)NodeStatuses.LearnReady)); chZWaveSetLearnModeDone = new ApiHandler(FrameTypes.Request, SerialApiCommands[0]); chZWaveSetLearnModeDone.AddConditions(ByteIndex.AnyValue, new ByteIndex((byte)NodeStatuses.Done)); chZWaveSetLearnModeFailed = new ApiHandler(FrameTypes.Request, SerialApiCommands[0]); chZWaveSetLearnModeFailed.AddConditions(ByteIndex.AnyValue, new ByteIndex((byte)NodeStatuses.Failed)); }
protected override void CreateInstance() { message = new ApiMessage(SerialApiCommands[0]); message.SetSequenceNumber(SequenceNumber); handler = new ApiHandler(FrameTypes.Request, SerialApiCommands[0]); }