Разрабатывает приложение Netty. В этом я читаю пакеты данных от клиента. Но есть одно устройство Teltonika. Это устройство сначала отправляет номер IMEI, и как только мы его подтвердим, он отправляет TrackPacket.Чтение данных с устройства?
Но проблема в том, что он отправляет правильный номер IMEI, но отправляемый TarckPacket остается в нечитаемом формате. Пожалуйста, помогите мне .
Устройство, отправляющее номер IMEI, находится в правильном формате, но нижеуказанный пакет отслеживания не соответствует правильному формату.
отслеживания пакетов:
[0, 0, 0, 0, 0, 0, 0, -61, 8, 4, 0, 0, 1, 53, -117, 86, 80, -56, 0, 46, 60, 22, -128, 7, -60, -27, 40, 3, -118, 1, 92, 10, 0, 0, 6, 2, 1, 1, 2 , 0, 3, 9, 0, 23, 10, 0, 13, 24, 0, 0, 1, -57, 0, 0, 0, 0, 0, 0, 1, 53, -117, 85 , 101, -18, 0, 46, 60, 22, -128, 7, -60, -27, -112, 3, -119, 1, 92, 9, 0, 0, 0, 6, 2, 1 , 1, 2, 0, 3, 9, 0, 27, 10, 0, 10, 24, 0, 0, 1, -57, 0, 0, 0, 0, 0, 0, 1, 53, -117, 84, 123, 21, 0, 46, 60, 22, -128, 7, -60, -27, -112, 3, -121, 1, 92, 8, 0, 0, 0, 6, 2, 1, 1, 2, 0, 3, 9, 0, 27, 10, 0, 12, 24, 0, 0, 1, -57, 0, 0, 0, 0, 0, 0, 1 , 53, -117, 83, -115, -78, 0, 46, 60, 22, -128, 7, -60, -27, -48, 3, -121, 1, 92, 11]
То, что я сделал:
StringBuffer sbs = new StringBuffer();
buf = (ChannelBuffer) e.getMessage();
while(buf.readable())
{
sbs.append((char) buf.readByte());
}
msg = sbs.toString();
System.out.println(msg);
byte[] request = new byte[] { 0x01 };
e.getChannel().write(ChannelBuffers.wrappedBuffer(request));
System.out.flush();
StringBuffer sbs = new StringBuffer(); buf = (ChannelBuffer) e.getMessage(); while (buf.readable()) { \t \t \t sbs.append ((char) buf.readByte()); \t \t \t} msg = sbs.toString(); \t \t \t \t System.out.println (msg); байт [] запрос = новый байт [] {0x01}; \t \t \t \t e.getChannel(). Write (ChannelBuffers.wrappedBuffer (запрос)); System.out.flush(); AM может отправить подтверждение, которое устройство также понимает. но устройство отправляет пакет отслеживания, который я не умею читать. – Raghava