[Разработка нового модуля] Tuya Smart

Модератор: immortal

fandaymon
Сообщения: 1553
Зарегистрирован: Сб янв 13, 2018 5:00 pm
Благодарил (а): 39 раз
Поблагодарили: 574 раза

Re: [Разработка нового модуля] Tuya Smart

Сообщение fandaymon » Сб сен 28, 2019 1:08 pm

Divan писал(а):
Сб сен 28, 2019 1:00 pm
Нашел его через MAC, я его спутал с ESP32, так как у него имя esp_b3e7ab, вот и думал, что это ESP32 пока не стал сверять по MAC. Указал все что нужно, но управлять я им не могу.
Я ж говорю - изначально устройства подхватились как-то странно - видимо блок devices для удлинителя сложнее. Если сейчас запустить скрипт с Discovery, он по прежнему возвращает пустой массив?

{ ["devices"]=> array(0) { } ?
Аватара пользователя
Divan
Сообщения: 859
Зарегистрирован: Пн июл 08, 2019 5:04 pm
Благодарил (а): 117 раз
Поблагодарили: 280 раз

Re: [Разработка нового модуля] Tuya Smart

Сообщение Divan » Сб сен 28, 2019 1:13 pm

Скрипт Discovery, вы про этот код имеете ввиду?

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

include_once(DIR_MODULES . 'tuya/tuya.class.php');

$tuya_module = new tuya();
$tuya_module->getConfig();

$tuya_username =$tuya_module->config['TUYA_USERNAME'];
$tuya_passwd = $tuya_module->config['TUYA_PASSWD'];
$token=json_decode($tuya_module->getToken($tuya_username,$tuya_passwd));

$sURL = 'https://px1.tuyaeu.com/homeassistant/skill';
$header = [
            'name'           => 'Discovery',
            'namespace'      => 'discovery',
            'payloadVersion' => 1,
        ];

    $payload['accessToken'] = $token->access_token;

    $data = [
            'header'  => $header,
            'payload' => $payload,
        ];
 

   $aHTTP = array(
   'http' => 
    array(
    'method'  => 'POST', 
    'header'  => 'Content-Type: application/json',
    'content' => json_encode($data, JSON_FORCE_OBJECT)
    )
   );
   $context = stream_context_create($aHTTP);
   $contents = file_get_contents($sURL, false, $context);
   $result=json_decode($contents);
var_dump( $result);
Запустил скрипт с этим кодом и получил ответ
object(stdClass)#19 (2) { ["payload"]=> object(stdClass)#18 (2) { ["devices"]=> array(3) { [0]=> object(stdClass)#13 (6) { ["data"]=> object(stdClass)#12 (2) { ["online"]=> bool(true) ["state"]=> bool(true) } ["name"]=> string(7) "Service" ["icon"]=> string(53) "https://images.tuyaeu.com/smart/icon/1504185916_0.png" ["id"]=> string(22) "111111111111111111111_1" ["dev_type"]=> string(6) "switch" ["ha_type"]=> string(6) "switch" } [1]=> object(stdClass)#15 (6) { ["data"]=> object(stdClass)#14 (2) { ["online"]=> bool(true) ["state"]=> bool(true) } ["name"]=> string(8) "Switch 2" ["icon"]=> string(53) "https://images.tuyaeu.com/smart/icon/1504185916_0.png" ["id"]=> string(22) "111111111111111111111_2" ["dev_type"]=> string(6) "switch" ["ha_type"]=> string(6) "switch" } [2]=> object(stdClass)#17 (6) { ["data"]=> object(stdClass)#16 (2) { ["online"]=> bool(true) ["state"]=> bool(true) } ["name"]=> string(3) "USB" ["icon"]=> string(53) "https://images.tuyaeu.com/smart/icon/1504185916_0.png" ["id"]=> string(22) "111111111111111111111_7" ["dev_type"]=> string(6) "switch" ["ha_type"]=> string(6) "switch" } } ["scenes"]=> array(0) { } } ["header"]=> object(stdClass)#20 (2) { ["code"]=> string(7) "SUCCESS" ["payloadVersion"]=> int(1) } }
Xpenology DSM 6.2.2 + Ubuntu Server 18.10 + Majordomo + MariaDB
fandaymon
Сообщения: 1553
Зарегистрирован: Сб янв 13, 2018 5:00 pm
Благодарил (а): 39 раз
Поблагодарили: 574 раза

Re: [Разработка нового модуля] Tuya Smart

Сообщение fandaymon » Сб сен 28, 2019 1:19 pm

Divan писал(а):
Сб сен 28, 2019 1:13 pm

Запустил скрипт с этим кодом и получил ответ
object(stdClass)#19 (2) { ["payload"]=> object(stdClass)#18 (2) { ["devices"]=> array(3) { [0]=> object(stdClass)#13 (6) { ["data"]=> object(stdClass)#12 (2) { ["online"]=> bool(true) ["state"]=> bool(true) } ["name"]=> string(7) "Service" ["icon"]=> string(53) "https://images.tuyaeu.com/smart/icon/1504185916_0.png" ["id"]=> string(22) "111111111111111111111_1" ["dev_type"]=> string(6) "switch" ["ha_type"]=> string(6) "switch" } [1]=> object(stdClass)#15 (6) { ["data"]=> object(stdClass)#14 (2) { ["online"]=> bool(true) ["state"]=> bool(true) } ["name"]=> string(8) "Switch 2" ["icon"]=> string(53) "https://images.tuyaeu.com/smart/icon/1504185916_0.png" ["id"]=> string(22) "111111111111111111111_2" ["dev_type"]=> string(6) "switch" ["ha_type"]=> string(6) "switch" } [2]=> object(stdClass)#17 (6) { ["data"]=> object(stdClass)#16 (2) { ["online"]=> bool(true) ["state"]=> bool(true) } ["name"]=> string(3) "USB" ["icon"]=> string(53) "https://images.tuyaeu.com/smart/icon/1504185916_0.png" ["id"]=> string(22) "111111111111111111111_7" ["dev_type"]=> string(6) "switch" ["ha_type"]=> string(6) "switch" } } ["scenes"]=> array(0) { } } ["header"]=> object(stdClass)#20 (2) { ["code"]=> string(7) "SUCCESS" ["payloadVersion"]=> int(1) } }
Ясно - да, формат несколько другой. Буду думать
За это сообщение автора fandaymon поблагодарил:
Divan (Сб сен 28, 2019 2:21 pm)
Рейтинг: 1.16%
fandaymon
Сообщения: 1553
Зарегистрирован: Сб янв 13, 2018 5:00 pm
Благодарил (а): 39 раз
Поблагодарили: 574 раза

Re: [Разработка нового модуля] Tuya Smart

Сообщение fandaymon » Сб сен 28, 2019 6:29 pm

Доделал управление через облако, если нету локального ключа.
И локальное управление удлинителем - не факт, что правильно 8-)
За это сообщение автора fandaymon поблагодарил:
nickneo (Сб сен 28, 2019 8:38 pm)
Рейтинг: 1.16%
Аватара пользователя
Divan
Сообщения: 859
Зарегистрирован: Пн июл 08, 2019 5:04 pm
Благодарил (а): 117 раз
Поблагодарили: 280 раз

