Установка голосовых пакетов для пылесоса Roidmi Eve Plus

Оглавление


Качаем Mi Home от Vevs (https://www.kapiba.ru/2017/11/mi-home.html).

Устанавливаем, настраиваем, логинимся и т.д., пылесос должен быть настроен и работать через это приложение.

Подключаем телефон к компу и копируем с него на компьютер файл main.bundle, который находится по пути /Android/data/com.xiaomi.smarthome/files/plugin/install/rn/1002682/1024072/android/. Если с компьютера не удается войти в эту папку (не видна в списке), то заархивировать на телефоне и архив перенести в любое другое место на телефоне, например, в корневую папку.

Важно: если на телефоне есть в корне папка vevs, то скорее всего вам будет необходимо работать именно в ней, и тогда для вас путь к файлу будет /vevs/files/plugin/install/rn/1002682/1024072/android/. Не забываем делать резервные копии! Скопировали, продолжаем.

Установка локального сервера

Выбрал более-менее не сложный сервер для инструкции – XAMPP. (Пробовал на своем OpenServer, устанавливал Ampps, на них так же работает. Если что-то уже стоит из аналогов, можно пользоваться ими.).

Скачать сервер с офф. сайта: https://www.xampp.ru/
Скачать сервер отсюда: https://mc-dos.ru/upload/roidmi/xampp-windows-x64-8.0.12-0-VS16-installer.exe

Устанавливаем XAMPP с минимальным набором функций. Можно отключить все отключаемые галочки:

Запускаем сервер (если ничего не трогали, то контрольная панель запустится автоматически). После запуска нажимаем кнопку Start в единственной доступной строке Apache. Сервер запустится и подсветит зеленым название Apache.

Теперь необходимо узнать ваш локальный IP адрес. Можно двумя вариантами:

  1. Через классическую контрольную панель в пункте «Центр управления сетями и общим доступом», нажав ссылку подключения в блоке «Просмотр активных сетей» и в открывшемся окне нажимаем кнопку «Сведения», где смотрим параметр «Адрес IPv4».
  1. В системном трее тыкаем на значке подключения, выбираем «Открыть параметры сети и интернет», заходим в «Свойства» подключения, прокручиваем вниз и ищем параметр «IPv4-адрес».

Нашли. Он может выглядеть примерно так 192.168.1.6. Заходим в браузер и пробуем зайти на страницу http://192.168.1.6/ нашего сервера. Если отображается стартовая страница, вида этой, то все хорошо:

Если ничего не меняли при установке, то путь до файлов сервера на компьютере имеет вид C:\xampp\htdocs. Заходим и удаляем все файлы.

Качаем архив с необходимыми файлами: https://mc-dos.ru/upload/roidmi/htdocs.zip

В этом архиве лежит json файл с конфигурационными данными для озвучек из которого я убрал все языки кроме Русского и Английского, а так же добавил свою озвучку голосом робота Maksim.

Версия с припиской «long» это тоже самое, только изменена озвучка начала уборки всей площади на длинную (~ 1 минута).

Разархивируем все файлы в папку C:\xampp\htdocs и пробуем зайти еще раз на установленный сервер через браузер. Если видим список файлов, что разархивировали, то все хорошо. В дальнейшем все эти файлы необходимо будет перенести в новую папку… в какую — сможем понять после следующего шага.

Внесение изменений в плагин Roidmi Eve Plus для MiHome

Переходим к файлу main.bundle. Открываем его любым текстовым редактором и переходим к строчке 69321 (На момент написания статьи. Плагин версии 62.) или ищем переменную «_this.voice_root». В оригинале:

_this.voice_root = 'https://cdn.awsde0.fds.api.mi-img.com/resource/robot/mihome/voicepack/';

Заменяем все, что в кавычках на адрес вашего сервера. В наем случае это 192.168.1.6. Причем необходимо, что бы полный путь был равен 70 символам между кавычек. В итоге должно получиться примерно так:

 _this.voice_root = 'http://192.168.1.6/resources/robot_roidmi_eve_plus/mi_home/voice_pack/';

Всю эту структуру папок необходимо создать на сервере и переместить все файлы туда. То есть должно получиться в нашем случае, что файлы озвучек будут лежать на компьютере по пути:

C:\xampp\htdocs\resources\robot_roidmi_eve_plus\mi_home\voice_pack\

Не забываем, что адрес у вас будет свой и «192.168.1.6» только для моего случая.

Измененный файл сохраняем и заменяем им оригинал. После замены обязательно надо завершить приложение MiHome через меню приложения (долго удерживая палец на значке) и выбрать внизу ЗАКРЫТЬ. Только потом входим в приложение снова и открываем плагин пылесоса.

Переходим в меню «Голос и громкость», где мы должны будем увидеть такую картину:

Теперь, выбрав новый голос озвучки, можно проверять его работу.

Создание собственных языковых пакетов

В архиве https://mc-dos.ru/upload/roidmi/htdocs.zip лежат файлы без расширения. Оригиналы это «girl_ru» и «girl_en». Эти файлы есть GZ архивы с расширением tar.gz. Их можно переименовать, например, в «girl_ru.tar.gz», разархивировать и начать мучать озвучку.

Для простоты работы я подготовил 2 архива:

https://mc-dos.ru/upload/roidmi/girl_ru_orig.zip — разархивированный архив с оригинальной русской озвучкой.

https://mc-dos.ru/upload/roidmi/original_girl_ru_named.zip — разархивированный архив с оригинальной русской озвучкой и с подписанными фразами для каждого файла (вида Q009-начинаю-уборку-заданной-зоны.mp3), что бы было проще ориентироваться. Там все таки 76 фраз.

Создав свою озвучку для всех или частично файлов, назвав их так же, как оригинальные названия, необходимо создать tar.gz архив. На Windows 10 его можно создать так же, как на Linux системах:

  1. Наживаем сочетание Win+R, пишем cmd. Заходим в консоль.
  2. Переходим в папку с озвучкой командой cd <путь/к_папке_озвучки> (Например, все mp3 файлы озвучки лежат в папке C:\roidmi\my_voice\, то команда будет выглядеть, как cd C:\roidmi\my_voice\ )
  3. Выполняем команду tar -czvf mypack.tar.gz *

В папке с озвучкой создастся файл с именем mypack.tag.gz. Ему необходимо стереть расширение tar.gz, оставив только имя без точки в конце.

Готовый файл необходимо перенести в папку локального сервера, в нашем случае C:\xampp\htdocs. Так же, в файле voice_config.json необходимо добавить новую запись озвучки или внести правки в существующую.

Пример того, что нужно добавить в файл, на примере сознанной озвучки mypack:

Сохраняем. Заходим в MiHome, который в лучшем случае, так же перезагрузить закрыв-открыв и проверяем работу новой озвучки.

Возможные ошибки и их решения

Если пылесос находится в сети 2.4ГГц (в иной он и не может быть), а телефон в сети 5ГГц, то не скачивается с локального сервера файл конфига. Проверьте нахождение устройств в одной одинаковой сети 2.4ГГц.

Проверить, что вообще включен Wifi на телефоне. Бывало и такое.

Не обновляется список языковых пакетов:
  1. Проверить возможность захода через браузер телефона на адрес локального сервера. Если не заходит — попробовать отключить брандмауэр Windows, если используется стандартный.
  2. После замены файла приложение Mi Home не было закрыто принудительно. Закрыть приложение через Настройки — Приложения и запустить заново.
Зависает MiHome при запуске плагина пылесоса (бесконечная загрузка):
  1. Проверить новый адрес на обязательный параметр — 70 символов!
  2. Использовать для редактирования плагина сторонние текстовые редакторы: Akelpad или Notepad++. (Открыть оригинал файла и снова отредактировать редактором из списка. Сохранить, проверить.)
Подписаться
Уведомить о
2 комментариев
Старые
Новые
Межтекстовые Отзывы
Посмотреть все комментарии
Эдуард Вассерман

Почему-то при любом вмешательстве в файл main.bundle, даже если просто открыть его на пк или ноутбуке, робот перестает загружаться в карту (просто бесконечно бегают три точки). Скажите пожалуйста, что может быть?