Страница 104 из 132

Re: [Модуль] Tuya

Добавлено: Пн янв 17, 2022 9:17 pm
fandaymon
Djeday999 писал(а): Пн янв 17, 2022 8:19 pm
fandaymon писал(а): Сб янв 15, 2022 7:23 am Да, абсолютно точно - это формат B

'016603e803e8' конвертируется в 255, 0, 8 т.е. в почти красный цвет
Вечер просидел. Нигде не смог найти конвертер в RGB.

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

$HSV='016603e803e8';
$H=hexdec(substr($HSV,0,4));
$S=hexdec(substr($HSV,4,4));
$V=hexdec(substr($HSV,8,4));

//$H = $H/360;
//$S = $S/1000;
//$V = $V/1000;
$S = $S/10;
$V = $V/10;
echo '<BR>-------<BR>';
echo 'H: ';
echo $H;
echo '<BR>-------<BR>';
echo $S; 
echo '<BR>-------<BR>';
echo $V;
echo '<BR>-------<BR>';
var_dump(hsv2rgb($H, $S, $V));


  function hsv2rgb($hue,$sat,$val) {;
    $rgb = array(0,0,0);
    //calc rgb for 100% SV, go +1 for BR-range
    for($i=0;$i<4;$i++) {
      if (abs($hue - $i*120)<120) {
        $distance = max(60,abs($hue - $i*120));
        $rgb[$i % 3] = 1 - (($distance-60) / 60);
      }
    }
    //desaturate by increasing lower levels
    $max = max($rgb);
    $factor = 255 * ($val/100);
    for($i=0;$i<3;$i++) {
      //use distance between 0 and max (1) and multiply with value
      $rgb[$i] = round(($rgb[$i] + ($max - $rgb[$i]) * (1 - $sat/100)) * $factor);
    }
    $rgb['html'] = sprintf('#%02X%02X%02X', $rgb[0], $rgb[1], $rgb[2]);
    return $rgb;
  }

Re: [Модуль] Tuya

Добавлено: Пн янв 17, 2022 10:36 pm
Logrus

Re: [Модуль] Tuya

Добавлено: Вт янв 18, 2022 5:28 pm
amelnyk
fandaymon писал(а): Вт янв 04, 2022 9:16 pm
amelnyk писал(а): Вт янв 04, 2022 7:55 pm подскажите, замок норм интегрируется в мд? чтоб открыть/закрыть. такой вот:
https://a.aliexpress.com/_A8dRfa
Gimdow door lock
Чтобы открыть/закрыт удаленно - теоретически наверное возможно, но надо разбираться имея такой замок на руках, у меня замок wifi и такой возможности нету. Честно говоря не вижу, где это может быть востребовано. Для разового открытия есть временные пароли
приехал замок.
сам он блутусный, в аппке прицепил через гейтвей, соответсвенно работает теперь через вайфай.
в модуле подтянулся, но отображается, что в оффлайне. открыть/закрыть пока не получилось через модуль, прошу помочь.

Re: [Модуль] Tuya

Добавлено: Вт янв 18, 2022 6:13 pm
fandaymon
amelnyk писал(а): Вт янв 18, 2022 5:28 pm
fandaymon писал(а): Вт янв 04, 2022 9:16 pm
amelnyk писал(а): Вт янв 04, 2022 7:55 pm подскажите, замок норм интегрируется в мд? чтоб открыть/закрыть. такой вот:
https://a.aliexpress.com/_A8dRfa
Gimdow door lock
Чтобы открыть/закрыт удаленно - теоретически наверное возможно, но надо разбираться имея такой замок на руках, у меня замок wifi и такой возможности нету. Честно говоря не вижу, где это может быть востребовано. Для разового открытия есть временные пароли
приехал замок.
сам он блутусный, в аппке прицепил через гейтвей, соответсвенно работает теперь через вайфай.
в модуле подтянулся, но отображается, что в оффлайне. открыть/закрыть пока не получилось через модуль, прошу помочь.
Он и есть всё время в офлайне (ну почти), как и почти любое батарейное устройство.
Следующий шаг - пытаться сделать IOT проект, подключить замок в проект, если заработает - то при открывании будут приходить ивенты в модуль - далее можно будет настроить автоматизацию, вывести виджет замка на сцены

Что касается открыть через модуль - такой функциональности в модуле нету - но вроде в нём есть автозакрывание, судя по метрикам

Если же всё-таки открывать из модуля зачем-то нужно, то обязательно выполнить пункт с подключением IOT проекта (к проекту надо будет подключить API Locker), ну и дальше пытаться разобраться с API замка используя функцию модуля Tuya_IOT_POST

https://developer.tuya.com/en/docs/clou ... sgd4cgysr

Что-то типа - получить тикет, отправить запрос на открытие, используя тикет...

Re: [Модуль] Tuya

Добавлено: Вт янв 18, 2022 6:56 pm
amelnyk
мда, думал всё будет попроще) как выключатель локально вкл/выкл...
спасибо

Re: [Модуль] Tuya

Добавлено: Вт янв 18, 2022 7:07 pm
fandaymon
amelnyk писал(а): Вт янв 18, 2022 6:56 pm мда, думал всё будет попроще) как выключатель локально вкл/выкл...
спасибо
Это не то устройство в котором возможно как в выключателе вкл/выкл. Всё-таки это элемент безопасности дома - всё по взрослому - тикеты, ключи, пароли, шифрование...

