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

Разработка дополнительных модулей, подключение различных приложений.

Модераторы: Bagir, Ivan, Vit, immortal, PAV

Аватара пользователя
dioxin
Сообщения: 132
Зарегистрирован: Вт фев 14, 2017 4:43 pm
Благодарил (а): 13 раз
Поблагодарили: 28 раз

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

Сообщение dioxin » Вт фев 20, 2018 5:05 pm

Опрашиваю раз в минуту, логи растут как на дрожжах. Надо бы сделать оптимизацию и очистку логов по расписанию. Что в cron прописать?
Алиска прописана на Debian 8 | Мой канал на youtube по MajorDomo
Аватара пользователя
lanket
Сообщения: 1091
Зарегистрирован: Вт окт 14, 2014 11:27 pm
Откуда: Санкт-Петербург
Благодарил (а): 232 раза
Поблагодарили: 144 раза
Контактная информация:

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

Сообщение lanket » Ср апр 18, 2018 1:56 pm

nick7zmail писал(а):Поддерживаю...уже давно просил - реакции ноль...пришлось пока смириться)
Тут вчера вспомнил про этот 'баг'. Так же припомнилось что это была попытка обновлять seenat адресом местоположения трекера.
Задумка показалась интересной.
Посмотрел эту функцию которая 'ломала' модуль.
Проверил вручную, работает.
Посмотрел последние изменения, это были просто удаление этой функции и её вызов.
Так как вручную она прекрасно работает, вернул обратно в код её и её вызов.
В результате все замечательно работает.

И вот вопрос : а в чем кипеш то был? Зачем надо было удалять? Что именно ломал модуль?

Отправлено с моего Redmi Note 4 через Tapatalk
СпойлерПоказать

Изображение
За это сообщение автора lanket поблагодарил:
dance12r (Ср апр 18, 2018 6:02 pm)
Рейтинг: 1.47%
Разработка голосового асистента для Мажордомо по любому ключевому слову.
:arrow: Обсужение
:arrow: GitHub терминала
:arrow: GitHub модуля для МД
:arrow: Connect
Rasberry Pi 2, MDM, MySensors. И говорящий апельсин.
Аватара пользователя
dance12r
Сообщения: 94
Зарегистрирован: Пн июл 17, 2017 12:14 pm
Откуда: Киев
Благодарил (а): 7 раз
Поблагодарили: 40 раз

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

Сообщение dance12r » Ср апр 18, 2018 6:03 pm

Хм. Так же вернул выпеленую фунцию. Все работает
Raspberry Pi 3 + Broadlink + MySensors + MDM VoiceAssistant
Logrus
Сообщения: 978
Зарегистрирован: Пт апр 07, 2017 12:20 pm
Благодарил (а): 179 раз
Поблагодарили: 124 раза

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

Сообщение Logrus » Ср апр 18, 2018 7:08 pm

lanket писал(а):
Ср апр 18, 2018 1:56 pm
nick7zmail писал(а):Поддерживаю...уже давно просил - реакции ноль...пришлось пока смириться)
Тут вчера вспомнил про этот 'баг'. Так же припомнилось что это была попытка обновлять seenat адресом местоположения трекера.
Задумка показалась интересной.
Посмотрел эту функцию которая 'ломала' модуль.
Проверил вручную, работает.
Посмотрел последние изменения, это были просто удаление этой функции и её вызов.
Так как вручную она прекрасно работает, вернул обратно в код её и её вызов.
В результате все замечательно работает.

И вот вопрос : а в чем кипеш то был? Зачем надо было удалять? Что именно ломал модуль?

Отправлено с моего Redmi Note 4 через Tapatalk
СпойлерПоказать

Изображение
ломал неправильно обозванные пользовательские функции, правильно в либ майфункц.пхп и там все с май, а так был конфликт
но это не повод возвращать ее в модуль, кому надо добавит ну или убирать придется, он и так лишнего пишет (и не только он)
и еще сам использую в методе яндекс, а не гугл который добавляли, зачем мне с обоих одновременно, без возможности выбора и права это отключить?!
Последний раз редактировалось Logrus Ср апр 18, 2018 7:18 pm, всего редактировалось 1 раз.
За это сообщение автора Logrus поблагодарил:
Samir77 (Сб июн 30, 2018 10:27 pm)
Рейтинг: 1.47%
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо - ТАМ =>
connect Raspberry Pi3, с образа от Сергея 3.31, PHP 7
Аватара пользователя
nick7zmail
Сообщения: 5463
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 110 раз
Поблагодарили: 1289 раз

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

