Роботы-пылесосы Xiaomi — одни из самых популярных устройств для умного дома, но их полноценное использование за пределами стандартного приложения Mi Home требует специального токена. Этот уникальный идентификатор позволяет интегрировать пылесос с Home Assistant, Node-RED, сторонними приложениями или даже написать собственные скрипты для автоматизации. Без токена вы не сможете удалённо управлять устройством через API, настраивать сложные сценарии или обходить региональные ограничения.
Проблема в том, что Xiaomi не предоставляет токен открыто — его нужно извлекать самостоятельно. Способы получения менялись с годами: если раньше достаточно было перехватить трафик через HTTP-прокси, то теперь требуются обходные пути из-за ужесточения безопасности. В этой статье мы разберём все актуальные методы (включая те, что работают в 2026 году), их плюсы и минусы, а также дадим пошаговые инструкции с учётом последних обновлений прошивок.
Что такое токен робота-пылесоса Xiaomi и зачем он нужен
Токен (или token) — это уникальный алфавитно-цифровой ключ длиной 32 символа, который идентифицирует ваше устройство в экосистеме Xiaomi. Он генерируется серверами компании при первой привязке пылесоса к аккаунту и используется для авторизации запросов к API. Без токена сторонние приложения не смогут:
- 📱 Управлять пылесосом через Home Assistant, ioBroker или OpenHAB.
- 🔄 Обходить региональные блокировки (например, для использования китайских моделей в Европе).
- 🤖 Автоматизировать уборку по расписанию с учётом датчиков движения или влажности.
- 📊 Получать расширенную статистику (карты уборки, время работы, износ щёток).
Важно понимать, что токен привязан к конкретному аккаунту Mi Account и устройству. Если вы сбросите пылесос к заводским настройкам или перепривяжете его к другому аккаунту, старый токен перестанет работать. Также Xiaomi может блокировать токены при подозрительной активности (например, слишком частых запросах к API).
⚠️ Внимание: Никогда не делитесь своим токеном в открытых источниках (форумах, гитхабе, чатах). Злоумышленники могут использовать его для управления вашим пылесосом или даже кражи данных аккаунта Mi Account.
Способ 1: Получение токена через Mi Account (официальный метод)
Это самый простой и безопасный способ, но он работает только для устройств, привязанных к китайскому серверу (cn). Если ваш пылесос подключён к серверам Европы (eu), России (ru) или США (us), этот метод не сработает — потребуется смена региона (об этом ниже).
Инструкция:
- Откройте приложение Mi Home и перейдите в профиль (иконка человека в правом нижнем углу).
- Нажмите на
Настройки аккаунта → Безопасность → Устройства с доступом. - Найдите в списке свой робот-пылесос и скопируйте строку
Device ID(например,123456789). - Перейдите на сайт account.xiaomi.com, авторизуйтесь и откройте инструменты разработчика (
F12в браузере). - Вкладка
Network→ найдите запрос к/api/user/getProfile→ в ответе будет полеtoken.
Если поле token отсутствует, значит ваш аккаунт не имеет прав на просмотр токенов. В этом случае попробуйте:
- 🌐 Сменить регион аккаунта на Китай (инструкция в следующем разделе).
- 📧 Написать в поддержку Xiaomi с просьбой предоставить токен (указывайте
Device ID).
Способ 2: Смена региона сервера на Китай (для получения токена)
Если ваш пылесос привязан к серверам Европы, России или США, официальный метод не сработает. Решение — временная смена региона аккаунта на Китай. Это позволит получить токен, после чего можно вернуть прежние настройки.
Пошаговая инструкция:
Удалите пылесос из аккаунта Mi Home|Смените регион аккаунта на Китай (mainland.cn)|Подключите пылесос заново через Wi-Fi|Получите токен через Mi Account (Способ 1)|Верните прежний регион (опционально)
-->
Важные нюансы:
- 📱 Приложение Mi Home должно быть китайской версии (скачайте APK с APKPure).
- 🌍 Регион аккаунта меняется в настройках профиля (может потребоваться подтверждение по SMS).
- ⚠️ После смены региона все устройства в аккаунте будут отвязаны! Заранее сохраните их настройки.
⚠️ Внимание: Некоторые модели пылесосов (например, Xiaomi Mi Robot Vacuum-Mop 2 Pro) могут заблокировать функцию уборки при смене региона. Перед процедурой проверьте совместимость вашей модели на форумах (например, 4PDA).
Способ 3: Перехват токена через HTTP-прокси (для опытных)
Этот метод работает для всех регионов, но требует навыков работы с сетью. Суть — перехватить трафик между приложением Mi Home и серверами Xiaomi, когда токен передаётся в открытом виде.
Что понадобится:
- 📱 Android-смартфон с root-правами или ПК с Fiddler/Charles Proxy.
- 🔌 Установленный сертификат прокси на устройстве (для расшифровки HTTPS).
- 📡 Локальная сеть, где пылесос и смартфон подключены к одному роутеру.
Инструкция для Charles Proxy:
- Установите Charles Proxy на ПК и настройте прокси на смартфоне (IP адрес ПК, порт 8888).
- В Charles включите
SSL Proxyingдля доменаapi.io.mi.com. - Запустите Mi Home, авторизуйтесь и дождитесь синхронизации с пылесосом.
- В логах Charles найдите запрос к
/api/user/getProfile— в ответе будет поле"token":"ваш_токен".
Для Android без root:
1. Установите приложение Packet Capture из Google Play.
2. Настройте фильтр на домен api.io.mi.com.
3. Запустите захват трафика и откройте Mi Home.
4. В логах найдите JSON с полем"token".
Что делать, если токен не виден в логах?
Если в перехваченном трафике нет поля"token", попробуйте:
1. Обновить Mi Home до последней версии.
2. Переподключить пылесос к Wi-Fi.
3. Использовать другой прокси-инструмент (например, mitmproxy).
4. Проверить, не блокирует ли антивирус захват трафика.
Способ 4: Извлечение токена через ADB (для Android)
Если у вас есть Android-смартфон с root-правами, токен можно извлечь напрямую из базы данных приложения Mi Home. Этот метод работает независимо от региона сервера.
Инструкция:
- Подключите смартфон к ПК и запустите
adb shell. - Выполните команды:
sucd /data/data/com.xiaomi.smarthome/databases
sqlite3 mihome.db
.tables
- Найдите таблицу
miuserи выполните:SELECT * FROM miuser; - В выводе будет поле
tokenс вашим ключом.
Если таблица mihome.db отсутствует, попробуйте:
- 🔍 Поискать токен в файле
/data/data/com.xiaomi.smarthome/shared_prefs/mihome_preferences.xml. - 📱 Использовать файловый менеджер с root-доступом (например, Root Explorer).
⚠️ Внимание: Изменение файлов в/data/data/может привести к сбоям в работе Mi Home. Перед манипуляциями сделайте резервную копию папкиcom.xiaomi.smarthome.
Способ 5: Альтернативные методы (для продвинутых пользователей)
Если ни один из вышеперечисленных способов не сработал, остаются менее стандартные, но рабочие варианты:
| Метод | Сложность | Необходимые инструменты | Примечания |
|---|---|---|---|
| Python-скрипт с Mi Account | Средняя | Python 3, библиотека miio |
Требует логин/пароль от Mi Account. Пример скрипта: GitHub. |
| Фирменное ПО Dreame | Низкая | Приложение Dreamehome (для пылесосов Dreame) | Токен можно извлечь из логов приложения через logcat. |
| Обратная разработка APK | Высокая | JADX, Apktool | Требует знаний Java/Kotlin. Нужно декомпилировать Mi Home и найти класс работы с токенами. |
Для пылесосов Dreame (например, Dreame D9 или DreameBot L10 Pro) токен можно получить через приложение Dreamehome:
- Установите Dreamehome и привяжите пылесос.
- Подключите смартфон к ПК и запустите
adb logcat | grep"token". - Во время синхронизации с пылесосом в логах появится строка с токеном.
Частые ошибки и их решения
При получении токена пользователи сталкиваются с типичными проблемами. Вот как их решить:
- 🔄 Токен недействителен или истёк:
Токены Xiaomi могут"сгорать" при:
- Смене пароля в Mi Account.
- Обновлении прошивки пылесоса.
- Длительном бездействии (более 6 месяцев).
Решение: получите новый токен любым из описанных методов.
- 🚫 Ошибка"Invalid token" при использовании API:
Проверьте:
- Регион сервера (токен для
cnне сработает наeu). - Правильность
Device ID(должен совпадать с тем, что в Mi Home). - Формат токена (32 символа, без пробелов).
- Регион сервера (токен для
- 🔒 Аккаунт заблокирован после множества запросов:
Xiaomi может временно блокировать аккаунты при подозрительной активности (например, 100+ запросов к API в минуту). Решение:
- Подождите 24 часа.
- Смените пароль в Mi Account.
- Используйте официальное приложение для"разблокировки".
Если пылесос перестал отвечать на команды после смены токена, выполните:
- Перезагрузку пылесоса (удерживайте кнопку питания 10 секунд).
- Сброс Wi-Fi-настроек в Mi Home (
Настройки устройства → Сброс сети). - Повторную привязку к аккаунту.
FAQ: Ответы на популярные вопросы
Можно ли использовать один токен для нескольких пылесосов?
Нет. Токен уникален для каждой пары"аккаунт + устройство". Если у вас 2 пылесоса, придётся получать 2 разных токена.
Как проверить, работает ли токен?
Используйте команду через Python:
from miio import Vacuum
vacuum = Vacuum(ip="192.168.1.100", token="YOUR_TOKEN")
print(vacuum.status)
Если токен действительный, команда вернёт статус пылесоса (заряд, режим уборки и т. д.).
Что делать, если пылесос не подключается к Wi-Fi после смены региона?
Проблемачна для моделей с прошивкой newer 2023 года. Решения:
- Используйте точку доступа 2.4 GHz (5 GHz не поддерживается).
- В ручном режиме укажите SSID сети (без пробелов и спецсимволов).
- Обновите прошивку пылесоса через Mi Home.
Можно ли получить токен без смартфона?
Да, но только для пылесосов с поддержкой LAN-режима (например, Xiaomi Mi Robot Vacuum-Mop 2 Pro). Используйте скрипт:
python3 -m pip install python-miio
mirobo discover --handshake true
Скрипт найдёт пылесос в локальной сети и предложит ввести токен для подключения.
Как часто нужно обновлять токен?
Официально токены Xiaomi не имеют срока годности, но на практике их приходится обновлять раз в 1–2 года (или после смены пароля/прошивки). Чтобы уменьшить риск блокировки:
- Не используйте токен в публичных проектах (например, на GitHub).
- Ограничьте частоту запросов к API (не более 10 в минуту).
- Регулярно обновляйте прошивку пылесоса.