01/10/24
- Для энтузиастов: доработан механизм логирования для более полного сбора вызовов miotspec и исключения дублирования записей;
- Добавлены и обновлены шаблоны автоматизаций и карточки множества устройств, обновлён перевод;
- Актуализирован список устройств экосистемы.
👆🏻 ПОМОГИ ПРОЕКТУ, НАЖМИ НА БАННЕР ПЕРЕД ПОКУПКОЙ НА ALIEXPRESS 👍🏻
СКАЧАТЬ ВЕРСИЮ 9.8.700 *
СКАЧАТЬ МОДЫ ПЛАГИНОВ *
АРХИВ ПРОШЛЫХ ВЕРСИЙ *
ИНФОРМАЦИЯ О ПОДПИСКЕ
Дисклеймер ("ты туда не ходи")
Самое главное! Для меня крайне важно, чтобы потенциальные жертвователи понимали и принимали написанное ниже:
- Если вы ранее не использовали мод, не знаете в чём его отличия от оригинала, а после прочтения данной статьи смысл периодических донатов будет вам непонятен - ни в коем случае не оформляйте подписку! Сначала попользуйтесь модом просто так, составьте своё собственное мнение о (бес)полезности как мода, так и подписки лично для вас.
- Донат-подписка - это добровольное пожертвование, а не оплата услуг или продукта. Никаких дополнительных личных консультаций, гарантий, ответственности или долгосрочных обязательств с моей стороны не подразумевается. Я всегда стараюсь всё делать настолько хорошо, насколько могу, и ваши регулярные пожертвования - добровольный акт признания этих усилий, а не оплата моего времени. Если вы не разделяете и/или не согласны уважать точку зрения автора в этом вопросе - ни в коем случае не оформляйте подписку, т.к. мы гарантированно не найдём общего языка, не стоит тратить время друг-друга.
В чём смысл подписки, кроме благодарности автору?
Никаких чудес или скрытых возможностей после оформления подписки не будет, в базовом функционале мод с активной подпиской ничем не отличается от публикуемой в блоге версии, но приятный (надеюсь) бонус для подписчиков всё же предусмотрен:
- Обновление мода из интерфейса самого приложения, получаемое значительно раньше его публикации в общий доступ. Пожалуйста, не путайте это с полностью автоматическим обновлением, которое доступно только для официальных приложений из маркета. В случае мода, вам в любом случае потребуется выполнять проверку/установку обновления нажатием кнопки, но ничего скачивать/устанавливать вручную из блога подписчикам не потребуется.
- Автоматическая загрузка и использование всех доступных модифицированных плагинов с сервера проекта. Для подписчиков весь процесс полностью прозрачен так же, как в оригинальном 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.
- Отключены проверка и уведомление о наличии root-доступа;
- Отключена встроенная в приложение блокировка DNS-запросов плагинов к сторонним ресурсам, это требуется для работы некоторых модификаций (например - кастомного списка голосовых пакетов или радиостанций);
- Форсирована загрузка полного официального списка поддерживаемых шлюзом дочерних ZigBee-устройств в процессе подключения, независимо от региона. Это не расширяет список фактически доступных для подключения устройств, а просто не позволяет программе скрывать устройства из другого региона;
- Условие 'NFC-метка' теперь должно работать на любом устройстве и регионе, дополнительно добавлена возможность использования самых распространённых меток меньшего размера - NTAG213 (см. параметр в меню "Лаборатория");
- Очень экспериментально, с массой ограничений, добавлена возможность интерактивно управлять через плагины (без автоматизации) некоторыми устройствами, фактически подключенными к другим региональным серверам (отличным от выбранного в приложении). Не путать с базовой мультирегиональностью мода! Новая функция может быть полезна для тех устройств, которые невозможно использовать в "чужих" регионах из-за ограничений их прошивки. Подробности в группе Телеграм;
- Инструкции по сбросу устройств теперь принудительно загружаются из Китайского облака, т.к. в региональных облаках они часто вообще отсутствуют;
- Добавлена адаптивная иконка приложения для более гармоничного отображения на современных версиях Android (спасибо @sviperz);
- Хранилище обоев перенесено во внешнюю папку приложения, для возможности их редактирования или замены;
- Добавлена возможность принудительного включения/выключения тёмной темы в самом приложении, независимо от настроек системы;
- Добавлен параметр для отключения тёмной темы в плагинах независимо от темы приложения. Сделано, т.к. некоторые плагины пока ещё плохо адаптированы и становятся нечитаемыми;
- Добавлена частичная поддержка (автоматизации + ограниченный функционал в плагинах) некоторых новых проприетарных устройств Aqara. Работает только в регионе Китай;
- Реализована автоматическая загрузка самодельных плагинов для официально неподдерживаемых устройств - реле Aqara T, розетки Aqara Smart Plug и некоторых других. Для этих устройств есть ряд ограничений как в процессе подключения, так и использования, подробности уточняйте в группе Telegram;
- Экспериментально добавлена поддержка некоторых выключателей серии H1;
- Расширена совместимость с разными условиями для действия 'Включить/Выключить' некоторых устройств;
- Принудительно активирована поддержка новых виджетов управления умным домом в меню отключения Android 11+, которая по умолчанию доступна только в версии приложения с Google Play;
- Для некоторых пылесосов производства Dreame разблокирован полный список официальных голосовых пакетов, независимо от региона подключения (по умолчанию он фильтровался);
- Выполнено перенаправление запроса рецептур некоторых европейских мультиварок и печей, подключенных в Китае (там они недоступны);
- Реализована возможность кастомизировать карточки устройств на главном экране и во всплывающем окошке (используя файлы-шаблоны), для некоторых были добавлены/изменены данные по умолчанию. Подробности в группе Телеграм;
- При долгом нажатии на карточке устройства в списке подключения, его системное имя модели отображается во всплывающем сообщении и копируется в буфер обмена;
- Добавлено отображение официально поддерживаемых регионов для каждого устройства в списке 'Добавить устройство';
- Добавлено отображение кода региона (обслуживающего облака) в списке стран в настройках приложения;
- Исправлено сохранение порядка сортировки списка ручных сценариев в регионах, отличных от Китая;
- Добавлена возможность сохранения порядка сортировки списка автоматических сценариев в регионах, отличных от Китая;
- Реализована функция патчинга RN-SDK, что позволит добавлять перевод в некоторые специальные меню плагинов и приложения;
- Добавлена возможность использовать в кастомных карточках устройств специфические данные производителя (не только 'miot-spec-v2');
- Добавлена возможность использовать поворот кубика Aqara в качестве триггера для дискретных действий (включение, выключение и т.п.), но на некоторых шлюзах это работает только в том случае, если в качестве исполнительных устройств в сценарии используются самостоятельные Wi-Fi устройства (НЕ дочерние устройства самого шлюза);
- Экспериментально исправлена ошибка китайцев, из-за которой в сценариях было невозможно использовение нескольких условий в режиме 'выполнено всё' для некоторых устройств;
- Экспериментально форсирована возможность переключения на 'традиционный' вид плагина устройств, для которых производитель по какой-то причине отключил эту возможность, несмотря на наличие такого плагина;
- Реализован механизм перевода специфических для устройства строк, получаемых из базы SPEC. Это в перспективе позволит точнее переводить состояния на карточках устройств и элементы управления в 'стандартных' плагинах;
- Восстановлено отображение виджета погоды в городе, который китайцы почему-то решили скрывать, если в доме есть климатические данные от локальных устройств. Виджет по-прежнему будет полностью скрыт, если облако не предоставлят актуальных данных о погоде;
- В экспериментальные функции добавлен параметр для принудительного использования 'телефонной' разметки приложения на любом устройстве. RN-плагины будут на весь экран, но и ландшафтного режима не будет. После изменения параметра требуется перезапуск приложения;
- Добавлен параметр для отключения проверки обновлений прошивок устройств в приложении. Параметр не влияет на функцию автоматического обновления (если она включена в настройках), т.к. приложение в этом случае не используется;
- Добавлен параметр для отображения полных описаний значений на карточках устройств, бОльшая часть которых теперь по умолчанию скрыта;
- Добавлен параметр для отображения стандартных данных на карточках устройств, т.к. по умолчанию теперь используются кастомные;
- Добавлен параметр для отключения принудительной EN-локализации в запросах к API, что может быть полезно для не RU/EN-пользователей (данные будут запрашиваться на выбранном в приложении языке);
- Добавлен параметр принудительного использования тёмной панели навигации. Может быть полезно для телефонов, на которых белые кнопки сливаются с фоном;
- Добавлена возможность удалять некоторые специфические данные и кэш приложения (активируется ДОЛГИМ нажатием). Эти функции НЕ аналогичны очистке данных через настройки телефона, они действуют избирательно и не требуют повторной авторизации в аккаунте после их применения;
- Добавлен параметр для отображения подборки рекомендуемых сценариев в редакторе Автоматизаций 2.0 (доступно только в регионе Китай);
- Добавлен параметр для отображения скрытых устройств-шлюзов всех типов. Важно понимать, что речь идёт только об отображении, а не об активации! Это может быть полезно для официальных шлюзов, подключенных в 'чужом' регионе, т.к. по умолчанию они не отображаются в списке;
- Добавлен параметр форсированного использования всеми устройствами 'традиционных' плагинов вместо 'стандартного', если таковые доступны. В редких случаях это может повлиять на корректность отображения, т.к. иногда функционал разделён поризводителем умышленно (например, базовый интерфейс есть только с 'стандартном', и настройки - только в 'традиционном'). Рекомендуется вместо этого параметра использовать встроенную в 'стандартный' плагино возможность переключения вида для каждого устройства в отдельности;
Функции, доступные подписчикам
- Добавлено автоматическое обновление мода с сервера проекта;
- Добавлена функция автоматической загрузки модифицированных плагинов с сервера проекта, подробности уточняйте в группе Telegram;
- Добавлена возможность выбирать собственные фоновые изображения для комнат по долгому нажатию миниатюры в меню выбора обоев, подробности в группе Телеграм;
- Добавлена возможность активации нестандартных BLE-шлюзов (на самом деле - практически бесполезная функция), подробности в группе Телеграм;
- Добавлен параметр для получения кастомного списка радиостанций с сервера проекта;
- На базе сервиса кастомных радиостанций релизована служба звуковых оповещений и уведомлений в Телеграм, подробности в группе;
Добавлен параметр для получения списка кастомных голосовых пакетов с сервера проекта для пылесосов производства Dreame (большинство моделей), Ijai (модели V2/3/10/18/19) и Roidmi/Chuangmi (некоторые модели) вместо заводского.Этот функциионал более не развивается, сохранён как рудимент, т.к. в сети доступно бесплатное решение от другого разработчика;
ОБСУДИТЬ В TELEGRAM
ПОКОРМИТЬ КАПИБАРУ
* прямой переход по ссылке возможен только со страниц этого блога, или после ввода пароля 100683632 (имя пользователя вводить не надо)