Токен Xiaomi (где взять токен)
Токен Xiaomi (где взять токен)

Всем привет, мы снова встретились, я ваш друг Цюаньчжаньцзюнь.

Просооборудованиеtokenполучать&HomeAssistantУстановка и развертывание

За последние два года Интернет вещей и связанные с ним технологии стремительно развивались. Различные умные устройства постепенно вошли в нашу жизнь, и пользователи все больше стремятся к интеллектуальной жизни. Однако нынешние продукты на рынке умного дома разбросаны, и одному производителю сложно полностью удовлетворить потребности пользователей, а продукты нескольких производителей не могут быть напрямую связаны между собой. Это также может быть проблемой, с которой сталкивается домашний интеллект. В этой статье в основном рассказывается о токенах и управлении устройствами Xiaomi по локальной сети, а также о развертывании и использовании HomeAssistant, платформы «умного дома» с открытым исходным кодом, позволяющей связывать несколько интеллектуальных устройств в доме.

Получите токен смарт-устройства Xiaomi

Чтобы устранить зависимость от проприетарного программного обеспечения (приложения Mijia), устройства Mijia предоставляют возможность управлять ими через локальную сеть. Прежде чем использовать этот протокол управления локальной сетью, вам необходимо получить токен устройства. Далее мы представим некоторые методы получения токенов устройствами Xiaomi.

miIO-discovery получает токен и элементы управления

Зашифрованный собственный сетевой протокол, используемый устройством и приложением Mijia в одной локальной сети, называется протоколом miIO. Протокол основан на UDP и использует для связи порт 54321. Конкретные функции см. по адресу github https://github.com/rytilahti/python-miio. Цель этой библиотеки — поддержка всех miIO-совместимых устройств и классификация типов устройств и методов управления для упрощения взаимодействия с ними. Эту библиотеку необходимо установить в Python 3.5 или выше. Сначала настройте среду Python:

  • Установите зависимости Python3.5 (те, которые существуют локально, будут игнорироваться)
Язык кода:javascript
копировать
sudo apt-get install build-essential libsqlite3-dev sqlite3 bzip2 libbz2-dev libssl-dev openssl libgdbm-dev liblzma-dev libreadline-dev libncursesw5-dev
  • Скомпилируйте и установите Python3.5.
Язык кода:javascript
копировать
wget https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tgz
tar zxvf Python-3.5.2.tgz
cd ./Python-3.5.2
./configure --prefix=/usr/bin/python3.5
make
make
sudo make install

После компиляции запустите python3.5. Следующие результаты докажут, что установка прошла успешно.

  • Установите библиотеку miIO и загрузите код библиотеки локально.
Язык кода:javascript
копировать
git clone https://github.com/rytilahti/python-miio

Давайте возьмем интеллектуальную розетку Xiaomi в качестве примера для получения токена устройства. Вход в файл Discover.py в каталоге python-miio/miio предназначен главным образом для получения токена устройства. Чтобы интуитивно извлечь основной код реализации сокета, напишите следующий скрипт miio_test.py в каталоге python-miio/miio (отправьте фиксированную строку на порт 54321 IP-адреса устройства, а возвращаемым значением будет токен)

Язык кода:javascript
копировать
#-*-coding:utf8-*-
import codecs
import socket
from protocol import Message

helobytes = bytes.fromhex('21310020ffffffffffffffffffffffffffffffffffffffffffffffffffffffff')
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.sendto(helobytes, ('192.168.42.17', 54321))#IP сокета, порт 54321
data, addr = s.recvfrom(1024)
m = Message.parse(data)
tok = codecs.encode(m.checksum, 'hex')
print(‘token:’,tok)
  • Запустите Python3.5 miio_test.py, получить токен сокета ПросоWi-Fi
  • Выполните сценарий управления и введите параметры IP и токена сокета, чтобы увидеть текущий статус сокета. Добавьте включение/выключение на основе этих двух параметров для управления устройством.

Другие продукты, поддерживающие этот метод получения токенов, включают очистители воздуха и воды Xiaomi, подметальные роботы, удлинители с умными розетками и т. д. Подробный список см. на https://github.com/rytilahti/python-miio.

Получите токен прямо из приложения

Использовать вышеупомянутый метод обнаружения miIO относительно удобно, но на данный момент его поддерживают лишь некоторые устройства Xiaomi. Далее есть способ получить токен прямо из приложения. На примере шлюза Xiaomi Lumi сначала загрузите приложение Mijia, настройте шлюз Lumi для подключения к сети и щелкните устройство шлюза. Следующие шаги показаны ниже. Окончательный пароль — это токен шлюза.

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

