[Модуль] Tuya

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

Модератор: immortal

Pamfletik
Сообщения: 28
Зарегистрирован: Вт апр 10, 2018 1:17 pm

Re: [Модуль] Tuya

Сообщение Pamfletik »

Приветствую. Подключил такие розетки https://aliexpress.ru/item/4001285871779.html со счетчиком энергии.
Добыл Local Key: Указал в настройках. Управлять через облако: Нет Статус только локально: Нет. Обновление 30.
Из MD управляется практически моментально. Но данные от розеток не приходят. И если переключить в облаке в MD статус приходит через 2-4 мин. Точнее пришли один раз данные, обратите внимаие на время обновления.
SPOILERSPOILER_SHOW
tuya.png
tuya.png (23.86 КБ) 4037 просмотров
От другой розетки пришел только V.
MD работает на Raspberry pi. IP и Key 10 раз проверил, но и не управлялось бы и данные не пришли бы.
Обновил MD, обновил малинку, удалит tor (был запущен для телеграм бота), обновил модуль. Без изменений.
Подскажите, куда копать?
fandaymon
Сообщения: 1576
Зарегистрирован: Сб янв 13, 2018 5:00 pm

Re: [Модуль] Tuya

Сообщение fandaymon »

Pamfletik писал(а): Ср сен 09, 2020 11:24 pm Приветствую. Подключил такие розетки https://aliexpress.ru/item/4001285871779.html со счетчиком энергии.
Добыл Local Key: Указал в настройках. Управлять через облако: Нет Статус только локально: Нет. Обновление 30.
Из MD управляется практически моментально. Но данные от розеток не приходят. И если переключить в облаке в MD статус приходит через 2-4 мин. Точнее пришли один раз данные, обратите внимаие на время обновления.
SPOILERSPOILER_SHOW
tuya.png
От другой розетки пришел только V.
MD работает на Raspberry pi. IP и Key 10 раз проверил, но и не управлялось бы и данные не пришли бы.
Обновил MD, обновил малинку, удалит tor (был запущен для телеграм бота), обновил модуль. Без изменений.
Подскажите, куда копать?
Попробовать поставить статус только локально - да и посмотреть - не поменялся ли локальный адрес у розетки
На выходных будут пытаться сделать экспериментальный релиз модуля, работающий с обычным облаком (чтобы подтянулись всякие термометры и прочие датчики), а после наверное буду доделывать локальный режим - с зигби датчиками он немного по-другому работает, возможно удастся его сделать более надёжным

Можно сделать сценарий

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

include_once(DIR_MODULES . 'tuya/tuya.class.php');
$tuya_module = new tuya();
$dev_id='сюда dev id от розетки';
$dev_key='сюда локальный ключ';
$dev_ip='сюда локальный ip';
$status=$tuya_module ->TuyaLocalMsg('STATUS',$dev_id,$dev_key,$dev_ip);
var_dump($status);
и посмотреть - приходит ли что-то от розетки
borsuk1983
Сообщения: 3
Зарегистрирован: Вт апр 14, 2020 9:41 am

Re: [Модуль] Tuya

Сообщение borsuk1983 »

Sawwa писал(а): Вт авг 11, 2020 9:01 am Коллеги, приветствую!
Кому-нибудь удалось подключить датчик открытия дверей/окон?

Видел сообщение что обмен с такими датчиками идет через MQTT
Протокол не удалось расшифровать?

У меня в модуль этот датчик никак не желает подключаться, все перепробовал, и пакеты перехватывал, ID доставал, но все пока впустую..
Тоже выбирал между датчиком Xiaomi и датчиком протечки DIGMA DiSense W1, выбрал Digma и обломался к мажердому ни как не подключить .
fandaymon
Сообщения: 1576
Зарегистрирован: Сб янв 13, 2018 5:00 pm

Re: [Модуль] Tuya

Сообщение fandaymon »

