public void Analyze(ref JT809MessagePackReader reader, Utf8JsonWriter writer, IJT809Config config) { var value = new JT809_0x1400_0x1413(); var virtualHex = reader.ReadVirtualArray(11); value.SourcePlatformId = reader.ReadBigNumber(11); writer.WriteString($"[{virtualHex.ToArray().ToHexString()}]发起报警平台唯一编码", value.SourcePlatformId); virtualHex = reader.ReadVirtualArray(8); value.WarnTime = reader.ReadUTCDateTime(); writer.WriteString($"[{virtualHex.ToArray().ToHexString()}]报警时间", value.WarnTime); value.SourceDataType = reader.ReadUInt16(); writer.WriteString($"[{value.SourceDataType.ReadNumber()}]对应启动车辆定位信息交换请求消息源子业务类型标识", ((JT809SubBusinessType)value.SourceDataType).ToString()); value.SourceMsgSn = reader.ReadUInt32(); writer.WriteNumber($"[{value.SourceMsgSn.ReadNumber()}对应启动车辆定位信息交换请求消息源报文序列号]", value.SourceMsgSn); virtualHex = reader.ReadVirtualArray(8); value.SupervisionEndTime = reader.ReadUTCDateTime(); writer.WriteString($"[{virtualHex.ToArray().ToHexString()}]督办截止时间", value.SupervisionEndTime); value.SupervisionLevel = (JT809_0x1413_SupervisionLevel)reader.ReadByte(); writer.WriteString($"[{value.SupervisionLevel.ToByteValue()}]督办级别", value.SupervisionLevel.ToString()); virtualHex = reader.ReadVirtualArray(16); value.Supervisor = reader.ReadString(16); writer.WriteString($"[{virtualHex.ToArray().ToHexString()}]督办人", value.Supervisor); virtualHex = reader.ReadVirtualArray(20); value.SupervisorTel = reader.ReadString(20); writer.WriteString($"[{virtualHex.ToArray().ToHexString()}]督办人联系电话", value.SupervisorTel); virtualHex = reader.ReadVirtualArray(32); value.SupervisorEmail = reader.ReadString(32); writer.WriteString($"[{virtualHex.ToArray().ToHexString()}]督办人联系电子邮件", value.SupervisorTel); }
public void Analyze(ref JT809MessagePackReader reader, Utf8JsonWriter writer, IJT809Config config) { JT809_0x1102 value = new JT809_0x1102(); value.SubBusinessType = reader.ReadUInt16(); writer.WriteNumber($"[{value.SubBusinessType.ReadNumber()}]子业务类型标识", value.SubBusinessType); value.DataLength = reader.ReadUInt32(); writer.WriteNumber($"[{value.DataLength.ReadNumber()}]后续数据长度", value.DataLength); var virtualHex = reader.ReadVirtualArray(11); value.PlateformId = reader.ReadString(11); writer.WriteString($"[{virtualHex.ToArray().ToHexString()}]平台唯一编码", value.PlateformId); virtualHex = reader.ReadVirtualArray(8); value.StartTime = reader.ReadUTCDateTime(); writer.WriteString($"[{virtualHex.ToArray().ToHexString()}]开始时间", value.StartTime); virtualHex = reader.ReadVirtualArray(8); value.EndTime = reader.ReadUTCDateTime(); writer.WriteString($"[{virtualHex.ToArray().ToHexString()}]结束时间", value.EndTime); value.LoseDymamicSum = reader.ReadUInt32(); writer.WriteNumber($"[{value.LoseDymamicSum.ReadNumber()}]START_TIME~END_TIME期间下级平台丢失得车辆定位消息总数", value.LoseDymamicSum); value.DisconnectNum = reader.ReadByte(); writer.WriteNumber($"[{value.DisconnectNum.ReadNumber()}]START_TIME~END_TIME期间下级监控平台链路断开次数", value.DisconnectNum); value.DisconnectTime = reader.ReadUInt32(); writer.WriteNumber($"[{value.DisconnectTime.ReadNumber()}]START_TIME~END_TIME期间下级监控平台链路断开总时长,用秒表示", value.DisconnectTime); }
public JT809_0x9400_0x9403 Deserialize(ref JT809MessagePackReader reader, IJT809Config config) { var value = new JT809_0x9400_0x9403(); if (config.Version == JT809Version.JTT2011) { value.WarnSrc = (JT809WarnSrc)reader.ReadByte(); } else { value.SourcePlatformId = reader.ReadBigNumber(11); } value.WarnType = (JT809WarnType)reader.ReadUInt16(); value.WarnTime = reader.ReadUTCDateTime(); if (config.Version == JT809Version.JTT2019) { value.StartTime = reader.ReadUTCDateTime(); value.EndTime = reader.ReadUTCDateTime(); #warning 此处车牌号文档长度有误,使用旧版长度21 value.VehicleNo = reader.ReadString(21); value.VehicleColor = (JT809VehicleColorType)reader.ReadByte(); value.DestinationPlatformId = reader.ReadBigNumber(11); value.DRVLineId = reader.ReadUInt32(); } value.WarnLength = reader.ReadUInt32(); value.WarnContent = reader.ReadString((int)value.WarnLength); return(value); }
public JT809_0x1400_0x1403 Deserialize(ref JT809MessagePackReader reader, IJT809Config config) { var value = new JT809_0x1400_0x1403(); if (config.Version == JT809Version.JTT2011) { value.InfoID = reader.ReadUInt32(); value.Result = (JT809_0x1403_Result)reader.ReadByte(); } else { value.SourcePlatformId = reader.ReadBigNumber(11); value.WarnType = (JT809WarnType)reader.ReadUInt16(); value.WarnTime = reader.ReadUTCDateTime(); value.StartTime = reader.ReadUTCDateTime(); value.EndTime = reader.ReadUTCDateTime(); value.VehicleNo = reader.ReadString(21); value.VehicleColor = (JT809VehicleColorType)reader.ReadByte(); value.DestinationPlatformId = reader.ReadBigNumber(11); value.DRVLineId = reader.ReadUInt32(); value.InfoLength = reader.ReadUInt32(); value.InfoContent = reader.ReadString((int)value.InfoLength); } return(value); }
public void Analyze(ref JT809MessagePackReader reader, Utf8JsonWriter writer, IJT809Config config) { JT809_0x9400_0x9401 value = new JT809_0x9400_0x9401(); value.WarnSrc = (JT809WarnSrc)reader.ReadByte(); writer.WriteString($"[{value.WarnSrc.ToByteValue()}]报警信息来源", value.WarnSrc.ToString()); value.WarnType = reader.ReadUInt16(); writer.WriteNumber($"[{value.WarnType.ReadNumber()}]报警类型", value.WarnType); var virtualHex = reader.ReadVirtualArray(8); value.WarnTime = reader.ReadUTCDateTime(); writer.WriteString($"[{virtualHex.ToArray().ToHexString()}]报警时间", value.WarnTime); virtualHex = reader.ReadVirtualArray(4); value.SupervisionID = reader.ReadHex(4); writer.WriteString($"[{virtualHex.ToArray().ToHexString()}]报警督办ID", value.SupervisionID); virtualHex = reader.ReadVirtualArray(8); value.SupervisionEndTime = reader.ReadUTCDateTime(); writer.WriteString($"[{virtualHex.ToArray().ToHexString()}]督办截止时间", value.SupervisionEndTime); value.SupervisionLevel = (JT809_9401_SupervisionLevel)reader.ReadByte(); writer.WriteString($"[{value.SupervisionLevel.ToByteValue()}]督办级别", value.SupervisionLevel.ToString()); virtualHex = reader.ReadVirtualArray(16); value.Supervisor = reader.ReadString(16); writer.WriteString($"[{virtualHex.ToArray().ToHexString()}]督办人", value.Supervisor); virtualHex = reader.ReadVirtualArray(20); value.SupervisorTel = reader.ReadString(20); writer.WriteString($"[{virtualHex.ToArray().ToHexString()}]督办联系电话", value.SupervisorTel); virtualHex = reader.ReadVirtualArray(32); value.SupervisorEmail = reader.ReadString(32); writer.WriteString($"[{virtualHex.ToArray().ToHexString()}]督办联系电子邮件", value.SupervisorEmail); }
public JT809_0x1200_0x1207 Deserialize(ref JT809MessagePackReader reader, IJT809Config config) { JT809_0x1200_0x1207 value = new JT809_0x1200_0x1207(); value.StartTime = reader.ReadUTCDateTime(); value.EndTime = reader.ReadUTCDateTime(); return(value); }
public JT809_0x1200_0x1207 Deserialize(ref JT809MessagePackReader reader, IJT809Config config) { JT809_0x1200_0x1207 jT809_0X1200_0X1207 = new JT809_0x1200_0x1207(); jT809_0X1200_0X1207.StartTime = reader.ReadUTCDateTime(); jT809_0X1200_0X1207.EndTime = reader.ReadUTCDateTime(); return(jT809_0X1200_0X1207); }
public JT809_0x9102 Deserialize(ref JT809MessagePackReader reader, IJT809Config config) { JT809_0x9102 value = new JT809_0x9102(); value.PlateformId = reader.ReadString(11); value.StartTime = reader.ReadUTCDateTime(); value.EndTime = reader.ReadUTCDateTime(); return(value); }
public JT809_2019_0x9101 Deserialize(ref JT809MessagePackReader reader, IJT809Config config) { JT809_2019_0x9101 value = new JT809_2019_0x9101(); value.DynamicInfoTotal = reader.ReadUInt32(); value.StartTime = reader.ReadUTCDateTime(); value.EndTime = reader.ReadUTCDateTime(); return(value); }
public void Analyze(ref JT809MessagePackReader reader, Utf8JsonWriter writer, IJT809Config config) { JT809_0x1200_0x1207 value = new JT809_0x1200_0x1207(); var virtualHex = reader.ReadVirtualArray(8); value.StartTime = reader.ReadUTCDateTime(); writer.WriteString($"[{virtualHex.ToArray().ToHexString()}]开始时间", value.StartTime); virtualHex = reader.ReadVirtualArray(8); value.EndTime = reader.ReadUTCDateTime(); writer.WriteString($"[{virtualHex.ToArray().ToHexString()}]结束时间", value.StartTime); }
public JT809_0x1102 Deserialize(ref JT809MessagePackReader reader, IJT809Config config) { JT809_0x1102 value = new JT809_0x1102(); value.PlateformId = reader.ReadBigNumber(11); value.StartTime = reader.ReadUTCDateTime(); value.EndTime = reader.ReadUTCDateTime(); value.LoseDymamicSum = reader.ReadUInt32(); value.DisconnectNum = reader.ReadByte(); value.DisconnectTime = reader.ReadUInt32(); return(value); }
public void Analyze(ref JT809MessagePackReader reader, Utf8JsonWriter writer, IJT809Config config) { var value = new JT809_0x1400_0x1402(); if (config.Version == JT809Version.JTT2011) { value.WarnSrc = (JT809WarnSrc)reader.ReadByte(); writer.WriteString($"[{value.WarnSrc.ToByteValue()}]报警信息来源", value.WarnSrc.ToString()); } else { var virtualHex = reader.ReadVirtualArray(11); value.SourcePlatformId = reader.ReadString(11); writer.WriteString($"[{virtualHex.ToArray().ToHexString()}]发起报警平台唯一编码", value.SourcePlatformId); } value.WarnType = (JT809WarnType)reader.ReadUInt16(); writer.WriteString($"[{value.WarnType.ToByteValue()}]报警类型", value.WarnType.ToString()); var hex = reader.ReadVirtualArray(8); value.WarnTime = reader.ReadUTCDateTime(); writer.WriteString($"[{hex.ToArray().ToHexString()}]报警时间", value.WarnTime); if (config.Version == JT809Version.JTT2011) { value.InfoID = reader.ReadUInt32(); writer.WriteNumber($"[{value.InfoID.ReadNumber()}]信息ID", value.InfoID); } else { hex = reader.ReadVirtualArray(8); value.StartTime = reader.ReadUTCDateTime(); writer.WriteString($"[{hex.ToArray().ToHexString()}]事件开始时间", value.StartTime); hex = reader.ReadVirtualArray(8); value.EndTime = reader.ReadUTCDateTime(); writer.WriteString($"[{hex.ToArray().ToHexString()}]事件结束时间", value.EndTime); #warning 此处车牌号文档长度有误,使用旧版长度21 hex = reader.ReadVirtualArray(21); value.VehicleNo = reader.ReadString(21); writer.WriteString($"[{hex.ToArray().ToHexString()}]车牌号码", value.VehicleNo); value.VehicleColor = (JT809VehicleColorType)reader.ReadByte(); writer.WriteString($"[{value.VehicleColor.ToByteValue()}]车牌颜色", value.VehicleColor.ToString()); hex = reader.ReadVirtualArray(11); value.DestinationPlatformId = reader.ReadString(11); writer.WriteString($"[{hex.ToArray().ToHexString()}]被报警平台唯一编码", value.DestinationPlatformId); value.DRVLineId = reader.ReadUInt32(); writer.WriteNumber($"[{value.DRVLineId.ReadNumber()}]线路ID", value.DRVLineId); } value.InfoLength = reader.ReadUInt32(); writer.WriteNumber($"[{value.InfoLength.ReadNumber()}]数据长度", value.InfoLength); hex = reader.ReadVirtualArray((int)value.InfoLength); value.InfoContent = reader.ReadString((int)value.InfoLength); writer.WriteString($"[{hex.ToArray().ToHexString()}]信息内容", value.InfoContent); }
public void Analyze(ref JT809MessagePackReader reader, Utf8JsonWriter writer, IJT809Config config) { var value = new JT809_0x9500_0x9504(); if (config.Version == JT809Version.JTT2019) { var hex = reader.ReadVirtualArray(8); value.StartTime = reader.ReadUTCDateTime(); writer.WriteString($"[{hex.ToArray().ToHexString()}]开始时间", value.StartTime); hex = reader.ReadVirtualArray(8); value.EndTime = reader.ReadUTCDateTime(); writer.WriteString($"[{hex.ToArray().ToHexString()}]结束时间", value.EndTime); value.Command = (JT809CommandType)reader.ReadByte(); writer.WriteString($"[{value.Command.ToByteValue()}]命令字ID", value.Command.ToString()); } else { value.Command = (JT809CommandType)reader.ReadByte(); writer.WriteString($"[{value.Command.ToByteValue()}]命令字ID", value.Command.ToString()); switch (value.Command) { case JT809CommandType.记录仪标准版本: case JT809CommandType.当前驾驶人信息: case JT809CommandType.记录仪时间: case JT809CommandType.记录仪累计行驶里程: case JT809CommandType.记录仪脉冲系数: case JT809CommandType.车辆信息: case JT809CommandType.记录仪状态信号配置信息: case JT809CommandType.记录仪唯一性编号: break; case JT809CommandType.采集记录仪行驶记录: case JT809CommandType.采集记录仪位置信息记录: case JT809CommandType.采集记录仪事故疑点记录: case JT809CommandType.采集记录仪超时驾驶记录: case JT809CommandType.采集记录仪驾驶人身份记录: case JT809CommandType.采集记录仪外部供电记录: case JT809CommandType.采集记录仪参数修改记录: case JT809CommandType.采集记录仪速度状态日志: var hex = reader.ReadVirtualArray(6); value.StartTime = reader.ReadDateTime6(); writer.WriteString($"[{hex.ToArray().ToHexString()}]开始时间", value.StartTime); hex = reader.ReadVirtualArray(6); value.EndTime = reader.ReadDateTime6(); writer.WriteString($"[{hex.ToArray().ToHexString()}]结束时间", value.EndTime); value.Max = reader.ReadUInt16(); writer.WriteNumber($"[{value.Max.ReadNumber()}]最大数据数", value.Max); break; } } }
public void Analyze(ref JT809MessagePackReader reader, Utf8JsonWriter writer, IJT809Config config) { JT809_2019_0x9101 value = new JT809_2019_0x9101(); value.DynamicInfoTotal = reader.ReadUInt32(); writer.WriteNumber($"[{value.DynamicInfoTotal.ReadNumber()}START_TIME_END_TIME共收到的车辆定位信息数量]", value.DynamicInfoTotal); var virtualHex = reader.ReadVirtualArray(8); value.StartTime = reader.ReadUTCDateTime(); writer.WriteString($"[{virtualHex.ToArray().ToHexString()}开始时间]", value.StartTime); virtualHex = reader.ReadVirtualArray(8); value.EndTime = reader.ReadUTCDateTime(); writer.WriteString($"[{virtualHex.ToArray().ToHexString()}结束时间]", value.EndTime); }
public JT809_JT1078_0x9A00_0x9A01 Deserialize(ref JT809MessagePackReader reader, IJT809Config config) { JT809_JT1078_0x9A00_0x9A01 jT808_JT1078_0x9A00_0x9A01 = new JT809_JT1078_0x9A00_0x9A01(); jT808_JT1078_0x9A00_0x9A01.ChannelId = reader.ReadByte(); jT808_JT1078_0x9A00_0x9A01.AVItemType = reader.ReadByte(); jT808_JT1078_0x9A00_0x9A01.StreamType = reader.ReadByte(); jT808_JT1078_0x9A00_0x9A01.MemType = reader.ReadByte(); jT808_JT1078_0x9A00_0x9A01.PlayBackStartTime = reader.ReadUTCDateTime(); jT808_JT1078_0x9A00_0x9A01.PlayBackEndTime = reader.ReadUTCDateTime(); jT808_JT1078_0x9A00_0x9A01.AuthorizeCode = reader.ReadArray(64).ToArray(); jT808_JT1078_0x9A00_0x9A01.GnssData = reader.ReadArray(36).ToArray(); return(jT808_JT1078_0x9A00_0x9A01); }
public JT809_JT1078_0x1900_Record Deserialize(ref JT809MessagePackReader reader, IJT809Config config) { JT809_JT1078_0x1900_Record value = new JT809_JT1078_0x1900_Record(); value.ChannelId = reader.ReadByte(); value.StartTime = reader.ReadUTCDateTime(); value.EndTime = reader.ReadUTCDateTime(); value.AlarmType = reader.ReadUInt64(); value.AVItemType = reader.ReadByte(); value.StreamType = reader.ReadByte(); value.MemType = reader.ReadByte(); value.FileSize = reader.ReadUInt32(); return(value); }
public JT809_JT1078_0x9A00_0x9A01 Deserialize(ref JT809MessagePackReader reader, IJT809Config config) { JT809_JT1078_0x9A00_0x9A01 value = new JT809_JT1078_0x9A00_0x9A01(); value.ChannelId = reader.ReadByte(); value.AVItemType = reader.ReadByte(); value.StreamType = reader.ReadByte(); value.MemType = reader.ReadByte(); value.PlayBackStartTime = reader.ReadUTCDateTime(); value.PlayBackEndTime = reader.ReadUTCDateTime(); value.AuthorizeCode = reader.ReadString(64); value.GnssData = reader.ReadArray(36).ToArray(); return(value); }
public JT809_0x9400_0x9401 Deserialize(ref JT809MessagePackReader reader, IJT809Config config) { JT809_0x9400_0x9401 jT809_0X9400_0X9401 = new JT809_0x9400_0x9401(); jT809_0X9400_0X9401.WarnSrc = (JT809WarnSrc)reader.ReadByte(); jT809_0X9400_0X9401.WarnType = reader.ReadUInt16(); jT809_0X9400_0X9401.WarnTime = reader.ReadUTCDateTime(); jT809_0X9400_0X9401.SupervisionID = reader.ReadHex(4); jT809_0X9400_0X9401.SupervisionEndTime = reader.ReadUTCDateTime(); jT809_0X9400_0X9401.SupervisionLevel = reader.ReadByte(); jT809_0X9400_0X9401.Supervisor = reader.ReadString(16); jT809_0X9400_0X9401.SupervisorTel = reader.ReadString(20); jT809_0X9400_0X9401.SupervisorEmail = reader.ReadString(32); return(jT809_0X9400_0X9401); }
public JT809_0x1400_0x1413 Deserialize(ref JT809MessagePackReader reader, IJT809Config config) { var value = new JT809_0x1400_0x1413(); value.SourcePlatformId = reader.ReadBigNumber(11); value.WarnTime = reader.ReadUTCDateTime(); value.SourceDataType = reader.ReadUInt16(); value.SourceMsgSn = reader.ReadUInt32(); value.SupervisionEndTime = reader.ReadUTCDateTime(); value.SupervisionLevel = (JT809_0x1413_SupervisionLevel)reader.ReadByte(); value.Supervisor = reader.ReadString(16); value.SupervisorTel = reader.ReadString(20); value.SupervisorEmail = reader.ReadString(32); return(value); }
public void Analyze(ref JT809MessagePackReader reader, Utf8JsonWriter writer, IJT809Config config) { JT809_0x9500_0x9505 value = new JT809_0x9500_0x9505(); var virtualHex = reader.ReadVirtualArray(10); value.AuthenticationCode = reader.ReadBCD(20); writer.WriteString($"[{virtualHex.ToArray().ToHexString()}]监管平台下发的鉴权码", value.AuthenticationCode); virtualHex = reader.ReadVirtualArray(20); value.AccessPointName = reader.ReadString(20); writer.WriteString($"[{virtualHex.ToArray().ToHexString()}]拨号点名称", value.AccessPointName); virtualHex = reader.ReadVirtualArray(49); value.UserName = reader.ReadString(49); writer.WriteString($"[{virtualHex.ToArray().ToHexString()}]拨号用户名", value.UserName); virtualHex = reader.ReadVirtualArray(49); value.Password = reader.ReadString(22); writer.WriteString($"[{virtualHex.ToArray().ToHexString()}]拨号密码", value.Password); virtualHex = reader.ReadVirtualArray(32); value.ServerIP = reader.ReadString(32); writer.WriteString($"[{virtualHex.ToArray().ToHexString()}]地址", value.ServerIP); value.TcpPort = reader.ReadUInt16(); writer.WriteNumber($"[{value.TcpPort.ReadNumber()}]", value.TcpPort); value.UdpPort = reader.ReadUInt16(); writer.WriteNumber($"[{value.UdpPort.ReadNumber()}]", value.UdpPort); virtualHex = reader.ReadVirtualArray(8); value.EndTime = reader.ReadUTCDateTime(); writer.WriteString($"[{virtualHex.ToArray().ToHexString()}]结束时间", value.EndTime); }
public void Analyze(ref JT809MessagePackReader reader, Utf8JsonWriter writer, IJT809Config config) { JT809_0x1200_0x120A value = new JT809_0x1200_0x120A(); if (config.Version == JT809Version.JTT2019) { value.SourceDataType = reader.ReadUInt16(); writer.WriteString($"[{value.SourceDataType.ReadNumber()}]对应启动车辆定位信息交换请求消息源子业务类型标识", ((JT809SubBusinessType)value.SourceDataType).ToString()); value.SourceMsgSn = reader.ReadUInt32(); writer.WriteNumber($"[{value.SourceMsgSn.ReadNumber()}对应启动车辆定位信息交换请求消息源报文序列号]", value.SourceMsgSn); } var virtualHex = reader.ReadVirtualArray(16); value.DriverName = reader.ReadString(16); writer.WriteString($"[{virtualHex.ToArray().ToHexString()}]驾驶员姓名", value.DriverName); virtualHex = reader.ReadVirtualArray(20); value.DriverID = reader.ReadString(20); writer.WriteString($"[{virtualHex.ToArray().ToHexString()}]身份证编号", value.DriverID); virtualHex = reader.ReadVirtualArray(40); value.Licence = reader.ReadString(40); writer.WriteString($"[{virtualHex.ToArray().ToHexString()}]从业资格证", value.Licence); virtualHex = reader.ReadVirtualArray(200); value.OrgName = reader.ReadString(200); writer.WriteString($"[{virtualHex.ToArray().ToHexString()}]发证机构名称", value.OrgName); if (config.Version == JT809Version.JTT2019) { virtualHex = reader.ReadVirtualArray(8); value.ValidDate = reader.ReadUTCDateTime(); writer.WriteString($"[{virtualHex.ToArray().ToHexString()}]证件有效期", value.ValidDate); } }
public JT809_JT1078_0x9900_0x9902 Deserialize(ref JT809MessagePackReader reader, IJT809Config config) { JT809_JT1078_0x9900_0x9902 jT808_JT1078_0x9900_0x9902 = new JT809_JT1078_0x9900_0x9902(); jT808_JT1078_0x9900_0x9902.ChannelId = reader.ReadByte(); #warning 此处时间8个字节,暂使用utc时间代替 jT808_JT1078_0x9900_0x9902.StartTime = reader.ReadUTCDateTime(); jT808_JT1078_0x9900_0x9902.EndTime = reader.ReadUTCDateTime(); jT808_JT1078_0x9900_0x9902.AlarmType = reader.ReadUInt64(); jT808_JT1078_0x9900_0x9902.AVItemType = reader.ReadByte(); jT808_JT1078_0x9900_0x9902.StreamType = reader.ReadByte(); jT808_JT1078_0x9900_0x9902.MemType = reader.ReadByte(); jT808_JT1078_0x9900_0x9902.AuthorizeCode = reader.ReadArray(64).ToArray(); jT808_JT1078_0x9900_0x9902.GnssData = reader.ReadArray(36).ToArray(); return(jT808_JT1078_0x9900_0x9902); }
public void Analyze(ref JT809MessagePackReader reader, Utf8JsonWriter writer, IJT809Config config) { JT809_0x9103 value = new JT809_0x9103(); value.SubBusinessType = reader.ReadUInt16(); writer.WriteString($"[{value.SubBusinessType.ReadNumber()}]子业务类型标识", ((JT809SubBusinessType)value.SubBusinessType).ToString()); value.DataLength = reader.ReadUInt32(); writer.WriteNumber($"[{value.DataLength.ReadNumber()}]后续数据长度", value.DataLength); value.Count = reader.ReadByte(); writer.WriteNumber($"[{value.Count.ReadNumber()}]总数", value.Count); writer.WriteStartArray(); for (int i = 0; i < value.Count; i++) { writer.WriteStartObject("子业务数据类型"); JT809ManageMsgSNInform item = new JT809ManageMsgSNInform(); item.SubBusinessType = reader.ReadUInt16(); writer.WriteString($"[{item.SubBusinessType.ReadNumber()}]子业务类型标识", ((JT809SubBusinessType)item.SubBusinessType).ToString()); item.MsgSN = reader.ReadUInt32(); writer.WriteNumber($"[{item.MsgSN.ReadNumber()}对应得子业务数据类型报文序列号]", item.MsgSN); var virtualHex = reader.ReadVirtualArray(8); item.Time = reader.ReadUTCDateTime(); writer.WriteString($"[{virtualHex.ToArray().ToHexString()}]系统UTC时间", item.Time); } writer.WriteEndArray(); }
public JT809_0x9300_0x9303 Deserialize(ref JT809MessagePackReader reader, IJT809Config config) { var value = new JT809_0x9300_0x9303(); value.SerialList = reader.ReadArray(8).ToArray(); value.Time = reader.ReadUTCDateTime(); return(value); }
public JT809_JT1078_0x9A00_0x9A02 Deserialize(ref JT809MessagePackReader reader, IJT809Config config) { JT809_JT1078_0x9A00_0x9A02 jT808_JT1078_0x9A00_0x9A02 = new JT809_JT1078_0x9A00_0x9A02(); jT808_JT1078_0x9A00_0x9A02.ControlType = reader.ReadByte(); jT808_JT1078_0x9A00_0x9A02.FastTime = reader.ReadByte(); jT808_JT1078_0x9A00_0x9A02.DateTime = reader.ReadUTCDateTime(); return(jT808_JT1078_0x9A00_0x9A02); }
public JT809_JT1078_0x9A00_0x9A02 Deserialize(ref JT809MessagePackReader reader, IJT809Config config) { JT809_JT1078_0x9A00_0x9A02 value = new JT809_JT1078_0x9A00_0x9A02(); value.ControlType = (ControlType)reader.ReadByte(); value.FastTime = (FastTime)reader.ReadByte(); value.DateTime = reader.ReadUTCDateTime(); return(value); }
public JT809_0x9400_0x9403 Deserialize(ref JT809MessagePackReader reader, IJT809Config config) { JT809_0x9400_0x9403 jT809_0X9400_0X9403 = new JT809_0x9400_0x9403(); jT809_0X9400_0X9403.WarnSrc = (JT809WarnSrc)reader.ReadByte(); jT809_0X9400_0X9403.WarnType = (JT809WarnType)reader.ReadUInt16(); jT809_0X9400_0X9403.WarnTime = reader.ReadUTCDateTime(); jT809_0X9400_0X9403.WarnLength = reader.ReadUInt32(); jT809_0X9400_0X9403.WarnContent = reader.ReadString((int)jT809_0X9400_0X9403.WarnLength); return(jT809_0X9400_0X9403); }
public void Analyze(ref JT809MessagePackReader reader, Utf8JsonWriter writer, IJT809Config config) { var value = new JT809_0x9300_0x9303(); value.SerialList = reader.ReadArray(8).ToArray(); writer.WriteString($"[{value.SerialList.ToHexString()}]需要重传消息的起始报文序列号和结束的报文序列号", value.SerialList.ToHexString()); var virtualHex = reader.ReadVirtualArray(8); value.Time = reader.ReadUTCDateTime(); writer.WriteString($"[{virtualHex.ToArray().ToHexString()}]", value.Time); }
public JT809_0x9500_0x9504 Deserialize(ref JT809MessagePackReader reader, IJT809Config config) { var value = new JT809_0x9500_0x9504(); if (config.Version == JT809Version.JTT2019) { value.StartTime = reader.ReadUTCDateTime(); value.EndTime = reader.ReadUTCDateTime(); value.Command = (JT809CommandType)reader.ReadByte(); } else { value.Command = (JT809CommandType)reader.ReadByte(); switch (value.Command) { case JT809CommandType.记录仪标准版本: case JT809CommandType.当前驾驶人信息: case JT809CommandType.记录仪时间: case JT809CommandType.记录仪累计行驶里程: case JT809CommandType.记录仪脉冲系数: case JT809CommandType.车辆信息: case JT809CommandType.记录仪状态信号配置信息: case JT809CommandType.记录仪唯一性编号: break; case JT809CommandType.采集记录仪行驶记录: case JT809CommandType.采集记录仪位置信息记录: case JT809CommandType.采集记录仪事故疑点记录: case JT809CommandType.采集记录仪超时驾驶记录: case JT809CommandType.采集记录仪驾驶人身份记录: case JT809CommandType.采集记录仪外部供电记录: case JT809CommandType.采集记录仪参数修改记录: case JT809CommandType.采集记录仪速度状态日志: value.StartTime = reader.ReadDateTime6(); value.EndTime = reader.ReadDateTime6(); value.Max = reader.ReadUInt16(); break; } } return(value); }
public JT809_0x1400_0x1402 Deserialize(ref JT809MessagePackReader reader, IJT809Config config) { JT809_0x1400_0x1402 jT809_0X1400_0X1402 = new JT809_0x1400_0x1402(); jT809_0X1400_0X1402.WarnSrc = (JT809WarnSrc)reader.ReadByte(); jT809_0X1400_0X1402.WarnType = (JT809WarnType)reader.ReadUInt16(); jT809_0X1400_0X1402.WarnTime = reader.ReadUTCDateTime(); jT809_0X1400_0X1402.InfoID = reader.ReadUInt32(); jT809_0X1400_0X1402.InfoLength = reader.ReadUInt32(); jT809_0X1400_0X1402.InfoContent = reader.ReadString((int)jT809_0X1400_0X1402.InfoLength); return(jT809_0X1400_0X1402); }