БД получает токен

 Шаг 1. Получите root-права для телефона Android.  Шаг 2, установите приложение Mijia и войдите в свою учетную запись.  Шаг 3, введите /data/data/com.xiaomi.smarthome/databases/  Шаг 4. Скопируйте файл miio2.db и загрузите его на свой компьютер.  Шаг 5. Зайдите на сайт (http://miio2.yinhh.com/), загрузите miio2.db, нажмите «Отправить», и вы получите токен. Специального теста получения токенов таким способом не существует. Вы можете обратиться по этой ссылке (https://homekit.loli.ren/docs/show/12).

Платформа умного дома с открытым исходным кодом Установка и развертывание HomeAssistant

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

Главная Ассистент Введение

HomeAssistant — это платформа «умного дома» с открытым исходным кодом, которая может идентифицировать и напрямую подключать почти тысячу внешних устройств. Существуют различные коммерческие интеллектуальные продукты (например, продукты серии Xiaomi, серии Smart Light Philips, колонки Amazon, Apple Siri, Google Assistant, продукты BroadLink, автомобили Tesla и т. д.), а также различная информация в реальном времени в Интернете (акции, курсы валют, транспорт, погода и т. д.), существует различное программное обеспечение с открытым исходным кодом или открытое интеллектуальное программное обеспечение (распознавание лиц, распознавание номерных знаков, распознавание текста, преобразование текста в речь, преобразование голоса в текст и т. д.), а также различные связи механизмы (SMS, электронная почта и т. д.)

Установите и разверните HomeAssistant

  • Установить HomeAssistant
Язык кода:javascript
копировать
pip3 install HomeAssistant
  • Запустить Домашний Ассистент
Язык кода:javascript
копировать
hass

При первом запуске HomeAssistant установка связанных зависимостей займет около 10 минут. Доступ к порту 8123 Raspberry Pi через браузер. Если вы увидите следующую страницу, установка прошла успешно.

Настройте устройство Xiaomi на HomeAssistant

Войдите в каталог .HomeAssistant, отредактируйте файл Configuration.yaml и добавьте параметры конфигурации шлюза Xiaomi и сокета Wi-Fi. Токен — это строка, которую вы получили выше:

Язык кода:javascript
копировать
switch:                                     Параметры конфигурации #ПросоSocket
  - platform: xiaomi_miio
    name: Xiaomi Mi Smart Power Strip #Имя устройства
    host: 192.168.42.17                  #IP-адрес устройства
token: YOUR_TOKEN                    #ключ устройства
xiaomi_aqara:                             Параметры конфигурации #ПросоGateway
  gateways:
    - mac: DEVICE_MAC                     #devicemac
      key: YOUR_TOKEN                     #ключ устройства

После изменения файла конфигурации перезапустите Hass. Снова посетите домашнюю страницу HomeAssistant, чтобы увидеть недавно добавленный удлинитель Xiaomi Mi Smart Power Strip (поле имени в файле конфигурации) и устройство GatewayLight. Это подтверждает, что настройка завершена. Нажмите соответствующую кнопку управления. управлять устройством.

Подключенные устройства HomeAssistant

HomeAssistant поддерживает тысячи устройств,Вот лишь несколько примеров,Например, поддержка управления устройствами Просо.,Устройство BroadLink,Устройство MQTT собственной разработки. Некоторые интеллектуальные элементы управления голосовым вводом также могут поддерживаться через плагины.,Например, после установки HAbridge вы можете использовать колонки Amazon echo, колонки JD и Tmall Genie для управления устройствами, поддерживаемыми HomeAssistant.,Установка HomeBridge и Homekit позволяет Siri на iOS управлять устройством. Я не буду перечислять их все здесь.,Подробную информацию о поддержке см.Список официального сайта

Подвести итог

Судя по опыту устройств умного дома, таких как Xiaomi, JD.com и Bolian, умные не вызывают нареканий. Во-первых, хотя можно сгенерировать несколько сцен, большинство из них проигрываются самостоятельно, а связь между разными производителями невозможна, во-вторых, сцены немного одиночные, если пользователь хочет каждый раз перед выходом напоминать о погоде; вне, если сегодня напоминание о тумане/дождливом дне. Подобные сценарии невозможно реализовать, если пользователь носит маску/дождевик. Потому что не хватает интерфейсов для связи с интернет-информацией, а умные колонки большинства производителей взаимодействуют с другими устройствами только посредством голосового управления. Возможно, принимая во внимание индивидуальные потребности пользователей, существуют платформы умного дома, такие как HomeAssistant, которые объединяют различные ресурсы вместе, делая дом на шаг ближе к интеллекту. Конечно, судя по нынешнему рынку умного дома, маловероятно, что один производитель умных устройств позволит всем пользователям использовать только свои собственные устройства, поэтому предоставление пользователям некоторой «свободы» контроля не должно быть плохим выбором для производителей.

Издатель: Full stack программист и руководитель стека. Пожалуйста, укажите источник для перепечатки: https://javaforall.cn/129599.html Исходная ссылка: https://javaforall.cn.

boy illustration
Неразрушающее увеличение изображений одним щелчком мыши, чтобы сделать их более четкими артефактами искусственного интеллекта, включая руководства по установке и использованию.
boy illustration
Копикодер: этот инструмент отлично работает с Cursor, Bolt и V0! Предоставьте более качественные подсказки для разработки интерфейса (создание навигационного веб-сайта с использованием искусственного интеллекта).
boy illustration
Новый бесплатный RooCline превосходит Cline v3.1? ! Быстрее, умнее и лучше вилка Cline! (Независимое программирование AI, порог 0)
boy illustration
Разработав более 10 проектов с помощью Cursor, я собрал 10 примеров и 60 подсказок.
boy illustration
Я потратил 72 часа на изучение курсорных агентов, и вот неоспоримые факты, которыми я должен поделиться!
boy illustration
Идеальная интеграция Cursor и DeepSeek API
boy illustration
DeepSeek V3 снижает затраты на обучение больших моделей
boy illustration
Артефакт, увеличивающий количество очков: на основе улучшения характеристик препятствия малым целям Yolov8 (SEAM, MultiSEAM).
boy illustration
DeepSeek V3 раскручивался уже три дня. Сегодня я попробовал самопровозглашенную модель «ChatGPT».
boy illustration
Open Devin — инженер-программист искусственного интеллекта с открытым исходным кодом, который меньше программирует и больше создает.
boy illustration
Эксклюзивное оригинальное улучшение YOLOv8: собственная разработка SPPF | SPPF сочетается с воспринимаемой большой сверткой ядра UniRepLK, а свертка с большим ядром + без расширения улучшает восприимчивое поле
boy illustration
Популярное и подробное объяснение DeepSeek-V3: от его появления до преимуществ и сравнения с GPT-4o.
boy illustration
9 основных словесных инструкций по доработке академических работ с помощью ChatGPT, эффективных и практичных, которые стоит собрать
boy illustration
Вызовите deepseek в vscode для реализации программирования с помощью искусственного интеллекта.
boy illustration
Познакомьтесь с принципами сверточных нейронных сетей (CNN) в одной статье (суперподробно)
boy illustration
50,3 тыс. звезд! Immich: автономное решение для резервного копирования фотографий и видео, которое экономит деньги и избавляет от беспокойства.
boy illustration
Cloud Native|Практика: установка Dashbaord для K8s, графика неплохая
boy illustration
Краткий обзор статьи — использование синтетических данных при обучении больших моделей и оптимизации производительности
boy illustration
MiniPerplx: новая поисковая система искусственного интеллекта с открытым исходным кодом, спонсируемая xAI и Vercel.
boy illustration
Конструкция сервиса Synology Drive сочетает проникновение в интрасеть и синхронизацию папок заметок Obsidian в облаке.
boy illustration
Центр конфигурации————Накос
boy illustration
Начинаем с нуля при разработке в облаке Copilot: начать разработку с минимальным использованием кода стало проще
boy illustration
[Серия Docker] Docker создает мультиплатформенные образы: практика архитектуры Arm64
boy illustration
Обновление новых возможностей coze | Я использовал coze для создания апплета помощника по исправлению домашних заданий по математике
boy illustration
Советы по развертыванию Nginx: практическое создание статических веб-сайтов на облачных серверах
boy illustration
Feiniu fnos использует Docker для развертывания личного блокнота Notepad
boy illustration
Сверточная нейронная сеть VGG реализует классификацию изображений Cifar10 — практический опыт Pytorch
boy illustration
Начало работы с EdgeonePages — новым недорогим решением для хостинга веб-сайтов
boy illustration
[Зона легкого облачного игрового сервера] Управление игровыми архивами
boy illustration
Развертывание SpringCloud-проекта на базе Docker и Docker-Compose