borsuk1983 писал(а): Чт сен 10, 2020 8:45 pm
Sawwa писал(а): Вт авг 11, 2020 9:01 am Коллеги, приветствую!
Кому-нибудь удалось подключить датчик открытия дверей/окон?

Видел сообщение что обмен с такими датчиками идет через MQTT
Протокол не удалось расшифровать?

У меня в модуль этот датчик никак не желает подключаться, все перепробовал, и пакеты перехватывал, ID доставал, но все пока впустую..
Тоже выбирал между датчиком Xiaomi и датчиком протечки DIGMA DiSense W1, выбрал Digma и обломался к мажердому ни как не подключить .
Этот датчик тоже к туе подключается?
Pamfletik
Сообщения: 28
Зарегистрирован: Вт апр 10, 2018 1:17 pm

Re: [Модуль] Tuya

Сообщение Pamfletik »


fandaymon писал(а):
Pamfletik писал(а): Ср сен 09, 2020 11:24 pm Приветствую. Подключил такие розетки https://aliexpress.ru/item/4001285871779.html со счетчиком энергии.
Добыл Local Key: Указал в настройках. Управлять через облако: Нет Статус только локально: Нет. Обновление 30.
Из MD управляется практически моментально. Но данные от розеток не приходят. И если переключить в облаке в MD статус приходит через 2-4 мин. Точнее пришли один раз данные, обратите внимаие на время обновления.
SPOILERSPOILER_SHOW
tuya.png
От другой розетки пришел только V.
MD работает на Raspberry pi. IP и Key 10 раз проверил, но и не управлялось бы и данные не пришли бы.
Обновил MD, обновил малинку, удалит tor (был запущен для телеграм бота), обновил модуль. Без изменений.
Подскажите, куда копать?
Попробовать поставить статус только локально - да и посмотреть - не поменялся ли локальный адрес у розетки
На выходных будут пытаться сделать экспериментальный релиз модуля, работающий с обычным облаком (чтобы подтянулись всякие термометры и прочие датчики), а после наверное буду доделывать локальный режим - с зигби датчиками он немного по-другому работает, возможно удастся его сделать более надёжным

Можно сделать сценарий

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

include_once(DIR_MODULES . 'tuya/tuya.class.php');
$tuya_module = new tuya();
$dev_id='сюда dev id от розетки';
$dev_key='сюда локальный ключ';
$dev_ip='сюда локальный ip';
$status=$tuya_module ->TuyaLocalMsg('STATUS',$dev_id,$dev_key,$dev_ip);
var_dump($status);
и посмотреть - приходит ли что-то от розетки
Вот что выдало:
string(21) "json obj data unvalid"

Отправлено с моего Mi MIX 2 через Tapatalk

borsuk1983
Сообщения: 3
Зарегистрирован: Вт апр 14, 2020 9:41 am

Re: [Модуль] Tuya

Сообщение borsuk1983 »

fandaymon писал(а): Чт сен 10, 2020 9:23 pm
borsuk1983 писал(а): Чт сен 10, 2020 8:45 pm
Sawwa писал(а): Вт авг 11, 2020 9:01 am Коллеги, приветствую!
Кому-нибудь удалось подключить датчик открытия дверей/окон?

Видел сообщение что обмен с такими датчиками идет через MQTT
Протокол не удалось расшифровать?

У меня в модуль этот датчик никак не желает подключаться, все перепробовал, и пакеты перехватывал, ID доставал, но все пока впустую..
Тоже выбирал между датчиком Xiaomi и датчиком протечки DIGMA DiSense W1, выбрал Digma и обломался к мажердому ни как не подключить .
Этот датчик тоже к туе подключается?
Я к Туя подключил.
fandaymon
Сообщения: 1576
Зарегистрирован: Сб янв 13, 2018 5:00 pm

Re: [Модуль] Tuya

Сообщение fandaymon »

