Понемногу автоматизируя свой быт с помощью компонентов умного дома от Xiaomi/Mijia/Aqara, мне изрядно поднадоело при написании сценариев каждый раз по скриншотам переводить с китайского условия и действия. Конечно, со временем их расположение (да и значение некоторых иероглифов) запоминалось, но ведь "это же не наш метод" :) Так всё начиналось..
01/03/24
- Добавлено отображение рецептов для глобальной версии печки 'Xiaomi Smart Air Fryer 6.5L' (careli.fryer.maf10a) при её использовании в CN-регионе;
- Для подписчиков: переработан механизм обновления мода, надеюсь это решит проблему его загрузки и установки на некоторых устройствах с HyperOS/HarmonyOS;
- В связи с изменением интерфейса настроек стокового приложения, пункт 'Экспериментальное' переименован в 'Лаборатория' и теперь находится в меню 'Профиль - Расширенные настройки' (в самом низу);
- Теперь как и в стоке, т.н. 'стандартные' плагины используются приложением по умолчанию вместо 'традиционных', т.е. вид (и возможно функционал) многих привычных плагинов может измениться. Позже я опишу в группе Телеграм почему так пришлось сделать, и как с этим жить дальше;
- В связи с вышесказанным, логика параметра управления поведением 'стандартных' плагинов в 'Лаборатории' изменилась на противоположную, т.е теперь он наборот форсирует 'традиционные' плагины, но это может повлиять на корректность отображения плагинов некоторых устройств;
- Очистка кэша приложения с помощью параметра в меню 'Лаборатория' теперь сбрасывает и выбранный режим плагина всех устройств, что может быть полезно в случае, когда в интерфейсе плагина нет возможности обратного переключения (встречается редко);
- Экспериментально форсирована возможность переключения на 'традиционный' вид плагина тех устройств, для которых производитель по какой-то причине отключил эту возможность, несмотря на наличие такого плагина;
- Добавлены уведомления о доступности новой версии мода;
- Добавлена возможность посмотреть описание последнего доступного релиза долгим нажатием на кнопку проверки обновлений (даже если он уже установлен);
- Изменена работа параметра 'Рекомендуемые сценарии': теперь он игнорируется в случае использования не-китайского облака, т.к. это не имело смысла и лишь бесполезно перегружало интерфейс;
- В 'Лаборатории' добавлен новый параметр для отображения скрытых устройств-шлюзов всех типов. Важно понимать, что речь идёт только об отображении, а не об активации! Это может быть полезно для официальных шлюзов, подключенных в 'чужом' регионе, т.к. по умолчанию они не отображаются в списке;
- Добавлены и обновлены шаблоны автоматизаций и карточки некоторых устройств, обновлён перевод;
- Актуализирован список устройств экосистемы.
👆🏻 ПОМОГИ ПРОЕКТУ, НАЖМИ НА БАННЕР ПЕРЕД ПОКУПКОЙ НА ALIEXPRESS 👍🏻
СКАЧАТЬ ВЕРСИЮ 9.1.706 *
СКАЧАТЬ МОДЫ ПЛАГИНОВ *
АРХИВ ПРОШЛЫХ ВЕРСИЙ *
ИНФОРМАЦИЯ О ПОДПИСКЕ
Дисклеймер ("ты туда не ходи")
Самое главное! Для меня крайне важно, чтобы потенциальные жертвователи понимали и принимали написанное ниже:
- Если вы ранее не использовали мод, не знаете в чём его отличия от оригинала, а после прочтения данной статьи смысл периодических донатов будет вам непонятен - ни в коем случае не оформляйте подписку! Сначала попользуйтесь модом просто так, составьте своё собственное мнение о (бес)полезности как мода, так и подписки лично для вас.
- Донат-подписка - это добровольное пожертвование, а не оплата услуг или продукта. Никаких дополнительных личных консультаций, гарантий, ответственности или долгосрочных обязательств с моей стороны не подразумевается. Я всегда стараюсь всё делать настолько хорошо, насколько могу, и ваши регулярные пожертвования - добровольный акт признания этих усилий, а не оплата моего времени. Если вы не разделяете и/или не согласны уважать точку зрения автора в этом вопросе - ни в коем случае не оформляйте подписку, т.к. мы гарантированно не найдём общего языка, не стоит тратить время друг-друга.
В чём смысл подписки, кроме благодарности автору?
Никаких чудес или скрытых возможностей после оформления подписки не будет, в базовом функционале мод с активной подпиской ничем не отличается от публикуемой в блоге версии, но приятный (надеюсь) бонус для подписчиков всё же предусмотрен:
- Обновление мода из интерфейса самого приложения, получаемое значительно раньше его публикации в общий доступ. Пожалуйста, не путайте это с полностью автоматическим обновлением, которое доступно только для официальных приложений из маркета. В случае мода, вам в любом случае потребуется выполнять проверку/установку обновления нажатием кнопки, но ничего скачивать/устанавливать вручную из блога подписчикам не потребуется.
- Автоматическая загрузка и использование всех доступных модифицированных плагинов с сервера проекта. Для подписчиков весь процесс полностью прозрачен так же, как в оригинальном MiHome, т.е. упомянутые плагины будут самостоятельно загружаться приложением из моего облака.
- В качестве рудимента, доступна установка кастомных озвучек для некоторых пылесосов, а так же служба интернет-радио для старых устройств с этой функцией (речь не про пылесосы!), и система уведомлений на его основе. Данные сервисы я более развивать не планирую, они поддерживаются в режиме "как есть". Подробности в группе Телеграм.
Я решил поддержать автора подпиской, как это сделать?
В качестве платформы для подписок я выбрал проект
Boosty, разрабатываемый и принадлежащий Mail.ru Group. Никаких других вариантов нет, и пока не планируется. Если у вас возникают проблемы с работой платформы - пожалуйста, обращайтесь в техподдержку Boosty, я на подобные вопросы ни в чате, ни в личку отвечать не буду. Для вопросов же по работе самой подписки я создал новый закрытый чат, ссылка на который есть в сообщении-инструкции для донаторов.
В целом, процесс подписки на данный момент таков:
- Перешли по ссылке на донат-платформу;
- Прочитали информацию 'Об авторе' (по желанию) и сообщение 'Привет!' (обязательно);
- Оформили подписку;
- Очень внимательно прочитали ставшее доступным сообщение 'Инструкция' и выполнили описанные там несложные действия.
Не хочу ничего платить, можно пользоваться как раньше?
Можно. Сам мод, как и раньше, остаётся доступен для ручного скачивания и обновления со страниц моего блога, но публикация новых версий будет происходить несколько позже, чем распространение обновления для подписчиков. Так же в блоге доступны для свободного скачивания и ручной установки все имеющиеся у меня модифицированные плагины и архив старых версий приложения.
ОТЛИЧИЯ ОТ ОРИГИНАЛА
Список основных изменений
- Добавлен перевод действий/условий, статусов и карточек для большинства устройств, некоторые правки перевода и вёрстки интерфейса;
- Для упрощения дальнейшего перевода, все данные из облака запрашиваются с английской локализацией; плагинам также сообщается необходимость использовать английский язык (т.к. некоторые из них используют по-умолчанию китайский язык в случае отсутствия запрошенной локали). Отличие от альтернативной версии в том, что я не заменяю английскую локализацию на русскую (что дало бы эффект визуально схожий указанному выше), благодаря чему оба языка остаются доступны.
UPD: Т.к. стало появляться всё больше переведённых производителем плагинов (хотя на большинство без слёз не взглянешь), необходимость использовать английскую локализацию теперь сообщается только тем плагинам, в которых язык по-умолчанию - китайский. Т.е. все нормальные плагины будут пытаться использовать выбранную в системе локализацию, а список "особо одарённых" - принудительно будут использовать английскую (как не трудно догадаться, русской в них всё равно нет). К сожалению, для нового RN-формата плагинов такой возможности форсировать локализацию пока нет;
- Изменено место хранения плагинов для возможности их ручной замены без рута. Решение отличается от представленного на форуме тем, что используется не корень внешнего накопителя, а стандартная папка приложения на внешнем накопителе, т.е. '/sdcard/Android/data/com.xiaomi.smarthome/files'. Такое расположение позволяет при удалении приложения средствами системы, автоматически удалять и папку с плагинами (что кажется мне правильным);
- Добавлена возможность хранения во внешней папке '/sdcard/vevs/files/' некоторых вспомогательных файлов, в т.ч. плагинов (актуально для пользователей Android 11+). Для активации проверьте права приложения на доступ ко внутренней памяти, создайте указанную папку и полностью перезапускаете MiHome через настройки телефона, после чего папку по оригинальному пути (см. предыдущий пункт) можно удалить;
- Отключено большинство китайских элементов интерфейса (магазин, рекомендуемые сцены, голосовое управление и пр.), т.е. приложение будет выглядеть так, как будто выбран регион отличный от Китая;
- Составы меню "Профиль" и "Настройки" приведены к китайскому варианту (более функциональному) на всех регионах; исключение - пункт 'Другие устройства платформы', он доступен только в Китае;
- Отключены функции голосового управления (т.к. поддерживается только китайский язык) и новостной баннер в настройках, онскрин-реклама и пуш-уведомления с ней;
- Добавлено цветовое разделение облачных и локальных сценариев: в списках сценариев (кроме списков дочерних устройств) названия облачных будут отображаться тёмно-синим цветом;
- Добавлено отображение модели/токена/DID устройства в пункт 'Информация о сети' (внутри большинства плагинов), а также отображение модели/токена/DID/IP/MAC/ID плагина/версии прошивки устройства в меню 'Изменить имя' на главной странице приложения (по долгому нажатию на иконку устройства). Все перечисленные данные можно копировать в буфер обмена долгим тапом;
- Добавлено отображение идентификатора сценария (us_id) в его свойствах, его тоже можно скопировать в буфер обмена;
- В манифест добавлен атрибут 'fake-signature' c оригинальной подписью. Т.о. плагины, выполняющие проверку подписи (например AC Partner и IR Controller), будут полноценно работать на версиях Android, поддерживающих Signature Spoofing;
- Добавлена возможность подключения любых версий устройств во всех доступных регионах. Т.е. приложение теперь будет успешно находить и позволять подключать устройство, например, для европейского рынка, даже если выбран регион 'Китай' (и наоборот). Данное изменение не решает проблему некоторых плагинов и устройств, которые имеют дополнительные механизмы контроля подключения к конкретному облаку: в такой ситуации по-прежнему будут требоваться дополнительные манипуляции с плагином и/или устройством. Также существуют устройства, для которых на региональных серверах в принципе не реализованы необходимые сервисы: такие девайсы возможно использовать только в регионе 'Китай';
- Реализована возможность дополнять (и даже создавать) условия/действия автоматизаций с помощью файлов-шаблонов. Это полезно для моделей, в которых производитель решил ограничить функционал автоматизации, или неудачно подобрал её параметры. Я постараюсь включать непосредственно в мод существующие на момент создания шаблоны таких модификаций от автора метода, но реализована также загрузка из папки на устройстве, т.е. для их обновления переустановка или ожидание новой версии приложения не понадобятся;
- Добавлен механизм, позволяющий использовать кастомные шаблоны автоматизации (см. выше) для дочерних Zigbee устройств, в некоторых случаях - даже если они не предусмотрены производителем. В качестве примера работы созданы гибкие условия уровня освещенности шлюза и датчика движения Aqara, новое действие установки цвета подсветки шлюза (требуется измененный плагин);
- Для энтузиастов - добавлена возможность логирования различных полезных данных (действия/уведомления/токены/ключи сопряжения и т.п.) в папке '/sdcard/vevs/logs/'. Для активации логирования необходимо проверить права приложения на доступ ко внутренней памяти, и включить соответствующую опцию в экспериментальных настройках;
- Для суровых энтузиастов - добавлено логирование сообщений MIIO и MIOTSPEC (новый протокол, приходящий на смену MIIO) при управлении устройством из плагина во всех режимах работы (локальном и облачном);
- Отключена стандартная проверка обновлений приложения, т.к. установка официальной версии поверх мода всё равно не возможна (касается только самого приложения);
- Добавлена возможность принудительно загружать стандартные MPK-плагины вместо RN-плагинов для выбранных устройств с помощью внешнего конфигурационного файла 'custom.json'. Подробности уточняйте в группе Telegram;
- Отключены малополезные баннеры с информацией о рекомендуемых сценариях и качестве сигнала внутри плагинов;
- Добавлена возможность принудительного направления определённых API-запросов в китайское облако, что может решить проблемы (или создать новые) с работой плагинов некоторых устройств в 'чужом' регионе: монитор растений, зубные щётки, тонометр, автомобильный очиститель воздуха. Управляется с помощью внешнего конфигурационного файла 'custom.json', по умолчанию параметр включен, подробности в группе Telegram.
- Для некоторых камер Chuangmi отключена региональная блокировка со стороны облака;
- Отключены проверка и уведомление о наличии root-доступа;
- Форсирована загрузка полного (официального) списка поддерживаемых шлюзом дочерних ZigBee-устройств в процессе подключения, независимо от региона. Это не расширяет список фактически доступных для подключения устройств, а просто не позволяет программе скрывать устройства из другого региона;
- По умолчанию отключено бесполезное в наших широтах и мозолящее глаза условие по изменению погоды в Китае, но можно снова его включить (см. параметр в меню "Экспериментальное");
- Условие 'NFC-метка' теперь должно работать на любом устройстве и регионе, дополнительно добавлена возможность использования самых распространённых меток меньшего размера - NTAG213 (см. параметр в меню "Экспериментальное");
- На будущее - добавлена возможность включить скрытое производителем условие автоматизации по геопозиции, хотя судя по всему оно ещё не реализовано полностью и пока работать не будет (см. параметр в меню "Экспериментальное");
- Очень экспериментально, с массой ограничений, добавлена возможность интерактивно управлять через плагины (без автоматизации) некоторыми устройствами, фактически подключенными к другим региональным серверам (отличным от выбранного в приложении). Не путать с базовой мультирегиональностью мода! Новая функция может быть полезна для тех устройств, которые невозможно использовать в "чужих" регионах из-за ограничений их прошивки. Подробности в группе Телеграм;
- Инструкции по сбросу устройств теперь принудительно загружаются из Китайского облака, т.к. в региональных облаках они вообще отсутствуют для большинства устройств;
- Добавлена адаптивная иконка приложения для более гармоничного отображения на современных версиях Android (спасибо @sviperz);
Добавлено автоматическое включение BLE-шлюза на устройствах, где он был не только скрыт производителем, но и аппаратно выключен (см. параметр в меню "Экспериментальное"). Подробности в группе Телеграм; В исходном приложении значительно изменилась логика работы с BLE-шлюзами, что делает невозможным использование нестандартных шлюзов (и не уверен, что будет возможно впредь);
- Хранилище обоев перенесено во внешнюю папку приложения, для возможности их редактирования или замены;
- Добавлена возможность принудительного включения/выключения тёмной темы в самом приложении, независимо от настроек системы;
- Добавлен параметр для отключения тёмной темы в плагинах независимо от темы приложения. Сделано, т.к. некоторые плагины пока ещё плохо адаптированы и становятся нечитаемыми;
- Добавлена частичная поддержка (автоматизации + ограниченный функционал в плагинах) некоторых новых проприетарных устройств Aqara. Работает только в регионе Китай;
- Реализована автоматическая загрузка самодельных плагинов для официально неподдерживаемых устройств - реле Aqara T, розетки Aqara Smart Plug и некоторых других. Для этих устройств есть ряд ограничений как в процессе подключения, так и использования, подробности уточняйте в группе Telegram;
- Экспериментально добавлена поддержка некоторых выключателей серии H1;
- Расширена совместимость с разными условиями для действия 'Включить/Выключить' некоторых устройств;
- Принудительно активирована поддержка новых виджетов управления умным домом в меню отключения Android 11+, которая по умолчанию доступна только в версии приложения с Google Play;
- Для некоторых пылесосов производства Dreame разблокирован полный список официальных голосовых пакетов, независимо от региона подключения (по умолчанию он фильтровался);
- Выполнено перенаправление запроса рецептур некоторых европейских мультиварок и печей, подключенных в Китае (там они недоступны);
- Реализована возможность кастомизировать карточки устройств на главном экране и во всплывающем окошке (используя файлы-шаблоны), для некоторых были добавлены/изменены данные по умолчанию. Подробности в группе Телеграм;
- Исправлена проблема запуска некоторых некорректно локализованных производителем плагинов (например, для мониторов воздуха Qingping);
- Экспериментально отключен странный двухэтапный запуск плагина для некоторых устройств (выключателей и ламп), который китайцы реализовали в последних версиях;
- Отключены рекомендации автоматизаций в новом центре управления домом (они бесполезны);
- Отключен дисклеймер при первом запуске приложения, т.к. на некоторых устройствах он отображается некорректно;
- При долгом нажатии на карточке устройства в списке подключения, его системное имя модели отображается во всплывающем сообщении и копируется в буфер обмена;
- Добавлено отображение официально поддерживаемых регионов для каждого устройства в списке 'Добавить устройство';
- Добавлено отображение кода региона (обслуживающего облака) в списке стран в настройках приложения;
- Исправлено сохранение порядка сортировки списка ручных сценариев в регионах, отличных от Китая;
- Добавлена возможность сохранения порядка сортировки списка автоматических сценариев в регионах, отличных от Китая;
- Реализована функция патчинга RN-SDK, что позволит добавлять перевод в некоторые специальные меню плагинов и приложения;
- Добавлена возможность использовать в кастомных карточках устройств специфические данные (не только 'miot-spec-v2');
- Добавлена возможность использовать поворот кубика Aqara в качестве триггера для дискретных действий (включение, выключение и т.п.), но на некоторых шлюзах это работает только в том случае, если в качестве исполнительных устройств в сценарии используются самостоятельные Wi-Fi устройства (НЕ дочерние устройства самого шлюза);
- Экспериментально исправлена ошибка китайцев, из-за которой в сценариях было невозможно использовение нескольких условий в режиме 'выполнено всё' для некоторых устройств;
- В экспериментальные функции добавлен параметр для принудительного использования 'телефонной' разметки приложения на любом устройстве. RN-плагины будут на весь экран, но и ландшафтного режима не будет. После изменения параметра требуется перезапуск приложения;
- Добавлен параметр для отключения проверки обновлений прошивок устройств в приложении. Параметр не влияет на функцию автоматического обновления (если она включена в настройках), т.к. приложение в этом случае не используется;
Добавлен параметр для отключения блокировки DNS-запросов плагинов к сторонним ресурсам, это требуется для работы некоторых модификаций (например - кастомного списка голосовых пакетов или радиостанций); параметр упразднён, т.к. теперь он всегда включен по умолчанию;
- Добавлен параметр для отображения полных описаний значений на карточках устройств, бОльшая часть которых теперь по умолчанию скрыта;
- Добавлен параметр для отображения стандартных данных на карточках устройств, т.к. по умолчанию теперь используются кастомные;
- Добавлен параметр для включения т.н. 'стандартного стиля' плагинов некоторых устройств, который в стоковом приложении теперь используется по умолчанию (на любителя);
- Добавлен параметр для отключения принудительной EN-локализации в запросах к API, что может быть полезно для не RU/EN-пользователей (данные будут запрашиваться на выбранном в приложении языке);
- Добавлен параметр принудительного использования тёмной панели навигации. Может быть полезно для телефонов, на которых белые кнопки сливаются с фоном;
- Добавлена возможность удалять некоторые специфические данные и кэш приложения (активируется ДОЛГИМ нажатием). Эти функции НЕ аналогичны очистке данных через настройки телефона, они действуют избирательно и не требуют повторной авторизации в аккаунте после их применения;
- Добавлен параметр для отображения подборки рекомендуемых сценариев для редактора Автоматизаций 2.0;
Функции, доступные подписчикам
- Добавлено автоматическое обновление мода с сервера проекта;
- Добавлена функция автоматической загрузки некоторых модифицированных плагинов с сервера проекта, подробности уточняйте в группе Telegram;
- Добавлен параметр для получения кастомного списка радиостанций с сервера проекта;
- На базе сервиса кастомных радиостанций релизована служба звуковых оповещений и уведомлений в Телеграм, подробности в группе;
- Добавлен параметр для получения списка кастомных голосовых пакетов с сервера проекта для пылесосов производства Dreame (большинство моделей), Ijai (модели V2/3/10/18/19) и Roidmi/Chuangmi (некоторые модели) вместо заводского. Этот функциионал более не развивается, сохранён как рудимент, т.к. в сети доступно бесплатное решение от другого разработчика;
ОБСУДИТЬ В TELEGRAM
ПОКОРМИТЬ КАПИБАРУ
* прямой переход по ссылке возможен только со страниц этого блога, или после ввода пароля 579214734 (имя пользователя вводить не надо)