Страница 65 из 169

Re: [Модуль] Sonoff (dev_sonoff)

Добавлено: Чт май 09, 2019 8:45 am
nick7zmail
Хм...тогда ок...мне казалось там на сокете гейт висит.
С IP это наименьшая проблема. Уже текущий модуль их забрать сможет. POST запрос прикрутить на вкл-выкл тоже не проблема. Ща бы дату расшифровать, а для этого надо понять чем она зашифрована. Не пробовал засылать "encrypt":false, а в дате что нить вменяемое формата params:{switch:on} или просто switch:on ?

Re: [Модуль] Sonoff (dev_sonoff)

Добавлено: Чт май 09, 2019 12:18 pm
chelovert
nick7zmail писал(а):
Чт май 09, 2019 8:45 am
Хм...тогда ок...мне казалось там на сокете гейт висит.
С IP это наименьшая проблема. Уже текущий модуль их забрать сможет. POST запрос прикрутить на вкл-выкл тоже не проблема. Ща бы дату расшифровать, а для этого надо понять чем она зашифрована. Не пробовал засылать "encrypt":false, а в дате что нить вменяемое формата params:{switch:on} или просто switch:on ?
посылать encrypt = false пробовал. Реле не может обработать такой запрос. Не отвечает

Re: [Модуль] Sonoff (dev_sonoff)

Добавлено: Чт май 09, 2019 1:33 pm
chelovert
Вот что нарыл после декомпилирования apk ewelink
Key secretKeySpec = new SecretKeySpec(this.f367a.getBytes(), "AES");
Cipher instance = Cipher.getInstance("AES/CBC/PKCS5Padding");
instance.init(2, secretKeySpec, new IvParameterSpec(this.f367a.getBytes()));
Выглядит так что iv и ключ это один и тотже набор байт. Только ключ закодирован алгоритмом AES.
Есть еще такая тема:
Cipher instance = Cipher.getInstance("DES/CBC/PKCS5Padding");
instance.init(2, SecretKeyFactory.getInstance("DES").generateSecret(new DESKeySpec(this.f368a.getBytes("UTF-8"))), new IvParameterSpec(this.f368a.getBytes("UTF-8")));
Я попробовал отсделить откуда берется переменные f367a и f368a значение - у меня получилось следующее
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append("S(@L@L").append("@)");
f144a = stringBuilder.toString();
Судя по коду получается, что ключ это строка "S(@L@L@)" Должно быть так, если я не ошибаюсь как stringBuilder склеивает строки..

Re: [Модуль] Sonoff (dev_sonoff)

Добавлено: Чт май 09, 2019 1:35 pm
chelovert
надо провести практический эксперимент , после теоретических изысканий :) гыг
на php думаю будет не сложно написать скрипт, чтобы проверить теорию

Re: [Модуль] Sonoff (dev_sonoff)

Добавлено: Сб май 11, 2019 9:29 am
samolet
Ну звиздец, я так понимаю обнову вообще не надо устанавливать, после установки обновы мажора идут ложные срабатывания, надо или Сергею поработать над ошибками или Никите подстроить модуль под обнову, ну не возможно так пользоваться мажором(((((((((((((((((

Re: [Модуль] Sonoff (dev_sonoff)

Добавлено: Вс май 12, 2019 1:18 am
samolet
Ну как так то, обновил яндекс ттс и перестала Алиска выключать сонофы, зачем портить то что работает???????????????????????????????????????????

Re: [Модуль] Sonoff (dev_sonoff)

Добавлено: Вс май 12, 2019 6:24 am
tarasfrompir
samolet писал(а):
Сб май 11, 2019 9:29 am
Ну звиздец, я так понимаю обнову вообще не надо устанавливать, после установки обновы мажора идут ложные срабатывания, надо или Сергею поработать над ошибками или Никите подстроить модуль под обнову, ну не возможно так пользоваться мажором(((((((((((((((((
не понял - при чем тут соноф к яндексу? Яндекс продолжает разговаривать ?
Просто я вносил изменения последние (наверно). Так там только код языка поменялся на полный И ВСЕ?

Re: [Модуль] Sonoff (dev_sonoff)

Добавлено: Вс май 12, 2019 8:42 am
samolet
при том, когда голосом просишь включить или выключить свет, который работает через модуль соноф, ни чего не происходит, откатил обнову и заработало.(((((((
callMethod('spalnya'.'.'.'turnOff'); вот это не отрабатывает, и все прочие скрипты(управляемые через сценарий через яндекс ттс) связанные с этим методом.

Re: [Модуль] Sonoff (dev_sonoff)

Добавлено: Вс май 12, 2019 9:01 am
yii
А вот можно ли попробовать научить модуль рулить автоматическим режимом девайсов th 10/16?
Сейчас объясню на пальцах :)

Эти девайсы могут работать в 3х режимах: обычный выключатель, авто режим по температуре, авто режим по влажности.
Текущий режим работы в свойствах отображается, это свойство deviceType, которое при изменении в eWeLink нормально прилетает в модуль, и имеет значения соответственно: normal, temperature и humidity в зависимости от того в каком режиме девайс.

А вот текущих границ включающих и выключающих девайс в авто режиме среди свойств нету...

Попробовал менять deviceType - режимы меняются, а значения температуры или влажности берутся те что были последний раз...

Соответственно вопрос в том что бы научиться читать и писать текущие границы температуры и влажности...

Еще, посмотрев внимательно на данные в модуле, нужные данные в не распарсеном виде увидел в свойстве targets...
[{"reaction":{"switch":"on"},"targetHigh":"45"},{"reaction":{"switch":"off"},"targetLow":"20"}], строка для работы по температуре и влажности одинакова, что это (температура или влажность определяется по режиму работы, в режиме обычного выключателя ни на что не влияет (остается последней).

Еще есть свойство mainSwitch которое в ручном режиме дублирует switch, а в автоматическом всегда on. Скорее всего используется eWelink'ом для проверки авто режима, так как если девайс в авторежиме то он не дает его переключить в ручную (пишет что в авторежиме это не доступно), однако из модуля девайс спокойно включается и выключает игнорируя это.

Можно ли ожидать парсинг targets в ближайших обновлениях, или быстрее свой скрипт набросать? :)

Re: [Модуль] Sonoff (dev_sonoff)

Добавлено: Вс май 12, 2019 9:09 am
yii
И еще при удалении девайсов модуль чистит dev_sonoff_devices, но не чистит dev_sonoff_data из за этого бывают проблемы... вот сейчас не хотел работать связанный объект с определенным именем (переименовываешь работает, а делаешь имя как мне надо нет), объект ранее использовался с другим устройством sonoff (если сосвем правильно, то с этим же, но оно было удалено, а потом добавлено заново)... как результат в dev_sonoff_data две записи со ссыфлкой на этот объект, одна с текущим ID, вторая со старым, которого в dev_sonoff_devices уже нет... пока не почистил dev_sonoff_data ручками, не заработало...

Глюк был в одну сторону... при прилете статуса из eWeLink - у объекта статус менялся, а при смене статуса у объекта он в модуле не менялся и в eWeLink не улетал соответственно...