Re: [Разработка нового модуля] Tuya Smart

Сообщение Divan » Вс сен 29, 2019 11:55 pm

Выражаю благодарность участнику форума fandaymon за создание и подгонку модуля Tuya Smart для моего сетевого фильтра Zeoota. Про фильтр я писал здесь Умный сетевой фильтр + IFTTT, сделано все как надо, теперь можно управлять сетевым фильтром локально, через Majordomo.
СпойлерПоказать
Снимок2.JPG
Снимок2.JPG (74.05 КБ) 4561 просмотр
Свежую версию модуля Tuya Smart можно скачать здесь
Xpenology DSM 6.2.2 + Ubuntu Server 18.10 + Majordomo + MariaDB
Husky
Сообщения: 59
Зарегистрирован: Ср мар 06, 2019 8:46 am
Благодарил (а): 5 раз
Поблагодарили: 7 раз

Re: [Разработка нового модуля] Tuya Smart

Сообщение Husky » Вт дек 03, 2019 10:19 am

Модуль работает/может работать с каким-нибудь удлинителем с управлением каждой розеткой по отдельности?

Хочу подключить что-то типа этого: https://ru.aliexpress.com/item/33036821 ... b201603_55 к МЖД

Если в модуль физически можно добавить это устройство, то готов купить и посодействовать в интеграции, поснифить пакеты, может даже попытаться самостоятельно добавить поддержку в модуль, если получится. Стоит пробовать или безнадежно? Интересует локальная работа без облака.

