gps и доступ извне
Модератор: immortal
-
- Сообщения: 2079
- Зарегистрирован: Пт апр 07, 2017 12:20 pm
- Благодарил (а): 313 раз
- Поблагодарили: 457 раз
Re: Модуль GPS-трекер
про имена, намедни я так понял модуль (другой) аналогично обзывает класс, ну и далее
может как в простых устройствах если класс модуля вначале м и т.д.
так к слову
может как в простых устройствах если класс модуля вначале м и т.д.
так к слову
Telegram | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
-
- Сообщения: 21
- Зарегистрирован: Пн апр 24, 2017 4:35 am
- Благодарил (а): 4 раза
- Поблагодарили: 1 раз
Re: Модуль GPS-трекер
А как запускать оптимизацию лога из планировщка например или еще как нибудь? Например раз в неделю.
- ipc2002
- Сообщения: 125
- Зарегистрирован: Пн май 15, 2017 8:13 pm
- Откуда: Москва
- Благодарил (а): 102 раза
- Поблагодарили: 14 раз
- Контактная информация:
Re: Модуль GPS-трекер
Подскажите, пожалуйста, а можно как-то сделать так, чтоб во вкладке Действия, в выполняющемся по событию коде использовать поля Местоположение и Пользователь? Как, например, реализовано обращение к $host['TITLE'] в приложении Устройства Онлайн?
Т.е. чтобы, например, создать универсальный сценарий вроде:
а вместо переменных автоматически подставлялись значения в зависимости от выбранных полей во вкладке Действия модуля...
P.S.: Надеюсь понятно объяснил))
Код: Выделить всё
say("Устройство ".$host['TITLE']." появилось в сети." ,0);
Код: Выделить всё
say($action['USER'].' в '.$action['LOCATION'].'. Позвони, если что-то нужно купить',1);
P.S.: Надеюсь понятно объяснил))
- Рейтинг: 1.16%
- igorewa
- Сообщения: 515
- Зарегистрирован: Ср дек 21, 2016 11:54 pm
- Откуда: Киев
- Благодарил (а): 12 раз
- Поблагодарили: 43 раза
Re: Модуль GPS-трекер
Присоединяюсь к вопросу
- Рейтинг: 1.16%
ASUS H110T, I5 7500, DDR4-16Gb, SSD256 . WIN10 64 (LTSB)
- xor
- Сообщения: 2038
- Зарегистрирован: Сб ноя 22, 2014 8:45 pm
- Благодарил (а): 284 раза
- Поблагодарили: 629 раз
Re: Модуль GPS-трекер
Код оптимизации лога лежит в ...\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;
- Рейтинг: 1.16%
win10 connect https://connect.smartliving.ru/profile/303
-
- Сообщения: 469
- Зарегистрирован: Вт мар 12, 2013 1:22 am
- Благодарил (а): 41 раз
- Поблагодарили: 81 раз
Re: Модуль GPS-трекер
Если из браузера обратиться к модулю то выводится последнее сообщение лога Алисы, причем в английской транскрипции, зачем это так сделано?
Даже на демке также работает (http://md-demo.vpnki.ru/gps.php):
Даже на демке также работает (http://md-demo.vpnki.ru/gps.php):
11:07 Sistemnyy status izmenilsya na Krasnyy.
-
- Сообщения: 158
- Зарегистрирован: Вт авг 23, 2016 3:08 pm
- Откуда: Москва
- Благодарил (а): 5 раз
- Поблагодарили: 22 раза
- Контактная информация:
Re: Модуль GPS-трекер
пытаюсь прикрутить самодельный 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) +"\"");
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) +"\"");
- Вложения
-
- gps-tracker.jpg (3.54 МБ) 4076 просмотров
Raspberry pi3 на X820 с собственного образа MJD, broadlink rm mini3, sonoff basic, самодельные погодные станции и wi-fi розетки на esp8266 esp-01.физический robot-дворецкий.
-
- Сообщения: 21
- Зарегистрирован: Пн апр 24, 2017 4:35 am
- Благодарил (а): 4 раза
- Поблагодарили: 1 раз
Re: Модуль GPS-трекер
Всем привет!
В модуле есть одна незначительная проблема (у меня по крайней мере).
Во вкладке Места при редактировании какого либо места внизу слева есть превью этого места, которое всегда ссылается на гуглокарты (которые без ключа 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"), несмотря на то что в настройках выбрано использование яндекскарт и в остальных местах подгружаются именно яндекскарты.
Изображения:
ОБН:
В файле <место где размещен MD>/templates/app_gpstrack/gpslocations_edit.html
(Обычно это /var/www/templates/app_gpstrack/gpslocations_edit.html)
нужно заменить:
на это (добавлен ключ в конце ссылки [#if "<#API_KEY#>"!=""#]&key=<#API_KEY#>[#endif#]):
Хотя проблему с отображением через гуглокарты вместо яндекскарт это не решает.
В модуле есть одна незначительная проблема (у меня по крайней мере).
Во вкладке Места при редактировании какого либо места внизу слева есть превью этого места, которое всегда ссылается на гуглокарты (которые без ключа 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"), несмотря на то что в настройках выбрано использование яндекскарт и в остальных местах подгружаются именно яндекскарты.
Изображения:
СпойлерПоказать
В файле <место где размещен 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 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#]
- Рейтинг: 1.16%
-
- Сообщения: 6
- Зарегистрирован: Вс июл 15, 2018 11:12 pm
- Благодарил (а): 10 раз
- Поблагодарили: 0
Re: Модуль GPS-трекер
Помогите разобраться с проблемой.
Логи если с Таскера приходят не постоянно, принудительно посылаешь приходят через раз. (хотя самом первом тесте все определилось сразу)
1. Устройство определяется, и обновляется раз в 2 минуты, но логи не приходят.
2. Логи не приходят.
Но в какой-то момент прораволо и начали приходить, даже успел записать путь на работу, потом в таскере раз запустил ручками, все больше логов нет.
Перезагружаю телефон, может прийти лог, а может нет, но всего один раз. А может просто в какой-то момент прислать. Вот пока писал этот пост логи стали приходить постонно, но так уже было и не факт что снова не переастанут.
Кто виноват? Трекер, Таскер или я? )))
Логи если с Таскера приходят не постоянно, принудительно посылаешь приходят через раз. (хотя самом первом тесте все определилось сразу)
1. Устройство определяется, и обновляется раз в 2 минуты, но логи не приходят.
2. Логи не приходят.
Но в какой-то момент прораволо и начали приходить, даже успел записать путь на работу, потом в таскере раз запустил ручками, все больше логов нет.
Перезагружаю телефон, может прийти лог, а может нет, но всего один раз. А может просто в какой-то момент прислать. Вот пока писал этот пост логи стали приходить постонно, но так уже было и не факт что снова не переастанут.
Кто виноват? Трекер, Таскер или я? )))
-
- Сообщения: 392
- Зарегистрирован: Чт сен 25, 2014 5:37 pm
- Откуда: Екатеринбург
- Благодарил (а): 25 раз
- Поблагодарили: 52 раза
Re: Модуль GPS-трекер
Подозреваемых несколько большеantonpoll писал(а): ↑Пн июл 23, 2018 11:59 amПомогите разобраться с проблемой.
Логи если с Таскера приходят не постоянно, принудительно посылаешь приходят через раз. (хотя самом первом тесте все определилось сразу)
1. Устройство определяется, и обновляется раз в 2 минуты, но логи не приходят.
2. Логи не приходят.
Но в какой-то момент прораволо и начали приходить, даже успел записать путь на работу, потом в таскере раз запустил ручками, все больше логов нет.
Перезагружаю телефон, может прийти лог, а может нет, но всего один раз. А может просто в какой-то момент прислать. Вот пока писал этот пост логи стали приходить постонно, но так уже было и не факт что снова не переастанут.
Кто виноват? Трекер, Таскер или я? )))
в список возможных виновных добавил бы еще
1.Телефон (всякие режимы энергосбережения отключают GPS и передачу данных)
2.Интернет.