Страница 27 из 53

Re: Модуль GPS-трекер

Добавлено: Ср апр 18, 2018 7:28 pm
Logrus
про имена, намедни я так понял модуль (другой) аналогично обзывает класс, ну и далее
может как в простых устройствах если класс модуля вначале м и т.д.
так к слову

Re: Модуль GPS-трекер

Добавлено: Чт апр 26, 2018 1:13 pm
xneo
А как запускать оптимизацию лога из планировщка например или еще как нибудь? Например раз в неделю.

Re: Модуль GPS-трекер

Добавлено: Пт июн 08, 2018 1:00 am
ipc2002
Подскажите, пожалуйста, а можно как-то сделать так, чтоб во вкладке Действия, в выполняющемся по событию коде использовать поля Местоположение и Пользователь? Как, например, реализовано обращение к $host['TITLE'] в приложении Устройства Онлайн?

Код: Выделить всё

say("Устройство ".$host['TITLE']." появилось в сети." ,0);
Т.е. чтобы, например, создать универсальный сценарий вроде:

Код: Выделить всё

say($action['USER'].' в '.$action['LOCATION'].'. Позвони, если что-то нужно купить',1);
а вместо переменных автоматически подставлялись значения в зависимости от выбранных полей во вкладке Действия модуля...

P.S.: Надеюсь понятно объяснил))

Re: Модуль GPS-трекер

Добавлено: Сб июн 09, 2018 12:17 am
igorewa
xneo писал(а):
Чт апр 26, 2018 1:13 pm
А как запускать оптимизацию лога из планировщка например или еще как нибудь? Например раз в неделю.
Присоединяюсь к вопросу

Re: Модуль GPS-трекер

Добавлено: Сб июн 09, 2018 11:36 am
xor
Код оптимизации лога лежит в ...\modules\app_gpstrack\gpslog_search.inc.php

Код: Выделить всё

  set_time_limit(6000);
  $records=SQLSelect("SELECT gpslog.ID, gpslog.DEVICEID, gpslog.LOCATION_ID, gpsdevices.ID as GPS_DEVICE_ID FROM gpslog LEFT JOIN gpsdevices ON gpslog.DEVICE_ID=gpsdevices.ID ORDER BY gpslog.DEVICEID, gpslog.ADDED DESC");
  $total=count($records);
  $to_delete=array();
  for($i=1;$i<$total-1;$i++) {
   if (!$records[$i]['GPS_DEVICE_ID']) {
    SQLExec("DELETE FROM gpslog WHERE ID=".$records[$i]['ID']);
    continue;
   }
   if (!$records[$i]['LOCATION_ID']) continue;
   if ($records[$i]['LOCATION_ID']==$records[$i+1]['LOCATION_ID'] && $records[$i]['LOCATION_ID']==$records[$i-1]['LOCATION_ID']
      && $records[$i]['GPS_DEVICE_ID']==$records[$i+1]['GPS_DEVICE_ID'] && $records[$i]['GPS_DEVICE_ID']==$records[$i-1]['GPS_DEVICE_ID']) {
    //$to_delete[]=$records[$i]['ID'];
    SQLExec("DELETE FROM gpslog WHERE ID=".$records[$i]['ID']);
   }

   if ($i%200==0) {
     echo ".";
     echo str_repeat(' ', 1024);
     flush();
     flush();
   }

  }
  /*
  if ($to_delete[0]) {
   $total=count($to_delete);
   for($i=0;$i<$total;$i++) {
    SQLExec("DELETE FROM gpslog WHERE ID=".$to_delete[$i]);
   }
   $this->redirect("?");
  }
  */
  SQLExec("OPTIMIZE TABLE `gpslog`");

     echo " DONE";
     echo str_repeat(' ', 1024);
     flush();
     flush();

     exit;
Можно оформить его скриптом и пользоваться.

Re: Модуль GPS-трекер

