Способы коммуникации MajorDoMo с MajorDoMo

Использование системы в различных ситуациях, вопросы программирования сценариев.

Модератор: immortal

Ответить
Zaezd2008
Сообщения: 165
Зарегистрирован: Чт ноя 13, 2014 8:56 pm
Благодарил (а): 23 раза
Поблагодарили: 7 раз

Способы коммуникации MajorDoMo с MajorDoMo

Сообщение Zaezd2008 » Пн фев 06, 2017 9:06 pm

Ситуация следующая, есть сервер MajorDoMo дома и аналогичный сервер на даче. Хочу реализовать передачу данных ( датчики и прочие события) с сервера дачи на сервак (основной пусть так называется) домашний.
Все, что пока придумал, это передача GET запросов между серверами. Может подскажет кто идейку на эту тему?
Аватара пользователя
sergejey
Site Admin
Сообщения: 4286
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Благодарил (а): 76 раз
Поблагодарили: 1559 раз
Контактная информация:

Re: Способы коммуникации MajorDoMo с MajorDoMo

Сообщение sergejey » Вт фев 07, 2017 11:18 am

Zaezd2008 писал(а):Ситуация следующая, есть сервер MajorDoMo дома и аналогичный сервер на даче. Хочу реализовать передачу данных ( датчики и прочие события) с сервера дачи на сервак (основной пусть так называется) домашний.
Все, что пока придумал, это передача GET запросов между серверами. Может подскажет кто идейку на эту тему?
GET-запросы, веб-переменные, общий MQTT-сервер

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
Zaezd2008
Сообщения: 165
Зарегистрирован: Чт ноя 13, 2014 8:56 pm
Благодарил (а): 23 раза
Поблагодарили: 7 раз

Re: Способы коммуникации MajorDoMo с MajorDoMo

Сообщение Zaezd2008 » Вт фев 07, 2017 10:16 pm

Про MQTT интересно, но не понятно: общий сервер, соответственно можно получать данные с датчиков и прочее. А как в этом случае получить событие из самой системы?
Аватара пользователя
Bagir
Сообщения: 1615
Зарегистрирован: Вт сен 17, 2013 6:46 pm
Откуда: Ярославская область город Углич
Благодарил (а): 212 раз
Поблагодарили: 375 раз

Re: Способы коммуникации MajorDoMo с MajorDoMo

Сообщение Bagir » Ср фев 08, 2017 9:29 am

А надо ли это? Лично у меня три системы общаются полностью на GET запросах. Каждая система сама знает, какие свои данные она должна передавать другой системе. Если данные не передаются долгое время, то у принимающего объекта свойство Alive становится =0 и при этом система зовёт админа.
На самом деле, удалённой системе которая совершает контроль, совершенно не интересно знать все, что твориться в подотчетной системе. Достаточно получить только результат её работы. Ну а если по какой то причине хочется самому спрашивать удаленную систему, то опять же GET в помощь. Вызывай нужные методы удаленной системы. Эти методы должны собрать нужные данные и отправить их ответом на запрос.

Рассмотрим к примеру ситуацию с контролем, что удаленная система работает. Проще говоря Ping.

Вариант 1:
У контролирующей системы есть объект. У него есть свойство alive. Удаленная система каждую минуту сама отправляет GET запрос. При этом у объекта контролирующей системы каждый раз обновляется время последнего изменения. Если оно устареет, то контролирующая система поднимет панику.

Вариант 2:
В удаленной системе есть метод ping. Контролирующая система каждую минуту сама спрашивает удаленную систему. Шлет Get запрос с вызовом метода ping (в методе можно посмотреть пример, как вызвать его по сети). Если контролирующая система не получает ответ, то поднимает панику.
Windows 10, HTTP, MegaD, Z-Wave, 1-Wire, CONNECT
Ответить