Наконец-то оно произошло! Удалось подключится не к тому облаку, который предлагается для хоум ассистанта, а к обычному облаку. Подтянулись датчики температуры, название метрик, единицы измерения, коэффициенты на которые надо умножать величины. Т.е. теперь доступна вся информация, доступная телефону!!!
Tuya_Web.jpg
Tuya_Web.jpg (94.92 КБ) 3930 просмотров
Единственный минус, но довольно существенный - нужен 3 питон, чтобы получить SID. Для того чтобы подключится к облаку используется публичный ключ, а чтобы им зашифровать - функция POW. Размера целого числа в PHP не хватает для реализации POW... Владельцам малинок беспокоится не о чем - там питон стоит изначально, владельцам же системы на виндовс придётся проделать лишние телодвижения... Можно реализовать эту функцию, используя PHP модуль BC Math, но его опять же надо ставить отдельно

Зато плюсы - подтягиваются локальные ключи без всех этих лишних манипуляция с прокси. Появляется возможность смотреть графики потребления - за всё время, месяц, день. Подтянулись датчики температуры и другие датчики. Подтянулись пульты ДУ (с управлением надо будет разбираться, но по крайней мере они появились в модуле)
fandaymon
Сообщения: 1576
Зарегистрирован: Сб янв 13, 2018 5:00 pm

Re: [Модуль] Tuya

Сообщение fandaymon »

Изменения добавлены в модуль.
Для использования рабоыт с облаком надо поставить флажок
Tuya_Settings.jpg
Tuya_Settings.jpg (62.7 КБ) 3890 просмотров
Аватара пользователя
nickneo
Сообщения: 90
Зарегистрирован: Чт дек 07, 2017 2:36 pm

Re: [Модуль] Tuya

Сообщение nickneo »

fandaymon писал(а): Вс сен 13, 2020 5:22 pm Изменения добавлены в модуль.
Для использования рабоыт с облаком надо поставить флажок
а в WEB Tuya SID что вбивать надо? и где его взять?

и WEB Tuya Endpoint почемуто не полный url а /api.json если вбиваю ручкам и нажимаю обновить опять заменяется, так и должно быть?
tuya.PNG
tuya.PNG (10.76 КБ) 3840 просмотров
fandaymon
Сообщения: 1576
Зарегистрирован: Сб янв 13, 2018 5:00 pm

Re: [Модуль] Tuya

Сообщение fandaymon »

nickneo писал(а): Пн сен 14, 2020 10:48 am
fandaymon писал(а): Вс сен 13, 2020 5:22 pm Изменения добавлены в модуль.
Для использования рабоыт с облаком надо поставить флажок
а в WEB Tuya SID что вбивать надо? и где его взять?

и WEB Tuya Endpoint почемуто не полный url а /api.json если вбиваю ручкам и нажимаю обновить опять заменяется, так и должно быть?
tuya.PNG
Цитирую readme
13.09.2020 Добавлена работа с оригинальным облаком - спасибо авторам с https://github.com/TuyaAPI/cloud Работа с облаком идёт с использованием SIDа. Для его получения используется скрипт на 3 питоне (есть в составе модуля). Альтернативный вариант - поставить по ссылке модуль на NodeJS и получить его вручную Работа с локальным облаком позволяет подтянуть оттуда локальные ключи - отпадает необходимость в использовании прокси для мобильных телефонов. Так же в модуль подтягиваются из облака разные датчики, которых не было в облаке для home assistant
Добавил ещё одну альтернативу - использование extension для PHP BCMath. Если оно установлен в системе, то будет использоваться именно оно

Логика работы модуля сейчас такая - если поставлена галочка Использовать оригинальное облако, то после сохранения настроек модуль проверяет внесён ли SID в настройках. Если его нету, то идёт подключение к облако используя пользователя и пароль из настроек. Если подключение произошло удачно, то сохраняется SID и в поле ENDPOINT вписывается URL для подключения к облаку. Если же подключение было неудачным, то SID останется незаполненным, а в ENDPOINT запишется /api.json
После удачного подключение идёт запрос всех устройств привязанных к учётке и добавление их в модуле
Ответить