Как получить токен для робота пылесоса Xiaomi

Как узнать токен робота пылесоса xiaomi

Как узнать токен робота пылесоса xiaomi

Токен Xiaomi необходим для интеграции робота пылесоса с внешними приложениями и сервисами автоматизации, включая Home Assistant и Mi Home API. Без него управление устройством вне официального приложения невозможно. Для большинства моделей токен доступен только после подключения к облаку Xiaomi и авторизации через Mi Account.

Существует два основных метода получения токена: через ПК с установленной старой версией Mi Home или с помощью телефона на Android с рут-доступом. На Android необходимо использовать версию Mi Home ниже 5.4.52, так как более новые версии шифруют токены. После установки старой версии достаточно войти в учетную запись и выполнить экспорт базы данных приложения, где содержится токен устройства.

Для iOS-устройств используется метод перехвата сетевого трафика с помощью Charles Proxy или Fiddler. После настройки прокси и подключения телефона к нему, открытие приложения Mi Home позволяет зафиксировать токен в HTTPS-запросах к серверу Xiaomi. Токен представляет собой 32-символьную строку в формате hex и должен храниться безопасно, так как предоставляет полный доступ к управлению роботом.

После получения токена его можно использовать в конфигурациях внешних сервисов, для настройки автоматических сценариев уборки, получения данных о состоянии батареи, карты помещения и журналов работы. Важно обновлять токен при смене учетной записи или после переустановки приложения, иначе интеграция перестанет работать.

Проверка совместимости модели и приложения Xiaomi Home

Проверка совместимости модели и приложения Xiaomi Home

Перед попыткой получения токена убедитесь, что ваша модель робота пылесоса поддерживается последней версией приложения Xiaomi Home. Поддержка зависит от поколения устройства: например, серии Mi Robot Vacuum 1 и 1C имеют ограниченную функциональность в новых версиях, тогда как модели Mi Robot Vacuum 2, 1S и S5 полностью интегрируются с актуальными сборками приложения.

Для проверки совместимости откройте Xiaomi Home, войдите в аккаунт и выберите пункт «Добавить устройство». В списке отображаются все распознаваемые устройства. Если вашего робота нет в списке, вероятнее всего, текущая версия приложения не поддерживает модель. В этом случае можно использовать старую версию Xiaomi Home, соответствующую выпуску вашего робота.

Обратите внимание на региональные ограничения. Некоторые модели, например Mi Robot Vacuum Pro и S6, работают только с китайским или европейским сервером. При попытке подключения через другой регион приложение может не распознать устройство, а доступ к токену будет заблокирован. Рекомендуется выбирать сервер, совпадающий с регионом продажи робота.

Если модель поддерживается, проверьте версию прошивки пылесоса через настройки устройства в Xiaomi Home. Для получения токена потребуется версия прошивки, совместимая с API приложений сторонних разработчиков. Обычно это прошивки выше 3.5.7 для моделей S5 и S6. Обновление прошивки до рекомендованной версии гарантирует стабильную синхронизацию и успешное извлечение токена.

Подготовка смартфона и учетной записи для получения токена

Подготовка смартфона и учетной записи для получения токена

Для начала убедитесь, что на смартфоне установлено последнее стабильное обновление приложения Mi Home. Используйте версию, совместимую с вашим регионом: для глобальной прошивки – Mi Home Global, для Китая – Mi Home China. Разные версии имеют различный метод аутентификации, что напрямую влияет на получение токена.

Создайте или войдите в учетную запись Xiaomi. Для региональных серверов China и Global создаются отдельные аккаунты, и токены одного региона не работают в другом. Проверьте номер телефона или email, используемый для регистрации, и подтвердите его через SMS или почту, чтобы исключить блокировку безопасности при подключении к устройству.

Активируйте двухфакторную аутентификацию в настройках аккаунта. Это не только повышает защиту, но и упрощает процедуру получения токена через локальный API, так как Mi Home фиксирует авторизованные устройства и позволяет видеть список токенов в момент их генерации.

Отключите автоматическое обновление приложений на время получения токена. Обновление Mi Home в процессе может изменить структуру базы данных и удалить локальные файлы с токеном. Рекомендуется также очистить кэш приложения и убедиться, что у смартфона стабильное подключение к Wi-Fi без прокси и VPN.

Запишите ID вашего устройства и версию прошивки пылесоса. В Mi Home эти данные отображаются в разделе «Информация об устройстве». Наличие точных данных о прошивке необходимо для корректного извлечения токена, так как старые или кастомные прошивки могут требовать отдельного метода авторизации.

Использование режима разработчика для доступа к токену

Использование режима разработчика для доступа к токену