Сообщение nick7zmail » Ср апр 18, 2018 7:17 pm

Logrus писал(а):
Ср апр 18, 2018 7:08 pm
ломал неправильно обозванные пользовательские функции
Не совсем так...на форуме был пример как сделать это геокодирование...все кто до него добрался - себе сделали...а в модуль ввели прямо эту же функцию с тем же названием ничуточки не поменяв (а некоторые её изменили уже под себя) - таким образом сыпались ошибки, и нифига не работло у тех у кого это было настроено. Более того, даже если снести мвою функцию - эту было бесполезно менять, при обновлении слетало, а в собственных функциях оно годами лежало и устраивало.

А если вводить в модуль - вводить правильно. Во-первых яндекс не у всех работает, для этого в модуле выбор яндекс карты/гугл карты...и геокодирование соответственно яндекса и гугла прикручивать надо (ссылку на гугловское api уже кидал), во-вторых настраиваемый формат конечный делать...ну и в третьих как минимум функцию переименовать, а не брать имя с примера, которым мог кто-то воспользоваться.
За это сообщение автора nick7zmail поблагодарил:
Samir77 (Сб май 05, 2018 11:54 pm)
Рейтинг: 1.47%
Raspberry Pi3 + Broadlink + esp8266 (blynk) + Arduino Mega (AMS)
Уважаемые пользователи! Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Помощь пользователям | Создание сцен
Logrus
Сообщения: 978
Зарегистрирован: Пт апр 07, 2017 12:20 pm
Благодарил (а): 179 раз
Поблагодарили: 124 раза

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

Сообщение Logrus » Ср апр 18, 2018 7:28 pm

про имена, намедни я так понял модуль (другой) аналогично обзывает класс, ну и далее
может как в простых устройствах если класс модуля вначале м и т.д.
так к слову
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо - ТАМ =>
connect Raspberry Pi3, с образа от Сергея 3.31, PHP 7
xneo
Сообщения: 21
Зарегистрирован: Пн апр 24, 2017 4:35 am
Благодарил (а): 4 раза
Поблагодарили: 1 раз

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

Сообщение xneo » Чт апр 26, 2018 1:13 pm

А как запускать оптимизацию лога из планировщка например или еще как нибудь? Например раз в неделю.
Аватара пользователя
ipc2002
Сообщения: 91
Зарегистрирован: Пн май 15, 2017 8:13 pm
Откуда: Москва
Благодарил (а): 61 раз
Поблагодарили: 3 раза

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

Сообщение ipc2002 » Пт июн 08, 2018 1:00 am

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

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

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

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

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

P.S.: Надеюсь понятно объяснил))
За это сообщение автора ipc2002 поблагодарил:
Samir77 (Сб июн 30, 2018 10:26 pm)
Рейтинг: 1.47%
Аватара пользователя
igorewa
Сообщения: 409
Зарегистрирован: Ср дек 21, 2016 11:54 pm
Откуда: Киев
Благодарил (а): 7 раз
Поблагодарили: 24 раза

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

Сообщение igorewa » Сб июн 09, 2018 12:17 am

xneo писал(а):
Чт апр 26, 2018 1:13 pm
А как запускать оптимизацию лога из планировщка например или еще как нибудь? Например раз в неделю.
Присоединяюсь к вопросу
За это сообщение автора igorewa поблагодарил:
Samir77 (Ср авг 01, 2018 4:30 pm)
Рейтинг: 1.47%
ASUS H110T, I5 7500, DDR4-16Gb, SSD256 . + Noolite + Broadlink + esp8266 (wifi-iot) - WIN 10
Аватара пользователя
xor
Сообщения: 662
Зарегистрирован: Сб ноя 22, 2014 8:45 pm
Благодарил (а): 39 раз
Поблагодарили: 159 раз

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

Сообщение xor » Сб июн 09, 2018 11:36 am

Код оптимизации лога лежит в ...\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;
Можно оформить его скриптом и пользоваться.
Ответить