Подключение BroadLink без RM-brige и BroadlinkHTTPBrige

Модератор: immortal

olehs
Сообщения: 1115
Зарегистрирован: Вс июн 14, 2015 11:08 am
Благодарил (а): 85 раз
Поблагодарили: 342 раза

Re: Подключение BroadLink без RM-brige и BroadlinkHTTPBrige

Сообщение olehs » Вт янв 03, 2017 11:05 pm

На одном типе устройств команда выполнится, а вот, например rf-команда с RM2Pro на RM3 - бессмысленна. Если нет желания возится с проверкой типа устройства, лучше четко привязать команду к конкретному устройству, на котором она была обучена (IMHO)
Аватара пользователя
slgeo
Сообщения: 551
Зарегистрирован: Чт фев 05, 2015 2:35 pm
Откуда: РнД
Благодарил (а): 139 раз
Поблагодарили: 74 раза

Re: Подключение BroadLink без RM-brige и BroadlinkHTTPBrige

Сообщение slgeo » Вт янв 10, 2017 12:38 am

Nick7zmail, скажи, что все у тебя получается )
Я уже жду не дождусь этого модуля.
Raspberry Pi2 Model B + NRF24L01 (MySensors) + 1-Wire + Esp8266 (WiFi-IoT)
CONNECT
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: Подключение BroadLink без RM-brige и BroadlinkHTTPBrige

Сообщение nick7zmail » Вт янв 10, 2017 2:03 am

slgeo писал(а):Nick7zmail, скажи, что все у тебя получается )
Я уже жду не дождусь этого модуля.
Ну...на самом деле до функционала пока не дошло...с оболочкой небольшие траблы))функционал уже не готовую оболочку накидывать над.
За это сообщение автора nick7zmail поблагодарил:
Denis_k (Вт янв 10, 2017 2:01 pm)
Рейтинг: 1.16%
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: Подключение BroadLink без RM-brige и BroadlinkHTTPBrige

Сообщение nick7zmail » Пт янв 13, 2017 9:38 pm

Короче выдалось у меня тут свободного времени немного...накатал, как и говорил, тестовый модуль...
За интерфейс пока не заморачивался, в модуль-билдере захерачил...запроса температуры, и поддержки других устройств пока нет, но всё будет в основном модуле))
Этот модуль в маркет добавлен не будет...просто как обкатка моей идеи...если всем понравится - попадет в основной модуль broadlink под api php...
https://github.com/nick7zmail/MajorDoMo ... k-php-test
Вот ссылочка...качаете устанавливаете как обычно...
- Для настройки - в начале проходите по /modules/php_broadlink_test/discover.php там должны отображаться все существующие девайсы...
- Далее (в модуле php_broadlink) забиваете устройство... в TYPE вписываете строку из discover.php который выше открывали в строке около devtype
- В поле MAC, понятное дело - макадрес
- !!! В поле TITLE: IP адрес бродлинка...просто забыл добавить в таблицу при генерации модуля поле под IP...решил использовать TITLE...лень было переделывать)))...
Настройка закончена...
- Сохранить данные (кнопка Добавить)

Тыкаем обучить коду...бродлинк должен перейти в режим обучения
В течении 10 секунд тыкаем кнопку пульта.
Переходим на вкладку данные, там должна появится строка new_command. Можете забить любое имя, имена только для вашего удобства...
Связываем с любым объектом-свойством.

Пример...пульт от tv - записал 3 команды, например on/off, vol up, vol down. Создал объект tv_control, и у него свойства on_off, vol_up, vol_down. Связал соответствующие команды со свойствами...От других пультов - можно привязывать к другим объектам, чтобы не путаться...мне кажется - это удобно.

Теперь любыми удобными способами (скрипт, метод, голосовой шаблон и т.п.) выставляете нужное свойства 1 (командой sg('obj.prop', 1);). Команда должна выполнится, и свойство снова скинутся на 0. Это самый простой способ, который я нашел для выполнения команд....

В общем, как говорится, тестируйте, предлагайте улучшения, вносите предложения и т.п. Послле пары недель теста - внесу правки в основной модуль, если всех всё устраивает)).


Продолжение ТУТ
Вложения
1.jpg
1.jpg (84.02 КБ) 6619 просмотров
Последний раз редактировалось nick7zmail Вт янв 17, 2017 8:22 pm, всего редактировалось 4 раза.
За это сообщение автора nick7zmail поблагодарили (всего 7):
C_3AXAPOB (Пт янв 13, 2017 9:50 pm) • Denis_k (Пт янв 13, 2017 10:33 pm) • pdmitry2 (Пт янв 13, 2017 10:57 pm) • kymasya (Сб янв 14, 2017 9:40 am) • Sayler (Вс янв 15, 2017 11:15 am) • kawkay (Вс янв 15, 2017 8:54 pm) • gorobey (Пн янв 23, 2017 9:24 pm)
Рейтинг: 8.14%
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Denis_k
Сообщения: 587
Зарегистрирован: Сб мар 19, 2016 7:24 pm
Благодарил (а): 299 раз
Поблагодарили: 27 раз

Re: Подключение BroadLink без RM-brige и BroadlinkHTTPBrige

Сообщение Denis_k » Пт янв 13, 2017 11:11 pm

