/// <summary> /// <para>MESSAGEREAD</para> /// </summary> /// <remarks> /// <para>Reference: BDK, Appendix 2, p. 11.</para> /// </remarks> /// <param name="remoteInboxNo">Remote Inbox number</param> /// <param name="localInboxNo">Local Inbox number</param> /// <param name="remove">Remove? True: clears message from Remote Inbox</param> /// <returns>Message data</returns> public string MessageRead(NxtMailbox2 remoteInboxNo, NxtMailbox localInboxNo, bool remove) { byte[] request = new byte[] { 0x00, (byte)NxtCommand.MessageRead, (byte)remoteInboxNo, (byte)localInboxNo, (byte)(remove ? 0xFF : 0x00) }; byte[] reply = Send(request); if (reply == null) { return(null); } byte localInboxNoOut = reply[3]; // TODO: Validate on this? byte messageSize = reply[4]; string message = Encoding.ASCII.GetString(reply, 5, messageSize).TrimEnd('\0'); return(message); }
/// <summary> /// <para>MESSAGEREAD</para> /// </summary> /// <remarks> /// <para>Reference: BDK, Appendix 2, p. 11.</para> /// </remarks> /// <param name="remoteInboxNo">Remote Inbox number</param> /// <param name="localInboxNo">Local Inbox number</param> /// <param name="remove">Remove? True: clears message from Remote Inbox</param> /// <returns>Message data</returns> public string MessageRead(NxtMailbox2 remoteInboxNo, NxtMailbox localInboxNo, bool remove) { byte[] request = new byte[] { 0x00, (byte) NxtCommand.MessageRead, (byte) remoteInboxNo, (byte) localInboxNo, (byte) (remove ? 0xFF : 0x00) }; byte[] reply = Send(request); if (reply == null) return null; byte localInboxNoOut = reply[3]; // TODO: Validate on this? byte messageSize = reply[4]; string message = Encoding.ASCII.GetString(reply, 5, messageSize).TrimEnd('\0'); return message; }