Добавлено: Чт июн 21, 2018 11:12 am
dmw
Если из браузера обратиться к модулю то выводится последнее сообщение лога Алисы, причем в английской транскрипции, зачем это так сделано?
Даже на демке также работает (http://md-demo.vpnki.ru/gps.php):
11:07 Sistemnyy status izmenilsya na Krasnyy.

Re: Модуль GPS-трекер

Добавлено: Пт июн 29, 2018 11:44 am
zoldaten
пытаюсь прикрутить самодельный gps-tracker (фото).
tracker обращается к файлу на другом сервере (write.php - аналог gps.php в majordomo) с содержимым:
<?php
$ip = $_SERVER['REMOTE_ADDR']; //получаем IP адрес клиента
$client = $_SERVER['HTTP_USER_AGENT']; //получаем идентификатор HTTP клиента
$today = date("Y.m.d H:i:s"); //получаем текущие дату и время
$f = fopen("log.csv","a"); //открываем файл для добавления данных
$parama = $_REQUEST['a']; //получаем значение переменной "а"
$paramb = $_REQUEST['b']; //получаем значение переменной "b"
$parama0 = $_REQUEST['a0']; //получаем значение переменной "a0"
$parama1 = $_REQUEST['a1']; //получаем значение переменной "a1"
fwrite($f,"<div class='row'><div class='cell1'> $today </div> <div class='cell2'> $ip </div><div class='cell3'> $client </div><div class='cell4'> $parama </div><div class='cell5'> $paramb </div><div class='cell6'><a href='https://yandex.ru/maps/?source=serp_navig&text=$parama + $paramb'>Яндекс.Карты</a></div><div class='cell6'>$parama0</div><div class='cell6'>$parama1</div></div>"); //запись данных в файл
fclose($f); //закрываем файл
?>

что надо поправить в gps.php, чтобы все работало ?
какая строка отправки данных для корректного приема в gps.php ?
или что поправить в строке отправки ?
сейчас строка отправки такая:
tempstr = String("AT+HTTPPARA=\"URL\",\"мой_сайт/gps/write.php?a=" + dataa + "&b=" + datab + "&a0=" + String(dataA0) +"&a1=" + String(dataA1) +"\"");

Re: Модуль GPS-трекер

Добавлено: Вт июл 17, 2018 4:54 am
xneo
Всем привет!
В модуле есть одна незначительная проблема (у меня по крайней мере).
Во вкладке Места при редактировании какого либо места внизу слева есть превью этого места, которое всегда ссылается на гуглокарты (которые без ключа API не работают: "The Google Maps Platform server rejected your request. You must use an API key to authenticate each request to Google Maps Platform APIs. For additional information, please refer to http://g.co/dev/maps-no-account"), несмотря на то что в настройках выбрано использование яндекскарт и в остальных местах подгружаются именно яндекскарты.

Изображения:
СпойлерПоказать
Screenshot_5.png
Screenshot_5.png (18.5 КБ) 4056 просмотров
Screenshot_4.png
Screenshot_4.png (17.17 КБ) 4056 просмотров
Screenshot_3.png
Screenshot_3.png (22.75 КБ) 4056 просмотров
ОБН:
В файле <место где размещен MD>/templates/app_gpstrack/gpslocations_edit.html
(Обычно это /var/www/templates/app_gpstrack/gpslocations_edit.html)
нужно заменить:

Код: Выделить всё

[#if ID!=""#]

<img src="https://maps.googleapis.com/maps/api/staticmap?center=[#LAT#],[#LON#]&size=512x512&maptype=hybrid&sensor=false&zoom=14&markers=[#LAT#],[#LON#]" border="0">

[#endif ID#]
на это (добавлен ключ в конце ссылки [#if "<#API_KEY#>"!=""#]&key=<#API_KEY#>[#endif#]):

Код: Выделить всё

[#if ID!=""#]

<img src="https://maps.googleapis.com/maps/api/staticmap?center=[#LAT#],[#LON#]&size=512x512&maptype=hybrid&sensor=false&zoom=14&markers=[#LAT#],[#LON#][#if "<#API_KEY#>"!=""#]&key=<#API_KEY#>[#endif#]" border="0">

[#endif ID#]
Хотя проблему с отображением через гуглокарты вместо яндекскарт это не решает.

Re: Модуль GPS-трекер

Добавлено: Пн июл 23, 2018 11:59 am
antonpoll
Помогите разобраться с проблемой.

Логи если с Таскера приходят не постоянно, принудительно посылаешь приходят через раз. (хотя самом первом тесте все определилось сразу)

1. Устройство определяется, и обновляется раз в 2 минуты, но логи не приходят.
2. Логи не приходят.
Но в какой-то момент прораволо и начали приходить, даже успел записать путь на работу, потом в таскере раз запустил ручками, все больше логов нет.
Перезагружаю телефон, может прийти лог, а может нет, но всего один раз. А может просто в какой-то момент прислать. Вот пока писал этот пост логи стали приходить постонно, но так уже было и не факт что снова не переастанут.

Кто виноват? Трекер, Таскер или я? )))

Re: Модуль GPS-трекер

Добавлено: Пн июл 23, 2018 1:00 pm
eygen
antonpoll писал(а):
Пн июл 23, 2018 11:59 am
Помогите разобраться с проблемой.

Логи если с Таскера приходят не постоянно, принудительно посылаешь приходят через раз. (хотя самом первом тесте все определилось сразу)

1. Устройство определяется, и обновляется раз в 2 минуты, но логи не приходят.
2. Логи не приходят.
Но в какой-то момент прораволо и начали приходить, даже успел записать путь на работу, потом в таскере раз запустил ручками, все больше логов нет.
Перезагружаю телефон, может прийти лог, а может нет, но всего один раз. А может просто в какой-то момент прислать. Вот пока писал этот пост логи стали приходить постонно, но так уже было и не факт что снова не переастанут.

Кто виноват? Трекер, Таскер или я? )))
Подозреваемых несколько больше
в список возможных виновных добавил бы еще
1.Телефон (всякие режимы энергосбережения отключают GPS и передачу данных)
2.Интернет.