我正在使用Ruptela设备进行GPS跟踪。它工作正常,我以十六进制的形式从设备到服务器获取数据如下:
03d30003106796f910bb01011659ae6f4100002e0f9f6711028ac208db00000500001307030500b0000200021d35bb160010 014d000000000059ae6f4200002e0f9f6711028ac208db00000500001305030501b0000200021d35c6160016014d000000000059ae6f4a00002e0f9f6711028ac208db0000050000130703 0501b0000200021d35b7160010014d000000000059ae6f5400002e0f9f6711028ac208db00000500001307030501b0000200021d35be160010014d000000000059ae6f5e00002e0f9f7811 028ac208de00000500001307030501b0000200021d3562160010014d000000000059ae6f6800002e0fa08211028a9008b5805c0500001307030501b0010200021d3603160010014d000000 020059ae6f7200002e0fa01e11028ad308d3805c0500001307030501b0000200021d35df16000f014d000000000059ae6f7c00002e0f9ffd11028bcd08d3805c0500001307030501b00002 00021d35e9160010014d000000000059ae6f8600002e0f9f6711028b5808ca600e0600000c07030501b0010200021d35a8160010014d000000000059ae6f9000002e0f9e8e11028a1c08bc 60c20600000c07030501b0000200021d35b1160010014d000000010059ae6f9a00002e0f9e3b110289ea08c4639c0600000c07030501b0000200021d3577160010014d000000010059ae6f a400002e0f9dc6110289b808bc58ac0600021307030501b0000200021d3597160010014d000000000059ae6fae00002e0f9dd7110289fa08a9541a0700000b07030501b0000200021d35ba 160010014d000000000059ae6fb800002e0f9db611028a2c08a07ddc0700000b07030501b0000200021d35b1160010014d000000000059ae6fc200002e0f9d7311028a80089f533e070000 0b07030501b0000200021d35bd160010014d000000020059ae6fcc00002e0f9c9a11028986089162e80600001307030501b0000200021d35c0160010014d000000020059ae6fd600002e0f 9c791102888c088762e80700000b07030501b0000200021d35c5160010014d000000000059ae6fe000002e0f9cbc110288f0088d62e80700000b07030501b0000200021d353b16000e014d 000000000059ae6fea00002e0f9cee11028954088c62e80700000b07030501b0000200021d3591160010014d000000000059ae6ff400002e0f9cbc11028975088b62e80700000b07030501 b0000200021d35bc160010014d000000000059ae6ffe00002e0f9c4711028996088d62e80700000b07030501b0000200021d35ad16000d014d000000000059ae700800002e0f9cfe11028a 5e088d62e80800000b07030501b0000200021d35a4160010014d0000000000eb34
现在主要问题是如何解码这些数据, 是否有一些文档可以将数据解码为人类可读的形式。
答案 0 :(得分:0)
我希望答案不会太迟。
最近,我开发了一个Node.js模块,它将您的这些数据转换为可读的JS对象。您可以使用以下命令通过npm安装软件包:
npm i --save ruptela
有关详细信息,请参阅包:https://www.npmjs.com/package/ruptela
这是你的数据作为JS对象:
{
data: {
packet_length: 979,
imei: 862462030713019,
command_id: 1,
payload: {
records_left: 1,
records_total: 22,
records: [{
timestamp: 1504603969,
timestamp_extension: 0,
priority: 0,
longitude: 772775783,
latitude: 285379266,
altitude: 2267,
angle: 0,
satellites: 5,
speed: 0,
hdop: 19,
event_id: 7,
io: {
'2': 0,
'5': 0,
'22': 16,
'29': 13755,
'77': 0,
'176': 0
}
},
{
timestamp: 1504603970,
timestamp_extension: 0,
priority: 0,
longitude: 772775783,
latitude: 285379266,
altitude: 2267,
angle: 0,
satellites: 5,
speed: 0,
hdop: 19,
event_id: 5,
io: {
'2': 0,
'5': 1,
'22': 22,
'29': 13766,
'77': 0,
'176': 0
}
},
{
timestamp: 1504603978,
timestamp_extension: 0,
priority: 0,
longitude: 772775783,
latitude: 285379266,
altitude: 2267,
angle: 0,
satellites: 5,
speed: 0,
hdop: 19,
event_id: 7,
io: {
'2': 0,
'5': 1,
'22': 16,
'29': 13751,
'77': 0,
'176': 0
}
},
{
timestamp: 1504603988,
timestamp_extension: 0,
priority: 0,
longitude: 772775783,
latitude: 285379266,
altitude: 2267,
angle: 0,
satellites: 5,
speed: 0,
hdop: 19,
event_id: 7,
io: {
'2': 0,
'5': 1,
'22': 16,
'29': 13758,
'77': 0,
'176': 0
}
},
{
timestamp: 1504603998,
timestamp_extension: 0,
priority: 0,
longitude: 772775800,
latitude: 285379266,
altitude: 2270,
angle: 0,
satellites: 5,
speed: 0,
hdop: 19,
event_id: 7,
io: {
'2': 0,
'5': 1,
'22': 16,
'29': 13666,
'77': 0,
'176': 0
}
},
{
timestamp: 1504604008,
timestamp_extension: 0,
priority: 0,
longitude: 772776066,
latitude: 285379216,
altitude: 2229,
angle: 32860,
satellites: 5,
speed: 0,
hdop: 19,
event_id: 7,
io: {
'2': 0,
'5': 1,
'22': 16,
'29': 13827,
'77': 2,
'176': 1
}
},
{
timestamp: 1504604018,
timestamp_extension: 0,
priority: 0,
longitude: 772775966,
latitude: 285379283,
altitude: 2259,
angle: 32860,
satellites: 5,
speed: 0,
hdop: 19,
event_id: 7,
io: {
'2': 0,
'5': 1,
'22': 15,
'29': 13791,
'77': 0,
'176': 0
}
},
{
timestamp: 1504604028,
timestamp_extension: 0,
priority: 0,
longitude: 772775933,
latitude: 285379533,
altitude: 2259,
angle: 32860,
satellites: 5,
speed: 0,
hdop: 19,
event_id: 7,
io: {
'2': 0,
'5': 1,
'22': 16,
'29': 13801,
'77': 0,
'176': 0
}
},
{
timestamp: 1504604038,
timestamp_extension: 0,
priority: 0,
longitude: 772775783,
latitude: 285379416,
altitude: 2250,
angle: 24590,
satellites: 6,
speed: 0,
hdop: 12,
event_id: 7,
io: {
'2': 0,
'5': 1,
'22': 16,
'29': 13736,
'77': 0,
'176': 1
}
},
{
timestamp: 1504604048,
timestamp_extension: 0,
priority: 0,
longitude: 772775566,
latitude: 285379100,
altitude: 2236,
angle: 24770,
satellites: 6,
speed: 0,
hdop: 12,
event_id: 7,
io: {
'2': 0,
'5': 1,
'22': 16,
'29': 13745,
'77': 1,
'176': 0
}
},
{
timestamp: 1504604058,
timestamp_extension: 0,
priority: 0,
longitude: 772775483,
latitude: 285379050,
altitude: 2244,
angle: 25500,
satellites: 6,
speed: 0,
hdop: 12,
event_id: 7,
io: {
'2': 0,
'5': 1,
'22': 16,
'29': 13687,
'77': 1,
'176': 0
}
},
{
timestamp: 1504604068,
timestamp_extension: 0,
priority: 0,
longitude: 772775366,
latitude: 285379000,
altitude: 2236,
angle: 22700,
satellites: 6,
speed: 2,
hdop: 19,
event_id: 7,
io: {
'2': 0,
'5': 1,
'22': 16,
'29': 13719,
'77': 0,
'176': 0
}
},
{
timestamp: 1504604078,
timestamp_extension: 0,
priority: 0,
longitude: 772775383,
latitude: 285379066,
altitude: 2217,
angle: 21530,
satellites: 7,
speed: 0,
hdop: 11,
event_id: 7,
io: {
'2': 0,
'5': 1,
'22': 16,
'29': 13754,
'77': 0,
'176': 0
}
},
{
timestamp: 1504604088,
timestamp_extension: 0,
priority: 0,
longitude: 772775350,
latitude: 285379116,
altitude: 2208,
angle: 32220,
satellites: 7,
speed: 0,
hdop: 11,
event_id: 7,
io: {
'2': 0,
'5': 1,
'22': 16,
'29': 13745,
'77': 0,
'176': 0
}
},
{
timestamp: 1504604098,
timestamp_extension: 0,
priority: 0,
longitude: 772775283,
latitude: 285379200,
altitude: 2207,
angle: 21310,
satellites: 7,
speed: 0,
hdop: 11,
event_id: 7,
io: {
'2': 0,
'5': 1,
'22': 16,
'29': 13757,
'77': 2,
'176': 0
}
},
{
timestamp: 1504604108,
timestamp_extension: 0,
priority: 0,
longitude: 772775066,
latitude: 285378950,
altitude: 2193,
angle: 25320,
satellites: 6,
speed: 0,
hdop: 19,
event_id: 7,
io: {
'2': 0,
'5': 1,
'22': 16,
'29': 13760,
'77': 2,
'176': 0
}
},
{
timestamp: 1504604118,
timestamp_extension: 0,
priority: 0,
longitude: 772775033,
latitude: 285378700,
altitude: 2183,
angle: 25320,
satellites: 7,
speed: 0,
hdop: 11,
event_id: 7,
io: {
'2': 0,
'5': 1,
'22': 16,
'29': 13765,
'77': 0,
'176': 0
}
},
{
timestamp: 1504604128,
timestamp_extension: 0,
priority: 0,
longitude: 772775100,
latitude: 285378800,
altitude: 2189,
angle: 25320,
satellites: 7,
speed: 0,
hdop: 11,
event_id: 7,
io: {
'2': 0,
'5': 1,
'22': 14,
'29': 13627,
'77': 0,
'176': 0
}
},
{
timestamp: 1504604138,
timestamp_extension: 0,
priority: 0,
longitude: 772775150,
latitude: 285378900,
altitude: 2188,
angle: 25320,
satellites: 7,
speed: 0,
hdop: 11,
event_id: 7,
io: {
'2': 0,
'5': 1,
'22': 16,
'29': 13713,
'77': 0,
'176': 0
}
},
{
timestamp: 1504604148,
timestamp_extension: 0,
priority: 0,
longitude: 772775100,
latitude: 285378933,
altitude: 2187,
angle: 25320,
satellites: 7,
speed: 0,
hdop: 11,
event_id: 7,
io: {
'2': 0,
'5': 1,
'22': 16,
'29': 13756,
'77': 0,
'176': 0
}
},
{
timestamp: 1504604158,
timestamp_extension: 0,
priority: 0,
longitude: 772774983,
latitude: 285378966,
altitude: 2189,
angle: 25320,
satellites: 7,
speed: 0,
hdop: 11,
event_id: 7,
io: {
'2': 0,
'5': 1,
'22': 13,
'29': 13741,
'77': 0,
'176': 0
}
},
{
timestamp: 1504604168,
timestamp_extension: 0,
priority: 0,
longitude: 772775166,
latitude: 285379166,
altitude: 2189,
angle: 25320,
satellites: 8,
speed: 0,
hdop: 11,
event_id: 7,
io: {
'2': 0,
'5': 1,
'22': 16,
'29': 13732,
'77': 0,
'176': 0
}
}
]
},
crc: 60212
},
ack: < Buffer 00 02 64 01 13 bc >
}