/// <summary> /// OpenRelay - creates and sends a message to open a relay at the given location /// </summary> /// <param name="loc" - the location - logical address></param> private void OpenRelay(int loc, byte seqnum) { KeyDispenseMessage command = new KeyDispenseMessage(KeyDispenseMessage.MessageType.OPEN_RELAY, loc, seqnum); Program.logDebug("Open relay " + loc.ToString() + " - " + command.ToString()); SendMessage(command); }
/// <summary> /// SendMessage - writes a byte stream to the RCB port /// </summary> /// <param name="command" - the command array of bytes></param> private void SendMessage(KeyDispenseMessage command) { if (command == null) { throw new Exception("null command"); } try { if (port.IsOpen) { port.Write(command.commandBytes, 0, command.commandSize); } } catch (Exception e) { string message = "Error writing to RCB port: " + e.Message; throw new Exception(message); } }