Простые устройства / Simple Devices

Новые релизы, обновления и т.п.

Модератор: immortal

Аватара пользователя
sergejey
Site Admin
Сообщения: 4284
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Благодарил (а): 75 раз
Поблагодарили: 1559 раз
Контактная информация:

Re: Простые устройства / Simple Devices

Сообщение sergejey » Сб апр 29, 2017 9:24 am

Я не очень понимаю вопрос... А чем всё-таки не устраивает способ 2? Второй способ как раз подразумевает передачу основных параметров от модуля (включая linked_object и не важно задан он уже или нет). Пользователь сам может выбрать в открывшемся окне расположение (и вполне логично ему самому его выбирать).

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: Простые устройства / Simple Devices

Сообщение nick7zmail » Сб апр 29, 2017 9:33 am

С открывающимся окном у тебя как раз первый способ...говорю - он работает отлично...но название и т.п. надо самим пользователям вбивать.....
К нему вопрос только - можно ли доп параметры передать? Например название устройства?

А кодом - это второй способ, который описан, с ним и связаны остальные вопросы...поправил то сообщение....наверное сбило, что код вначале был))
Он лучше первого? Там же вроде как больше "автоматизации" процесса?
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Аватара пользователя
sergejey
Site Admin
Сообщения: 4284
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Благодарил (а): 75 раз
Поблагодарили: 1559 раз
Контактная информация:

Re: Простые устройства / Simple Devices

Сообщение sergejey » Сб апр 29, 2017 9:51 am

Тот способ, который сейчас реализован в модулях Noolite и Xiaomi, я для себя определил как стандартный для связи железа и простых устройств. Как мне кажется, там как раз компромис между тем, что остаётся на стороне модуля, а что позволять делать пользователю. Этот баланс можно, конечно, смещать в ту или другую сторону, но уже средствами кода, который будет в модуле.

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: Простые устройства / Simple Devices

Сообщение nick7zmail » Сб апр 29, 2017 10:42 am

Ладно, спасибо, тогда остановлюсь тоже на первом))
Ещё тогда вопросик в дагонку....

В бродлинке есть датчик А1, у него 5 параметров...температура, влажность - понятно...
А вот остальные - модуль передаёт шум, освещенность, и качество воздуха цифрой от 0 до 2 (свет до 3 вроде), а так же словесное описание каждого из параметров (тоже 3 штуки)...
Вот скрин чей-то (для примера) viewtopic.php?p=51575#p51575
Я так полагаю для цифр можно применить датчик состояния? (самого устройства нет, не могу проверить как это выглядит)
А словесное описание - просто надпись (хорошо/плохо/превосходно и т.п.) по словам пользователей оно более информативно....к этому какой либо тип простого устройства можно привязать? Или может ввести устройство типа информер? Посоветуй что-нибудь))
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Аватара пользователя
sergejey
Site Admin
Сообщения: 4284
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Благодарил (а): 75 раз
Поблагодарили: 1559 раз
Контактная информация:

Re: Простые устройства / Simple Devices

Сообщение sergejey » Сб апр 29, 2017 10:52 am

Не обязательно все свойства привязывать к какому-то типу из Простых устройств. В идеале, конечно, в простых устройствах должны быть заведены все возможные показатели, для них должен быть сделан интерфейс, реализованы типовые сценарии использования, а так же возможные связи с другими устройствами, но, к сожалению, на то он и идеал, что б к нему стремиться, а не получать сразу. Собственно, сейчас, в случае, когда какой-то параметр не вписывается ни в один из типов простых устройств, то в самом модуле я не даю пользователю возможности такой привязки. Если мне нужно с этими данными как-то работать, то я вручную добавляю недостающее свойство в один из объектов (или классов) и привязываю его так же, как это было до создания модуля простые устройства.

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: Простые устройства / Simple Devices

Сообщение nick7zmail » Сб апр 29, 2017 10:58 am

