gps и доступ извне

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

Модератор: immortal

Аватара пользователя
xor
Сообщения: 2038
Зарегистрирован: Сб ноя 22, 2014 8:45 pm
Благодарил (а): 284 раза
Поблагодарили: 629 раз

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

Сообщение xor » Вт дек 19, 2017 9:14 pm

У вас должен быть создан юзер Тойота, в модуле - находиться Устройство, привязанное к этому юзеру, с определенным deviceid (допустим, MyCar), тогда можно вызывать что-то типа

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

geturl($server."/gps.php?latitude=".gg("toyota.lat")."&longitude=".gg("toyota.lon")."&deviceid=MyCar&accuracy=20",0);
Можно в консоли позапускать для проверки.
За это сообщение автора xor поблагодарил:
AndreyK (Ср дек 20, 2017 1:56 pm)
Рейтинг: 1.16%
Аватара пользователя
webms
Сообщения: 498
Зарегистрирован: Чт дек 15, 2016 3:13 am
Благодарил (а): 221 раз
Поблагодарили: 88 раз

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

Сообщение webms » Ср дек 20, 2017 8:43 am

AndreyK писал(а):Всем привет!
Соорудил устройство на arduino в паре с gsm модемом для установки в авто. С целью получения координат и управления автозапуском из системы.
Все отлично работает: устройство читает свойство и включает автозапуск, отправляет свои координаты
в свойства av.lat и av.lon.
Я собираю все это в одну строку и отправляю в с свойство Toyota.Coordinates и выставляю время Toyota.CoordinatesUpdated и Toyota.CoordinatesUpdatedTimestamp. Но в модуль эти данные не попадают и устройство на карте не отображается.
Как можно отправить эту строку в модуль уже из системы? Может что-то типо getURLBackground() ? Как правильно сформировать?
А как вы управляете автозапуском через arduino?
AndreyK
Сообщения: 64
Зарегистрирован: Пн сен 04, 2017 10:28 pm
Благодарил (а): 14 раз
Поблагодарили: 5 раз

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

Сообщение AndreyK » Ср дек 20, 2017 1:57 pm

xor писал(а):У вас должен быть создан юзер Тойота, в модуле - находиться Устройство, привязанное к этому юзеру, с определенным deviceid (допустим, MyCar), тогда можно вызывать что-то типа

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

geturl($server."/gps.php?latitude=".gg("toyota.lat")."&longitude=".gg("toyota.lon")."&deviceid=MyCar&accuracy=20",0); 
Можно в консоли позапускать для проверки.
Спасибо большое! Все заработало!
AndreyK
Сообщения: 64
Зарегистрирован: Пн сен 04, 2017 10:28 pm
Благодарил (а): 14 раз
Поблагодарили: 5 раз

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

Сообщение AndreyK » Ср дек 20, 2017 2:08 pm

webms писал(а):
AndreyK писал(а):Всем привет!
Соорудил устройство на arduino в паре с gsm модемом для установки в авто. С целью получения координат и управления автозапуском из системы.
Все отлично работает: устройство читает свойство и включает автозапуск, отправляет свои координаты
в свойства av.lat и av.lon.
Я собираю все это в одну строку и отправляю в с свойство Toyota.Coordinates и выставляю время Toyota.CoordinatesUpdated и Toyota.CoordinatesUpdatedTimestamp. Но в модуль эти данные не попадают и устройство на карте не отображается.
Как можно отправить эту строку в модуль уже из системы? Может что-то типо getURLBackground() ? Как правильно сформировать?
А как вы управляете автозапуском через arduino?
Формирую HTTP запросы в arduino для sim900 как в этой инструкции http://alex-exe.ru/radio/wireless/gsm-sim900-gprs/
формат запросов:
/objects/?op=get&object=<OBJECT>&p=<PROPERTY> -- получить значение свойства объекта
/objects/?op=set&object=<OBJECT>&p=<PROPERTY>&v=<VALUE> -- установить значение свойства объекта
взял отсюда https://majordomo.smartliving.ru/Main/Urls
Аватара пользователя
lanket
Сообщения: 1168
Зарегистрирован: Вт окт 14, 2014 11:27 pm
Откуда: Санкт-Петербург
Благодарил (а): 260 раз
Поблагодарили: 163 раза

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

Сообщение lanket » Пт дек 22, 2017 10:09 pm

Наблюдается такой глюк:
Когда одно "место" расположено внутри другого "места", в данном случае помечен весь Коттеджный поселок где я живу и другое "место" это мой участок, то при попадании, скорее всего, в "место" которое меньше, например мой дом на территории КП, то тригер постоянно срабатывает при каждой отправке координат:
СпойлерПоказать
21:10
Алиса
Руслан подъехал к дому

21:10
Алиса
Руслан подъехал к дому

21:10
Алиса
Руслан подъехал к дому

21:09
Алиса
Руслан подъехал к дому

21:09
Алиса
Руслан подъехал к дому

21:08
Алиса
Руслан подъехал к дому

21:08
Алиса
Руслан подъехал к дому

21:05
Алиса
Руслан въехал в Предместья
Предвкушая вопрос зачем две зоны/"места" в одном/накладывать друг на друга. Отвечу: Пометить поселок целиком это для контроля невыезда сына за территорию, а дом помечен чтобы свет включался при подъезде.
Разработка голосового асистента для Мажордомо по любому ключевому слову.
:arrow: Обсужение
:arrow: gitHub 2й версии терминала
:arrow: GitHub модуля для МД
gitHub сырого модуля 2й версии
:arrow: Connect
Rasberry Pi 2, MDM, MySensors. И говорящий апельсин.
Logrus
Сообщения: 2079
Зарегистрирован: Пт апр 07, 2017 12:20 pm
Благодарил (а): 313 раз
Поблагодарили: 457 раз

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