Re: [Модуль] Tuya

Добавлено: Сб янв 22, 2022 6:44 pm
Djeday999
fandaymon писал(а): Пн янв 17, 2022 9:17 pm
Djeday999 писал(а): Пн янв 17, 2022 8:19 pm
fandaymon писал(а): Сб янв 15, 2022 7:23 am Да, абсолютно точно - это формат B

'016603e803e8' конвертируется в 255, 0, 8 т.е. в почти красный цвет
Вечер просидел. Нигде не смог найти конвертер в RGB.

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

$HSV='016603e803e8';
$H=hexdec(substr($HSV,0,4));
$S=hexdec(substr($HSV,4,4));
$V=hexdec(substr($HSV,8,4));

//$H = $H/360;
//$S = $S/1000;
//$V = $V/1000;
$S = $S/10;
$V = $V/10;
echo '<BR>-------<BR>';
echo 'H: ';
echo $H;
echo '<BR>-------<BR>';
echo $S; 
echo '<BR>-------<BR>';
echo $V;
echo '<BR>-------<BR>';
var_dump(hsv2rgb($H, $S, $V));


  function hsv2rgb($hue,$sat,$val) {;
    $rgb = array(0,0,0);
    //calc rgb for 100% SV, go +1 for BR-range
    for($i=0;$i<4;$i++) {
      if (abs($hue - $i*120)<120) {
        $distance = max(60,abs($hue - $i*120));
        $rgb[$i % 3] = 1 - (($distance-60) / 60);
      }
    }
    //desaturate by increasing lower levels
    $max = max($rgb);
    $factor = 255 * ($val/100);
    for($i=0;$i<3;$i++) {
      //use distance between 0 and max (1) and multiply with value
      $rgb[$i] = round(($rgb[$i] + ($max - $rgb[$i]) * (1 - $sat/100)) * $factor);
    }
    $rgb['html'] = sprintf('#%02X%02X%02X', $rgb[0], $rgb[1], $rgb[2]);
    return $rgb;
  }
Спасибо за код. Работает! Не быстро разобрался как записывать в свойство, но вроде получилось запихнуть массив.

Re: [Модуль] Tuya

Добавлено: Сб янв 22, 2022 7:05 pm
Djeday999
Помогите еще по такому вопросику. Подключил датчики движений и датчики открытия/закрытия дверей.
В датчик дверей прилетает в статус 0 - открыто и 1 - закрыто. После добавления в ПУ датчика "Открываемое (Ворота/Двери/Шторы/и т.п.)", где в данных нельзя поменять режим нормально закрытое или нормально открытое, как при добавлении датчиков открытия/закрытия сейчас при закрытых дверях отображается, что они открыты в ПУ. Пока в метод statusUpdated добавил код для изменения свойства статус с 0 на 1 и наоборот, но это колхоз получился и задержка. Может можно как-то по другому и не через шаблон поведения?
С датчиками движений практически тоже самое. Только там при отсутствии движения приходит в свойство статус none, а при движении pir. А ПУ я так понимаю откликаются на 0-движения нет и 1-движение обнаружено.

Re: [Модуль] Tuya

Добавлено: Сб янв 22, 2022 9:20 pm
fandaymon
Djeday999 писал(а): Сб янв 22, 2022 7:05 pm Помогите еще по такому вопросику. Подключил датчики движений и датчики открытия/закрытия дверей.
В датчик дверей прилетает в статус 0 - открыто и 1 - закрыто. После добавления в ПУ датчика "Открываемое (Ворота/Двери/Шторы/и т.п.)", где в данных нельзя поменять режим нормально закрытое или нормально открытое, как при добавлении датчиков открытия/закрытия сейчас при закрытых дверях отображается, что они открыты в ПУ. Пока в метод statusUpdated добавил код для изменения свойства статус с 0 на 1 и наоборот, но это колхоз получился и задержка. Может можно как-то по другому и не через шаблон поведения?
С датчиками движений практически тоже самое. Только там при отсутствии движения приходит в свойство статус none, а при движении pir. А ПУ я так понимаю откликаются на 0-движения нет и 1-движение обнаружено.
В свойствах метрики есть Replace List. меняй с помощью него 1 на 0 и наоборот
Аналогично none меняй на 0, а pir на 1

Re: [Модуль] Tuya

Добавлено: Пн янв 24, 2022 6:22 pm
amelnyk
fandaymon писал(а): Вт янв 18, 2022 6:13 pm Он и есть всё время в офлайне (ну почти), как и почти любое батарейное устройство.
Следующий шаг - пытаться сделать IOT проект, подключить замок в проект, если заработает - то при открывании будут приходить ивенты в модуль - далее можно будет настроить автоматизацию, вывести виджет замка на сцены

Что касается открыть через модуль - такой функциональности в модуле нету - но вроде в нём есть автозакрывание, судя по метрикам

Если же всё-таки открывать из модуля зачем-то нужно, то обязательно выполнить пункт с подключением IOT проекта (к проекту надо будет подключить API Locker), ну и дальше пытаться разобраться с API замка используя функцию модуля Tuya_IOT_POST

https://developer.tuya.com/en/docs/clou ... sgd4cgysr

Что-то типа - получить тикет, отправить запрос на открытие, используя тикет...
надо немного помощи)
есть проект, в нём подключенный акк приложения, девайсы все с приложения видны, сам замок в том числе (на скрине).
где подключать API Locker? запутался там немного