Доступ к токену через режим разработчика актуален для моделей Xiaomi и Roborock, работающих с приложением Mi Home. Метод подходит для устройств на региональных серверах China Mainland и Europe. Понадобится смартфон на Android с включённой отладкой по USB и установленным ADB. На iOS получить системные логи приложения невозможно без джейлбрейка, поэтому используется только Android-устройство.

В приложении Mi Home необходимо активировать расширенные параметры. Для этого откройте профиль, перейдите в настройки, несколько раз нажмите на версию приложения до появления скрытого меню. В разделе логирования включите сохранение debug‑логов. После этого перезапустите приложение и выполните принудительную синхронизацию пылесоса, чтобы токен появился в журнале.

Подключите смартфон к компьютеру и выполните команду adb logcat -d > mihome_log.txt. В полученном файле найдите строку с параметром token=. Значение представляет собой 32‑символьную строку в шестнадцатеричном формате. Важно извлечь токен именно того устройства, которое привязано к текущему аккаунту, так как при наличии нескольких устройств в логах будут отображаться разные идентификаторы.

Если в логах токен не отображается, проверьте регион сервера. При несоответствии региона устройство может не передавать данные локально. В таком случае временно переключите регион в настройках Mi Home на тот, где изначально регистрировался робот, выполните повторную авторизацию и повторите процедуру логирования.

После получения токена рекомендуется зафиксировать IP-адрес пылесоса в роутере через DHCP Binding. Это предотвратит смену адреса и потерю соединения при интеграции с Home Assistant или другими системами автоматизации. Также стоит отключить автоматическое обновление прошивки, если планируется использование локального API, так как некоторые версии прошивки блокируют сторонний доступ.

Токен не меняется при обычной перезагрузке устройства, но сбрасывается при полном удалении пылесоса из аккаунта Mi Home или повторной привязке к другому аккаунту. При смене Wi‑Fi сети токен сохраняется, однако потребуется заново определить IP-адрес устройства в локальной сети.

Храните токен в защищённом месте: при его компрометации стороннее ПО получает полный доступ к управлению устройством через локальный протокол miIO. Перед публикацией логов на форумах удаляйте строку с токеном вручную.

Снятие токена через сетевой трафик или лог-файлы

Снятие токена через сетевой трафик или лог-файлы

Получение токена через анализ сетевого трафика подходит для моделей, подключённых к локальной сети Wi‑Fi и управляемых через приложение Mi Home. Метод основан на перехвате обмена данными между смартфоном и облачными серверами во время первичной инициализации устройства. Наиболее результативный момент – повторное добавление пылесоса в аккаунт с включённым прокси‑перехватчиком.

Для перехвата используется локальный прокси на компьютере (например, mitmproxy) или выделенный маршрутизатор с функцией зеркалирования трафика. Смартфон и ПК должны находиться в одной подсети. После установки сертификата перехвата на смартфон запускается добавление устройства в приложении. В перехваченном HTTPS‑трафике ищется JSON‑ответ с параметрами token и did. Токен представляет собой 32‑символьную шестнадцатеричную строку, например: 5f3c2a1b9e4d7c8f1122334455667788.

В трафике интерес представляет ответ сервера на запрос вида /home/device_list или /v2/home/device_list. Внутри массива result находится объект устройства, где поле token соответствует локальному ключу шифрования для протокола miIO. Извлечённое значение сохраняется без изменений регистра.

При невозможности расшифровки HTTPS используется метод с резервной копией Android‑устройства. Для этого создаётся локальный backup через ADB без шифрования. После распаковки архива анализируется файл базы данных miio2.db, расположенный в каталоге данных приложения. В таблице devicerecord хранится поле token в hex‑формате.

Ключевые файлы и параметры для анализа:

Источник Путь / Endpoint Что искать
HTTPS‑трафик /home/device_list JSON‑поле «token»
ADB backup apps/com.xiaomi.smarthome/miio2.db Таблица devicerecord
Логи роутера Локальный дамп pcap Ответ сервера Xiaomi

Альтернативный способ – анализ дампа pcap, снятого через Wireshark на шлюзе. Для этого активируется порт‑mirror или используется OpenWrt с tcpdump. После фильтрации по IP‑адресу смартфона выполняется поиск по строке «token». Метод срабатывает только при корректной установке пользовательского сертификата, иначе данные останутся зашифрованными.

Для устройств с Android 7–10 вероятность успешного извлечения выше из‑за менее жёсткой политики доверенных сертификатов. На Android 11+ приложение Mi Home часто использует certificate pinning, что требует модифицированной прошивки или отключения проверки через инструменты отладки. Без этого перехват покажет лишь TLS‑сеанс без содержимого.