Тот же вопрос с этой розеткой: https://ru.aliexpress.com/item/40002631 ... zQaS4&mp=1
fandaymon
Сообщения: 1553
Зарегистрирован: Сб янв 13, 2018 5:00 pm
Благодарил (а): 39 раз
Поблагодарили: 574 раза

Re: [Разработка нового модуля] Tuya Smart

Сообщение fandaymon » Вт дек 03, 2019 1:35 pm

Husky писал(а):
Вт дек 03, 2019 10:19 am
Модуль работает/может работать с каким-нибудь удлинителем с управлением каждой розеткой по отдельности?

Хочу подключить что-то типа этого: https://ru.aliexpress.com/item/33036821 ... b201603_55 к МЖД

Если в модуль физически можно добавить это устройство, то готов купить и посодействовать в интеграции, поснифить пакеты, может даже попытаться самостоятельно добавить поддержку в модуль, если получится. Стоит пробовать или безнадежно? Интересует локальная работа без облака.

Тот же вопрос с этой розеткой: https://ru.aliexpress.com/item/40002631 ... zQaS4&mp=1
Если само устройство поддерживает управление каждой розеткой, то да

Вот такой вот есть у меня https://ru.aliexpress.com/item/32864068545.html Управляются 3 розетки отдельно и блок USB
Аватара пользователя
Divan
Сообщения: 859
Зарегистрирован: Пн июл 08, 2019 5:04 pm
Благодарил (а): 117 раз
Поблагодарили: 280 раз

Re: [Разработка нового модуля] Tuya Smart

Сообщение Divan » Вт дек 03, 2019 1:57 pm

Husky писал(а):
Вт дек 03, 2019 10:19 am
Модуль работает/может работать с каким-нибудь удлинителем с управлением каждой розеткой по отдельности?

Хочу подключить что-то типа этого: https://ru.aliexpress.com/item/33036821 ... b201603_55 к МЖД

Если в модуль физически можно добавить это устройство, то готов купить и посодействовать в интеграции, поснифить пакеты, может даже попытаться самостоятельно добавить поддержку в модуль, если получится. Стоит пробовать или безнадежно? Интересует локальная работа без облака.

Тот же вопрос с этой розеткой: https://ru.aliexpress.com/item/40002631 ... zQaS4&mp=1
У меня вот такой сетевой фильтр, а в модуле выглядит так
СпойлерПоказать
Безымянный.jpg
Безымянный.jpg (51.49 КБ) 4304 просмотра
Xpenology DSM 6.2.2 + Ubuntu Server 18.10 + Majordomo + MariaDB
ruslantag
Сообщения: 21
Зарегистрирован: Вс ноя 10, 2019 8:12 pm
Благодарил (а): 4 раза
Поблагодарили: 0

Re: [Разработка нового модуля] Tuya Smart

Сообщение ruslantag » Пт дек 06, 2019 8:33 pm

Добрый вечер
вытащил локальный ключ через PacketCapture, вбил его. Престало работать.
Убираю клюс, все работает.
Проверял несколько раз ключ верный, 2 раза вытаскивал его.

В чем может быть проблема?
Локальный ключ даёт возможность работать с устройством без интернета?
fandaymon
Сообщения: 1553
Зарегистрирован: Сб янв 13, 2018 5:00 pm
Благодарил (а): 39 раз
Поблагодарили: 574 раза

Re: [Разработка нового модуля] Tuya Smart

Сообщение fandaymon » Сб дек 07, 2019 12:16 am

ruslantag писал(а):
Пт дек 06, 2019 8:33 pm
Добрый вечер
вытащил локальный ключ через PacketCapture, вбил его. Престало работать.
Убираю клюс, все работает.
Проверял несколько раз ключ верный, 2 раза вытаскивал его.

В чем может быть проблема?
Локальный ключ даёт возможность работать с устройством без интернета?
ip правильный?
Ответить