Сообщение Logrus » Сб дек 23, 2017 7:22 am

lanket, посмотри https://majordomo.smartliving.ru/forum/ ... 167#p67167
там в метод SetLocation в классе Users (связанное свойство Coordinates), имхо переосмыслить и сына контролировать можно и не только
есть и свойство юзер.HomeDistance в метрах от координат дома, и направление можно получить, хз как правда, но точно можно

и собственно вопрос по этому
$res=$xml->{'GeoObjectCollection'}->{'featureMember'}[0]->{'GeoObject'}->{'metaDataProperty'}->{'GeocoderMetaData'}->{'AddressDetails'}->{'Country'}->{'AddressLine'};
1. если все нормально приходит в виде: Свердловская область, Нижний Тагил, улица, номер дома
2. не знаю как приходит когда не геокодировало
как обрезать строку до: улица, номер дома
желательно, учесть оба варианта?
Telegram | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
Аватара пользователя
lanket
Сообщения: 1168
Зарегистрирован: Вт окт 14, 2014 11:27 pm
Откуда: Санкт-Петербург
Благодарил (а): 260 раз
Поблагодарили: 163 раза

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

Сообщение lanket » Пн дек 25, 2017 2:51 pm

Logrus писал(а):lanket, посмотри https://majordomo.smartliving.ru/forum/ ... 167#p67167
там в метод SetLocation в классе Users (связанное свойство Coordinates), имхо переосмыслить и сына контролировать можно и не только
есть и свойство юзер.HomeDistance в метрах от координат дома, и направление можно получить, хз как правда, но точно можно

и собственно вопрос по этому
$res=$xml->{'GeoObjectCollection'}->{'featureMember'}[0]->{'GeoObject'}->{'metaDataProperty'}->{'GeocoderMetaData'}->{'AddressDetails'}->{'Country'}->{'AddressLine'};
1. если все нормально приходит в виде: Свердловская область, Нижний Тагил, улица, номер дома
2. не знаю как приходит когда не геокодировало
как обрезать строку до: улица, номер дома
желательно, учесть оба варианта?
Спасибо за идею, но не в моем случае к сожалению.
Во первых мой участок скраю у леса. И если я задам радиус вокруг дома накрыв весь КП то не буду получать предупреждение в случае если сын уйдёт в лес на 1.5 км, что неприемлемо.

Также есть у меня ещё похожее наложение. Это соседний населённый пункт со школой. Мне надо знать когда выходит за границу школы, ну и на всякий случай не отправился ли он с друзьями дальше границы этого населённого пункта. Опять 'место' на территории другого 'места'

Да и кстати Гугл тоже не вариант в моём случае, он только недавно запомнил название нашего КП. Яндекс в отличии от Гугла уже знает наши улицы.


Получается такой глюк что при приходе координат попадающих одновременно в обе области покрытия помеченных 'мест' то метод userEntered полюбому сработает, даже если трекер не присылал координат выходящих за границу покрытия 'места', даже если трекер не 'покидал' эту зону покрытия.

Видимо я один такой. Придётся самому искать где в коде это происходит Изображение

Отправлено с моего Redmi Note 4 через Tapatalk
Разработка голосового асистента для Мажордомо по любому ключевому слову.
:arrow: Обсужение
:arrow: gitHub 2й версии терминала
:arrow: GitHub модуля для МД
gitHub сырого модуля 2й версии
:arrow: Connect
Rasberry Pi 2, MDM, MySensors. И говорящий апельсин.
Logrus
Сообщения: 2079
Зарегистрирован: Пт апр 07, 2017 12:20 pm
Благодарил (а): 313 раз
Поблагодарили: 457 раз

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

Сообщение Logrus » Пн дек 25, 2017 3:54 pm

в примере выше яндекс
и про радиус можно на любой фигуре проверять соответствие координат (вхождение)
к Котяре (https://habrahabr.ru/users/Komzpa/)
За это сообщение автора Logrus поблагодарил:
lanket (Пн дек 25, 2017 5:50 pm)
Рейтинг: 1.16%
Telegram | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
Аватара пользователя
lanket
Сообщения: 1168
Зарегистрирован: Вт окт 14, 2014 11:27 pm
Откуда: Санкт-Петербург
Благодарил (а): 260 раз
Поблагодарили: 163 раза

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

Сообщение lanket » Пн дек 25, 2017 5:50 pm

Logrus писал(а):в примере выше яндекс
и про радиус можно на любой фигуре проверять соответствие координат (вхождение)...
Про фигуры это самое то что хотелось бы. Тупо радиус удовлетворяет не на все 100. Буду изучать. Спасибо.
Logrus писал(а):...
к Котяре (https://habrahabr.ru/users/Komzpa/)
А вот ссылка эта вообще не понял к чему. Там про картографию OpenStreetMap.

Отправлено с моего Redmi Note 4 через Tapatalk
Разработка голосового асистента для Мажордомо по любому ключевому слову.
:arrow: Обсужение
:arrow: gitHub 2й версии терминала
:arrow: GitHub модуля для МД
gitHub сырого модуля 2й версии
:arrow: Connect
Rasberry Pi 2, MDM, MySensors. И говорящий апельсин.
Logrus
Сообщения: 2079
Зарегистрирован: Пт апр 07, 2017 12:20 pm
Благодарил (а): 313 раз
Поблагодарили: 457 раз

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

Сообщение Logrus » Пн дек 25, 2017 6:27 pm

на осм и можно у гуру поспрашивать, котяра и сюда пулреквест давал (видел), он с Минска специалист по ГИС, у тебя рядом зверик (но он вроде б в Москву перебрался)
список прогеров занимающихся ГИС
Telegram | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
Ответить