После получения токена рекомендуется проверить его работоспособность через локальный запрос miIO (порт 54321 UDP). Корректный токен позволяет отправлять команды status или miIO.info и получать валидный ответ от пылесоса. Если ответа нет – токен устарел, и процедуру добавления устройства следует повторить с новым перехватом.

Сохранение и безопасное хранение токена

Сохранение и безопасное хранение токена

Первый шаг – зашифровать токен перед сохранением. Можно использовать алгоритмы AES-256 или встроенные механизмы шифрования операционной системы, например Keychain на iOS или Keystore на Android.

Рекомендуется хранить токен в защищённом локальном файле, к которому ограничен доступ. Примеры безопасного расположения:

  • На ПК – в директории пользователя с ограничением прав доступа через chmod 600 (Linux/macOS) или ACL (Windows).
  • На мобильных устройствах – внутри приложения с использованием защищённого хранилища.

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

Для дополнительной безопасности можно настроить регулярную ротацию токена: получать новый каждые 3–6 месяцев и удалять старый. Это снижает риск длительного доступа в случае компрометации. Также полезно вести журнал доступа к токену и проверять, какие устройства подключены к аккаунту Xiaomi.

Использование токена для управления роботом пылесосом через сторонние приложения

Использование токена для управления роботом пылесосом через сторонние приложения

Токен Xiaomi необходим для аутентификации в сторонних приложениях, таких как Home Assistant, Domoticz или сторонние мобильные контроллеры. Он позволяет устанавливать прямое соединение с устройством без официального приложения Mi Home.

После получения токена подключение происходит через IP-адрес робота и порт 54321, который используется протоколом miIO. Приложения используют токен для отправки команд: запуск уборки, возврат на базу, управление мощностью всасывания и создание расписаний.

Home Assistant, например, поддерживает интеграцию через компонент Xiaomi Miio. Для настройки необходимо в конфигурации указать IP-адрес пылесоса и токен, после чего приложение автоматически подтягивает информацию о состоянии устройства, карте помещений и текущих задачах уборки.

В Domoticz процесс аналогичен: токен вводится в настройках плагина Xiaomi, после чего появляется возможность управлять отдельными зонами, включать точечную уборку и получать уведомления о статусе батареи.

Сторонние мобильные приложения, такие как Vacuum Map или Valetudo, используют токен для прямого управления роботом через локальную сеть. Это позволяет обходить ограничения облака Xiaomi и получать более быстрый отклик на команды.

При использовании токена важно хранить его в защищённом месте и не передавать посторонним. Любая утечка позволяет управлять устройством удалённо, что несёт риск безопасности и нарушает конфиденциальность.

Токен также открывает возможность интеграции с голосовыми помощниками через локальные шлюзы. Например, можно настроить сценарий включения уборки по голосовой команде через Home Assistant, используя токен для передачи команд напрямую на робот-пылесос.

Вопрос-ответ:

Что такое токен для робота-пылесоса Xiaomi и зачем он нужен?

Токен — это уникальный ключ, который позволяет приложениям и сторонним сервисам получать доступ к управлению вашим роботом-пылесосом. С его помощью можно подключить устройство к альтернативным приложениям, создавать автоматические сценарии уборки и получать данные о состоянии робота без использования официального приложения.

Какие шаги нужно пройти, чтобы получить токен через мобильное приложение Xiaomi Home?

Сначала убедитесь, что ваш робот добавлен в Xiaomi Home и подключен к аккаунту Mi. Затем на устройстве Android можно использовать инструменты для извлечения токена из локальной базы данных приложения. На iOS этот процесс сложнее и требует резервного копирования настроек через компьютер. После получения токена его можно использовать для интеграции с умным домом или сторонними сервисами.

Можно ли получить токен без компьютера, только с помощью телефона?

Да, на Android это возможно, так как можно использовать приложения или скрипты для чтения данных Xiaomi Home на самом устройстве. На iPhone без компьютера сделать это почти невозможно из-за ограничений системы и способа хранения данных. Для безопасного получения токена рекомендуется иметь резервную копию и работать аккуратно, чтобы не повредить настройки аккаунта.

Насколько безопасно использовать токен для сторонних сервисов?

Токен предоставляет полный доступ к роботу, поэтому его нельзя передавать неизвестным приложениям или людям. Если кто-то получит токен, он сможет управлять вашим пылесосом и просматривать данные о нем. Рекомендуется использовать токен только с проверенными сервисами и при необходимости периодически менять пароль аккаунта Mi для защиты.

Что делать, если токен перестал работать после обновления приложения Xiaomi Home?

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

Ссылка на основную публикацию