[Модуль] Broadlink (dev_broadlink)

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

Модератор: immortal

Logrus
Сообщения: 2079
Зарегистрирован: Пт апр 07, 2017 12:20 pm
Благодарил (а): 313 раз
Поблагодарили: 457 раз

Re: [Модуль] Broadlink

Сообщение Logrus » Пн мар 12, 2018 7:30 am

жаль, не вскрывал, вскрытую картинку нагуглить не смог, микрофона тоже нема видимо
Telegram | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
dmw
Сообщения: 469
Зарегистрирован: Вт мар 12, 2013 1:22 am
Благодарил (а): 41 раз
Поблагодарили: 81 раз

Re: [Модуль] Broadlink

Сообщение dmw » Пн мар 12, 2018 8:56 am

Так вроде нашел в чем дело с облаком, эти уроды из PHP заставляют быть все более внимательным с каждой своей новой версией.
Теперь нельзя присвоить переменной пустую строку и работать с ней как с массивом.
СпойлерПоказать
Т.е. начиная с версии 7.1 эта функция вернет строку:

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

function str2hex_array($str){
    $str_arr = str_split(strToUpper($str), 2);
    $str_hex = "";
    for ($i=0; $i < count($str_arr); $i++){
        $ord1 = ord($str_arr[$i][0])-48;
        $ord2 = ord($str_arr[$i][1])-48;
        if ($ord1 > 16) $ord1 = $ord1 - 7;
        if ($ord2 > 16) $ord2 = $ord2 - 7;
        $str_hex[$i] = $ord1 * 16 + $ord2;
    }
    return $str_hex;
} 
А вот так уже возвращается массив как и положено:

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

function str2hex_array($str){
    $str_arr = str_split(strToUpper($str), 2);
    $str_hex = array();
    for ($i=0; $i < count($str_arr); $i++){
        $ord1 = ord($str_arr[$i][0])-48;
        $ord2 = ord($str_arr[$i][1])-48;
        if ($ord1 > 16) $ord1 = $ord1 - 7;
        if ($ord2 > 16) $ord2 = $ord2 - 7;
        $str_hex[$i] = $ord1 * 16 + $ord2;
    }
    return $str_hex;
}
А вот тут даже предупредили об этом, но кто же на такие мелочи обращает внимание?:
Замечание: Начиная с PHP 7.1.0, используя в оператор "пустой индекс" на строке, приведет к фатальной ошибке. Ранее, в этом случае, строка молча преобразовывалась в массив.
Те у кого не работает облако, в частности у кого версия PHP 7.1 и более, попробуйте у себя изменить в ./modules/dev_broadlink/broadlink.class.php в 618 строчке:

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

$str_hex=''; 
на:

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

$str_hex = array(); 
За это сообщение автора dmw поблагодарили (всего 3):
Logrus (Пн мар 12, 2018 9:07 am) • VAD07 (Пн мар 12, 2018 9:16 pm) • dmitry73 (Вт мар 13, 2018 12:27 am)
Рейтинг: 3.49%
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: [Модуль] Broadlink

Сообщение nick7zmail » Пн мар 12, 2018 9:00 am

Да ладно...нифига они гонят)) у меня 7.0, вот и работало.

Отправлено с моего Xperia XZ1 Compact через Tapatalk
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
dmw
Сообщения: 469
Зарегистрирован: Вт мар 12, 2013 1:22 am
Благодарил (а): 41 раз
Поблагодарили: 81 раз

Re: [Модуль] Broadlink

Сообщение dmw » Пн мар 12, 2018 9:03 am

Оставлю здесь, для наглядности применений кода в разных версиях: https://3v4l.org/YoHIc
Shemmy
Сообщения: 25
Зарегистрирован: Вт авг 30, 2016 2:28 am
Благодарил (а): 4 раза
Поблагодарили: 2 раза

Re: [Модуль] Broadlink

Сообщение Shemmy » Пн мар 12, 2018 9:25 am

на медленном компе заметил быстро моргающий экран с ошибкой, еле смог заскриншотить:
Вложения
blcloud.png
blcloud.png (22.89 КБ) 6052 просмотра
dmw
Сообщения: 469
Зарегистрирован: Вт мар 12, 2013 1:22 am
Благодарил (а): 41 раз
Поблагодарили: 81 раз

Re: [Модуль] Broadlink

Сообщение dmw » Пн мар 12, 2018 9:27 am

Посмотрите мое сообщение чуть выше, нужно изменить 618 строчку.
Затем отпишитесь тут.
Shemmy
Сообщения: 25
Зарегистрирован: Вт авг 30, 2016 2:28 am
Благодарил (а): 4 раза
Поблагодарили: 2 раза

Re: [Модуль] Broadlink

Сообщение Shemmy » Пн мар 12, 2018 11:51 am

Отлично. После изменения залогинился сразу.
Logrus
Сообщения: 2079
Зарегистрирован: Пт апр 07, 2017 12:20 pm
Благодарил (а): 313 раз
Поблагодарили: 457 раз

Re: [Модуль] Broadlink

Сообщение Logrus » Пн мар 12, 2018 12:36 pm

Всю зиму возился с мдм, сейчас начал осваивать есп и рядом.
Из-за ограничения на длину ключа пришлось перенастраивать вай-фай, и все вытекающие траблы (((
СпойлерПоказать
таблица.PNG
таблица.PNG (190.77 КБ) 6011 просмотров
не удаляет старое, старое влияет на мдм и пр., пр.
Telegram | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
loolez
Сообщения: 20
Зарегистрирован: Чт ноя 16, 2017 4:49 pm
Благодарил (а): 3 раза
Поблагодарили: 0

Re: [Модуль] Broadlink

Сообщение loolez » Пн мар 12, 2018 12:42 pm

С выключателями T2 так и не нашли решений?
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: [Модуль] Broadlink

Сообщение nick7zmail » Пн мар 12, 2018 12:47 pm

А что с ними? Там проблема же была с логином в облако...вроде нашли временное решение. На постоянной основе вечером внесу в репозиторий...

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

Отправлено с моего Xperia XZ1 Compact через Tapatalk
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Ответить