Поразбирался на примере лампочки Philips с привязыванием к wifi и Mihome.
В целом алгоритм поиска и добавления нового wifi-устройства в Mihome выглядит так:
1. Включаем новое устройство в сеть. Оно создает свою точку доступа.
2. Приложение Mihome производит поиск новых wifi-сеток, и если находит, то предлагает добавить устройство.
3. При добавлении телефон подключается к точке доступа устройства. Mihome спрашивает имя целевой wifi-сети и пароль от нее.
4. Далее эти данные отправляются на устройство по протоколу miIO.
5. Устройство перезагружается и цепляется к целевой wifi-сетке. Телефон также переключается обратно на основную точку доступа.
6. Mihome и устройство обмениваются пакетами по протоколу miIO. Профит.
Данную процедуру можно выполнить и без Mihome с помощью метода miIO.config_router, который принимает следующие параметры:
ssid - имя wifi-сети
passwd - пароль
uid - id профиля в Mihome, к нему и будет привязан новое устройство.
Если не указывать
uid, то устройство только подключится к точке доступа и не будет добавлено в Mihome, но им можно будет полноценно управлять. Т.о. можно вообще отказаться от приложения Mihome, если нет необходимости обновлять прошивки.
uid можно узнать в Mihome в свойствах профиля на вкладке Personal info.
Пример команды в консоли:
Код: Выделить всё
php miio-cli.php --ip 192.168.4.1 --debug --sendcmd {"id":1,"method":"miIO.config_router","params":{"ssid":"wifipointname","passwd":"wifipassword","uid":1549521xxx}}
Важно! Любое wifi-устройство в заводском состоянии шлет в ответах свой токен. Поэтому будет логично прежде, чем привязывать устройство к Mihome, узнать и записать этот токен.