Робот-пылесос Xiaomi Vacuum Mop Essential (модель STYJ02YM) требует токен доступа для интеграции со сторонними системами умного дома, такими как Home Assistant, Node-RED или ioBroker. Без этого уникального идентификатора вы не сможете управлять устройством через API, настраивать автоматизации или использовать расширенные функции вне официального приложения Mi Home.
Проблема в том, что Xiaomi не предоставляет токен открыто — его нужно извлекать самостоятельно. В этой статье мы разберём 5 проверенных способов получения токена, включая официальные и альтернативные методы, а также решения типичных ошибок (например, Invalid token или Device not found). Особое внимание уделим безопасности: почему нельзя делиться токеном в открытых источниках и как защитить свой аккаунт от взлома.
1. Что такое токен Xiaomi и зачем он нужен
Токен (или API-ключ) — это уникальная 32-символьная строка, которая служит «паролем» для взаимодействия с устройством через облако Xiaomi. Он привязан к конкретному аккаунту и устройству, поэтому токен от одного пылесоса не подойдёт для другого, даже если модели идентичны.
Без токена вы не сможете:
- 🔌 Подключить пылесос к Home Assistant или другим системам автоматизации;
- 📊 Получать данные о статусе уборки (заряд батареи, покрытая площадь, ошибки);
- 🤖 Управлять устройством через голосовых помощников (Алиса, Google Assistant);
- 🔄 Настраивать сложные сценарии (например, запуск уборки при отсутствии дома).
Важно: токен действует только пока устройство привязано к вашему аккаунту Mi Home. При сбросе пылесоса или смене аккаунта токен станет недействительным.
2. Способ 1: Получение токена через Mi Home (официальный метод)
Самый надёжный способ — извлечь токен из трафика приложения Mi Home. Для этого понадобится:
- 📱 Смартфон с установленным Mi Home (версия не ниже 6.0.100);
- 🖥️ Компьютер с программой для перехвата трафика (Fiddler, Charles или HTTP Toolkit);
- 🔗 Пылесос Xiaomi Vacuum Mop Essential, привязанный к аккаунту.
Пошаговая инструкция:
Установите на компьютер HTTP Toolkit (скачать здесь) и запустите программу.
На смартфоне подключитесь к той же сети Wi-Fi, что и компьютер. В настройках Wi-Fi укажите прокси-сервер (IP вашего ПК и порт
8080).Откройте Mi Home, авторизуйтесь и перейдите на страницу управления пылесосом. В HTTP Toolkit начните запись трафика.
В приложении обновите статус устройства (потяните экран вниз). В логах HTTP Toolkit найдите запрос к домену
api.io.mi.comс путьём/api/user/getdevicelist.В ответе сервера будет JSON-массив
"list". Найдите в нём ваш пылесос по модели"model": "roborock.vacuum.m1s"(для Vacuum Mop Essential) и скопируйте значение"token".
Пример ответа сервера (токен выделен):
{
"list": [
{
"did": "123456789",
"token": "a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6",
"model": "roborock.vacuum.m1s",
"name": "Xiaomi Vacuum Mop Essential"
}
]
}
Убедитесь, что пылесос подключён к Wi-Fi|Отключите VPN на смартфоне|Обновите приложение Mi Home до последней версии|Проверьте, что устройство не в режиме "Не беспокоить"-->
3. Способ 2: Использование альтернативных приложений
Если перехват трафика кажется сложным, можно воспользоваться сторонними утилитами, которые автоматизируют процесс. Самые популярные:
- 🔧 Mi Token Extractor (Android) — извлекает токены из кеша Mi Home;
- 🍎 Xiaomi Cloud Tokens Extractor (iOS, требует джейлбрейк);
- 💻 Python-скрипт miio-cli (для продвинутых пользователей).
Рассмотрим работу с Mi Token Extractor:
- Скачайте APK-файл с GitHub (проверяйте актуальность версии!).
- Установите приложение на Android (разрешите установку из неизвестных источников).
- Авторизуйтесь в Mi Home и откройте Mi Token Extractor.
- Нажмите
Get Tokens— программа покажет список устройств с токенами.
⚠️ Внимание: Некоторые антивирусы блокируют Mi Token Extractor как «потенциально опасное ПО». Это ложное срабатывание, но скачивайте APK только с официального репозитория разработчика.
| Приложение | Платформа | Требует root/джейлбрейк? | Сложность |
|---|---|---|---|
| Mi Token Extractor | Android | Нет | ⭐⭐ |
| Xiaomi Cloud Tokens Extractor | iOS | Да (джейлбрейк) | ⭐⭐⭐ |
| miio-cli (Python) | Windows/Linux/Mac | Нет | ⭐⭐⭐⭐ |
Home Assistant|ioBroker|Node-RED|Домашний помощник Алисы|Другую|Не использую-->
4. Способ 3: Ручной запрос через API (для технических пользователей)
Если вы знакомы с Python или Postman, можно получить токен через прямой запрос к API Xiaomi. Для этого:
Установите библиотеку
python-miio:pip install python-miioАвторизуйтесь в аккаунте Xiaomi через скрипт:
from miio import ChangelogLibreuser = "ваш_email@mail.com"
password = "ваш_пароль"
libre = ChangelogLibre()
libre.login(user, password)
Получите список устройств:
devices = libre.get_devices()for device in devices:
if device["model"] == "roborock.vacuum.m1s":
print(f"Token: {device['token']}")
⚠️ Внимание: Храните скрипт с паролем в защищённом месте. После получения токена удалите из кода логин и пароль, чтобы избежать утечки данных.
Альтернатива — использовать Postman:
- Создайте
POST-запрос наhttps://account.xiaomi.com/pass/serviceLoginAuth2; - В теле запроса укажите:
{
"clientId": "2882303761517432307",
"password": "ваш_пароль",
"serviceToken": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
"user": "ваш_email@mail.com"
}
Что делать, если API возвращает ошибку "Invalid credentials"
Убедитесь, что вы используете правильный регион сервера (для России — ru, для Европы — eu).
Попробуйте сменить пароль в аккаунте Mi Home и повторите запрос.
Если аккаунт привязан к номеру телефона, используйте его вместо email в поле user.
Проверьте, не включена ли двухфакторная аутентификация — её нужно временно отключить.
5. Способ 4: Извлечение токена из резервной копии Mi Home
Если у вас есть резервная копия данных Mi Home (например, созданная через Titanium Backup или iMazing), токен можно извлечь из неё:
- Сделайте бэкап приложения Mi Home (требуются root-права на Android).
- Откройте файл бэкапа в текстовом редакторе (например, Notepad++).
- Найдите строку
"token"— рядом будет 32-символьный ключ.
Пример фрагмента бэкапа:
<map>
<string name="did">123456789</string>
<string name="token">a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6</string>
<string name="model">roborock.vacuum.m1s</string>
</map>
⚠️ Внимание: Резервные копии могут содержать устаревшие токены. После извлечения проверьте работоспособность ключа через тестовый запрос к API.
6. Способ 5: Запрос токена через поддержку Xiaomi (официальный канал)
В редких случаях токен можно получить через службу поддержки Xiaomi, но для этого потребуется:
- 📄 Чек о покупке пылесоса (или гарантийный талон);
- 🆔 Серийный номер устройства (
S/Nна днище пылесоса); - 📧 Email, привязанный к аккаунту Mi Home.
Инструкция:
- Напишите в чат поддержки Xiaomi (через Mi Home или сайт support.xiaomi.com).
- Укажите причину запроса: «Нужен токен для интеграции с системой умного дома».
- Прикрепите фото чека и серийного номера.
- Дождитесь ответа (обычно 1–3 дня).
🔹 Важно: Поддержка не всегда идёт навстречу, особенно если устройство куплено неофициально. В 80% случаев вам откажут, сославшись на «политику безопасности».
7. Типичные ошибки и их решения
При работе с токеном пользователи часто сталкиваются с проблемами. Рассмотрим самые распространённые:
| Ошибка | Причина | Решение |
|---|---|---|
Invalid token |
Токен устарел или неверный | Получите новый токен или проверьте правильность ввода |
Device not found |
Пылесос не привязан к аккаунту | Перепривяжите устройство в Mi Home |
Permission denied |
Недостаточно прав | Проверьте регион сервера (должен совпадать с регионом аккаунта) |
Network error |
Проблемы с интернетом | Отключите VPN, проверьте подключение |
Если пылесос не отвечает на команды через API, выполните проверку:
- Убедитесь, что устройство включено и подключено к Wi-Fi.
- Проверьте, не блокирует ли брандмауэр исходящие соединения.
- Обновите прошивку пылесоса до последней версии.
Как проверить работоспособность токена
Отправьте тестовый запрос через Postman или curl:
curl -X POST "http://IP_ПЫЛЕСОСА/miIO.info" -d '{"id":1}' -H "Content-Type: application/json"
Если ответ содержит "result": ["ok"], токен действует.
8. Безопасность: как защитить свой токен
Токен даёт полный контроль над вашим пылесосом. Если он попадёт в чужие руки, злоумышленник сможет:
- 🕵️ Отслеживать ваше местоположение (по карте уборки);
- 🔊 Включать пылесос ночью или в ваше отсутствие;
- 📸 Получать данные с камеры (если модель поддерживает видеонаблюдение).
Правила безопасности:
- 🔐 Никому не передавайте токен, даже «для теста».
- 🔄 Регулярно меняйте пароль от аккаунта Mi Home.
- 🛡️ Настройте двухфакторную аутентификацию.
- 🗑️ Удаляйте токен из кода проектов перед публикацией на GitHub.
Если токен скомпрометирован:
- Немедленно отвяжите пылесос от аккаунта в Mi Home.
- Сбросьте устройство к заводским настройкам (кнопка
RESETна 5 секунд). - Сгенерируйте новый токен.
FAQ: Частые вопросы о токене Xiaomi Vacuum Mop Essential
❓ Меняется ли токен после обновления прошивки?
Да, в некоторых случаях Xiaomi сбрасывает токен при крупных обновлениях ПО. После апдейта проверьте работоспособность токена и при необходимости получите новый.
❓ Можно ли использовать один токен для нескольких пылесосов?
Нет. Токен привязан к конкретному устройству (DID) и аккаунту. Для каждого пылесоса нужен отдельный ключ.
❓ Почему токен состоит из 32 символов, а в некоторых инструкциях указаны более короткие ключи?
Раньше Xiaomi использовала токены длиной 16–24 символа, но с 2022 года перешла на 32-символьный формат. Старые токены могут ещё работать, но новые устройства (включая Vacuum Mop Essential) требуют расширенный ключ.
❓ Как узнать IP-адрес пылесоса для прямого подключения?
IP-адрес можно найти:
- В роутере (раздел
DHCP ClientsилиПодключённые устройства); - Через приложение Mi Home:
Настройки устройства → О устройстве → Локальная сеть; - С помощью сканирования сети утилитой Fing или nmap.
❓ Работает ли токен, если пылесос отключён от Wi-Fi?
Нет. Для взаимодействия через API устройство должно быть подключено к интернету. Локальные команды (по IP) работают только в одной сети с пылесосом.