Имеется на руках teltonik FMB920. Настроил его на отправку TCP пакетов на сервер через GPRS. На сервере написан PHP скрипт на сокетах. Удаётся считать только IMEI код устройства, который приходит первым пакетом. Далее трекер не принимает команд и не отвечает больше никак.
Попытка прочитать несколько раз
$sock = socket_create(AF_INET,SOCK_STREAM, 0 );
if (!socket_set_option($sock, SOL_SOCKET, SO_REUSEADDR, 1)) {
echo socket_strerror(socket_last_error($sock));
exit;
}
socket_bind($sock, "0.0.0.0", 12345);
$res = socket_listen($sock);
while (1) {
if ($res) {
echo "start listening\n";
}
$client = socket_accept($sock);
echo "get client\n";
for ($i = 0; $i<10; $i++) {
$responce = "";
echo "start_reading\n";
$response = socket_read($client, 100);
echo "readed \n***\n$response\n***\n";
sleep (1);
}
}
А это попытка отправить команду после прочтения первого пакета
for ($i = 0; $i<10; $i++) {
$responce = "";
echo "start_reading\n";
$response = socket_read($client, 100);
echo "readed \n***\n$response\n***\n";
sleep (1);
socket_write($client, "getver");
sleep (1);
$response = socket_read($client, 100);
echo "readed \n***\n$response\n***\n";
}
В общем. Суть была в незнании протокола teltonika.
https://wiki.teltonika.lt/index.php?title=RUT955_Protocols
Ежели кому лень читать, На первый пакет трекера в виде IMEI кода нужно ответить бинарной строкой "01"
socket_write($client, hex2bin("01"));
и далее уже трекер спокойно отдал мне gps данные в виде AVL пакета.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Судари и сударыни, помогите советомКак сделать класс НЕ наследуемым (PHP) ?? Гугление по ключевым словам "не наследуемый класс PHP", "какие бывают...
стоит версия php56 mac os, ставил через brew, при запуске php -S localhost:8000 заводится сервер, читает indexhtml, но как только доходит дело до чтения кода php сервер...
Есть потребность в том, чтобы моя программа имела полноценную поддержку Windows XP