Ну возможность привязки то остаётся...и понятное дело, что можно не вводить интерфейс привязки для некоторых свойств...я пока только для температуры вообще добавил))...но хотелось бы привязать все)) вот и спрашиваю совет, можно ли к какому-то устройству привязывать цифры и надписи?
UPD: Вопрос снимается))) Датчики состояния, как оказывается нормально показывают как цифры, так и текст.

PS: можно таки попросить добавить одну (необязательную, т.е. может быть указана, может быть не указана) опцию к модулю? Чтобы имя генерировалось, для ленивых пользователей))
[#module name="devices" action="link" title="<#TITLE#>_<#PROPERTIES.TITLE#>" type="<#PROPERTIES.SDEVICE_TYPE#>" source_table="dev_broadlink_commands" source_table_id="<#PROPERTIES.ID#>" linked_object="<#PROPERTIES.LINKED_OBJECT#>"#]
Таким образом в имя будет сразу вписываться ИмяУстройства_ИмяСвойства. Думаю полезная штука. Естественно кому не понравится - можно переименовать.
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: Простые устройства / Simple Devices

Сообщение nick7zmail » Сб апр 29, 2017 5:20 pm

Сергей...подскажи плс...
Смотри - добавляю к одному из данных простой девайс "relay" ... открывается окно, нажимаю "создать объект автоматически" галочку, тыкаю создать.
Простое устройство добавляется, создаётся объект, в мою таблицу вписывается связанный объект и свойство...
НО! свойство не привязывается к модулю...это так задумано?
Код вот такой есть

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

      if ($properties[$i]['LINKED_OBJECT'] && $properties[$i]['LINKED_PROPERTY']) {
       addLinkedProperty($properties[$i]['LINKED_OBJECT'], $properties[$i]['LINKED_PROPERTY'], $this->name);
      } 
Его надо как то дополнительно запустить после добавления простого устройства??
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Аватара пользователя
sergejey
Site Admin
Сообщения: 4284
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Благодарил (а): 75 раз
Поблагодарили: 1559 раз
Контактная информация:

Re: Простые устройства / Simple Devices

Сообщение sergejey » Сб апр 29, 2017 5:23 pm

Да, есть такая особенность -- модуль простых устройств не умеет делать привязку созданного свойства к тому модулю, который инициировал добавление.
Если посмотреть тот же модуль ноолайт и другие, то там блок связи вынесен из условия update и поставлен на вывод списка, т.е. идёт автоматическая привязка при каждом обновлении страницы

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

      if ($properties[$i]['LINKED_OBJECT'] && $properties[$i]['LINKED_PROPERTY']) {
          addLinkedProperty($properties[$i]['LINKED_OBJECT'], $properties[$i]['LINKED_PROPERTY'], $this->name);
      } 
Не совсем красиво, но работает "железо-бетонно" и не создаёт дублирующихся привязок (за это отвечает функция addLinkedProperty)

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: Простые устройства / Simple Devices

Сообщение nick7zmail » Сб апр 29, 2017 5:27 pm

Ок, гляну, как в ноолайте сделано...так же наверное вынесу.

А как на счет идеи?
nick7zmail писал(а): PS: можно таки попросить добавить одну (необязательную, т.е. может быть указана, может быть не указана) опцию к модулю? Чтобы имя генерировалось, для ленивых пользователей))
[#module name="devices" action="link" title="<#TITLE#>_<#PROPERTIES.TITLE#>" type="<#PROPERTIES.SDEVICE_TYPE#>" source_table="dev_broadlink_commands" source_table_id="<#PROPERTIES.ID#>" linked_object="<#PROPERTIES.LINKED_OBJECT#>"#]
Таким образом в имя будет сразу вписываться ИмяУстройства_ИмяСвойства. Думаю полезная штука. Естественно кому не понравится - можно переименовать.
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Аватара пользователя
sergejey
Site Admin
Сообщения: 4284
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Благодарил (а): 75 раз
Поблагодарили: 1559 раз
Контактная информация:

Re: Простые устройства / Simple Devices

Сообщение sergejey » Сб апр 29, 2017 5:28 pm

Я пометил себе, добавлю. Можно уже прописать в вызове, а как доработается модуль простых устройств, то оно сразу и подхватится.

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
Ответить