добавил очередную raspberry pi3 и "треугольник" в wishlist на али :D
MD на raspberry pi3
Sayler
Сообщения: 54
Зарегистрирован: Пн ноя 28, 2016 9:15 pm
Благодарил (а): 21 раз
Поблагодарили: 2 раза

Re: Подключение BroadLink без RM-brige и BroadlinkHTTPBrige

Сообщение Sayler » Вс янв 15, 2017 11:57 am

Спасибо за модуль. Сделал все по инструкции, команду на выключение света. Обучил - создал объект и свойства - связал их - создал сценарий - и свет выключается, НО открывается вкладка с текстом

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

Warning: log() expects parameter 1 to be double, string given in C:\_majordomo\htdocs\modules\php_broadlink_test\php_broadlink_test.class.php on line 212
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: Подключение BroadLink без RM-brige и BroadlinkHTTPBrige

Сообщение nick7zmail » Вс янв 15, 2017 12:18 pm

Sayler писал(а):Спасибо за модуль. Сделал все по инструкции, команду на выключение света. Обучил - создал объект и свойства - связал их - создал сценарий - и свет выключается, НО открывается вкладка с текстом

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

Warning: log() expects parameter 1 to be double, string given in C:\_majordomo\htdocs\modules\php_broadlink_test\php_broadlink_test.class.php on line 212
Опачки...действительно)) Мусор остался от попыток дебага)) Исправил в обнове.
За это сообщение автора nick7zmail поблагодарил:
Denis_k (Вс янв 15, 2017 4:07 pm)
Рейтинг: 1.16%
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Sayler
Сообщения: 54
Зарегистрирован: Пн ноя 28, 2016 9:15 pm
Благодарил (а): 21 раз
Поблагодарили: 2 раза

Re: Подключение BroadLink без RM-brige и BroadlinkHTTPBrige

Сообщение Sayler » Вс янв 15, 2017 2:26 pm

Этот код теперь не выходит. Теперь другая проблема. Попытался все сделать на сценах с кнопками. И когда нажимаю на кнопку, ничего не происходит и открывается Arduino Gateway. http://prntscr.com/dvv2dx Которым я никогда не пользовался. Мне кажется лучше сделать как в модуле RM-bridge, чтоб после обучения создавался код, а вызвать этот код можно было getURL('ссылка из строки URL',0); . Очень мудрено с этими созданием объекта и свойствами, проще код как в сценариях в одну строку.
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: Подключение BroadLink без RM-brige и BroadlinkHTTPBrige

Сообщение nick7zmail » Вс янв 15, 2017 2:57 pm

Sayler писал(а):Этот код теперь не выходит. Теперь другая проблема. Попытался все сделать на сценах с кнопками. И когда нажимаю на кнопку, ничего не происходит и открывается Arduino Gateway. http://prntscr.com/dvv2dx Которым я никогда не пользовался. Мне кажется лучше сделать как в модуле RM-bridge, чтоб после обучения создавался код, а вызвать этот код можно было getURL('ссылка из строки URL',0); . Очень мудрено с этими созданием объекта и свойствами, проще код как в сценариях в одну строку.
Вот это новость Оо.
Это с кнопками что-то не то...в кнопках должен быть просто код sg(объект.св-во, 1); , и ничего более...как это может вызывать ардуино-гв - не представляю...
Я всего лишь убрал дебажную функцию, функционал вообще не трогал.

Самый главный вопрос - если по getURL - как идентифицировать команды?? По порядковому номеру - просто запаримся при большом числе команд... По имени? А если впишут русские буквы? Пробелы? Левые символы какие-нить? Короче хз...если есть вариант - предложите)) Говорю - в таком способе, как я избрал, минимум кода по-идее...все выбираешь из выпадающих менюшек - и готово.
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Sayler
Сообщения: 54
Зарегистрирован: Пн ноя 28, 2016 9:15 pm
Благодарил (а): 21 раз
Поблагодарили: 2 раза

Re: Подключение BroadLink без RM-brige и BroadlinkHTTPBrige

Сообщение Sayler » Вс янв 15, 2017 3:34 pm

nick7zmail писал(а):Самый главный вопрос - если по getURL - как идентифицировать команды?? По порядковому номеру - просто запаримся при большом числе команд... По имени? А если впишут русские буквы? Пробелы? Левые символы какие-нить? Короче хз...если есть вариант - предложите)) Говорю - в таком способе, как я избрал, минимум кода по-идее...все выбираешь из выпадающих менюшек - и готово.

Когда я пользовался Rm bridge. Там создавалась ссылка после обучения, потом я мог создать сценарий или шаблон и прописать этот код.
Использовалась только латиница без пробелов, так как это Url.
Здесь же мне нужно создать объекты и свойства, что для меня (начинающего пользователя) сложновато. А так есть простая ссылка, с которой можно сделать все что угодно.

Ну на примере 1го поста этой темы, я создал на каждую команду код с разными именами

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

exec("start BroadlinkCommand spalvikl");
exec("start BroadlinkCommand kladvikl");
exec("start BroadlinkCommand vannvikl");
exec("start BroadlinkCommand zalvikl");
exec("start BroadlinkCommand korvikl");
exec("start BroadlinkCommand kuhnvikl");
exec("start BroadlinkCommand tualvikl"); 
Ответить