public async Task <DateTime> GetDateTime() { var cmd = new GetDateTimeCommand(DeviceId); var response = await DeviceStream.SendCommand(cmd); return(DateConversions.ByteArrayToDateTime(response.DATA)); }
internal Record(byte[] data, int offset) { UserCode = Bytes.Read(Bytes.Split(data, offset, 5)); var rawTime = Bytes.Read(Bytes.Split(data, offset + 5, 4)); DateTime = DateConversions.RecordToDateTime(rawTime); BackupCode = data[offset + 9]; RecordType = data[offset + 10]; WorkType = Bytes.Read(Bytes.Split(data, offset + 11, 3)); }
internal byte[] ToArray() { var ret = new byte[RECORD_LENGTH]; Bytes.Write(5, UserCode).CopyTo(ret, 0); var rawTime = DateConversions.DateTimeToRecord(DateTime); Bytes.Write(4, rawTime).CopyTo(ret, 5); ret[9] = BackupCode; ret[10] = RecordType; Bytes.Write(3, WorkType).CopyTo(ret, 11); return(ret); }
public SetDateTimeCommand(ulong deviceId, DateTime dateTime) : base(deviceId) { BuildPayload(SET_DATETIME, DateConversions.DateTimeToByteArray(dateTime)); }