Агуулгын хүснэгт:

XiaoMi вакуум + Амазоны товчлуур = Зураас цэвэрлэх: 5 алхам (зурагтай)
XiaoMi вакуум + Амазоны товчлуур = Зураас цэвэрлэх: 5 алхам (зурагтай)

Видео: XiaoMi вакуум + Амазоны товчлуур = Зураас цэвэрлэх: 5 алхам (зурагтай)

Видео: XiaoMi вакуум + Амазоны товчлуур = Зураас цэвэрлэх: 5 алхам (зурагтай)
Видео: ASPHALT 9 LEGENDS CRAZY GIRL DRIVER 2024, Арваннэгдүгээр
Anonim
XiaoMi вакуум + Амазоны товчлуур = Зураас цэвэрлэх
XiaoMi вакуум + Амазоны товчлуур = Зураас цэвэрлэх

Энэхүү заавар нь Amazon Dash товчлуурыг XiaoMi вакуумтай хэрхэн удирдах талаар тайлбарлах болно.

Надад 1 доллар байсан цагаасаа эхлэн олон Amazon товчлуурууд байсан бөгөөд би тэдгээрийг огт ашиглаагүй. Гэхдээ шинэ робот вакуум хүлээн авахдаа эдгээр товчлуурыг вакуум удирдах хэрэгсэл болгон ашиглах нь маш тохиромжтой гэж би шийдсэн.

Ziploc товчлуурыг дарахад унтлагын өрөөг тоос соруулна.

Glad товчлуурыг дарвал зочны өрөөг тоос соруулна.

Фижи дээр дарна уу.. танд энэ санаа байна.

Энэ төсөл нь интернетээс олон тооны хакеруудыг нэгтгэсэн болно. Олон хүмүүсийн хийсэн ажлыг би үнэхээр үнэлдэг бөгөөд тэдний хийсэн судалгаанд үндэслэн өөрийн бага зэргийн үзэл бодлоо хуваалцах ёстой гэж боддог.

Анхааруулга: Доорх бүх алхамыг та өөрөө хариуцах болно! Хэрэв та эдгээр алхмуудыг анхааралтай дагаж мөрдвөл ямар нэгэн зүйлийг гэмтээх магадлал маш бага байх болно. Гэхдээ ийм зүйл болохгүй! Тэгээд би үүнд хариуцлага хүлээхгүй. BTW -ийн бүх алхамыг буцаах боломжтой тул баталгаат хугацааг зөрчихгүй байж магадгүй юм. Гэхдээ мэдээж - YMMV

Үндсэн зарчим бол бид чиглүүлэгч дээрх зураасны товчлуурыг дарж, Amazon -оос бараа худалдаж авахын оронд webhook -ийг Вакуум руу илгээх явдал юм.

Танд хэрэгтэй зүйл:

  • DHCP -ийг хянаж, скриптүүдийг ажиллуулж, get | бичлэгийн хүсэлтийг биелүүлэх боломжтой тусгай програм хангамж бүхий чиглүүлэгч. Mikrotik, DD-WRT, OpenWRT, Tomato гэх мэт.
  • XiaoMi вакуум. v1 эсвэл v2
  • Amazon Dash товчлуурууд

Ялангуяа миний ашиглаж байсан зүйл:

  • Микротик
  • XiaoMi v2 вакуум Roborock S50
  • Amazon Dash товчлууруудын багц

Энд процедур байна

  1. Бид вакуумыг үндэслэнэ
  2. Шаардлагатай багцуудыг root дор вакуум дээр суулгаж тохируулна уу
  3. Amazon Dash товчлуурыг тохируулах
  4. Товчлуурын хүсэлтийг барьж, вакуумыг хянахын тулд чиглүүлэгчийг тохируулна уу

NB: Үнэндээ үүнийг хянахын тулд вакуумаа үндсээр нь хийх шаардлагагүй. Хэрэв та өөрийн хэл дээр (эсвэл хаана ч хамаагүй) python эсвэл php ажиллуулж чадах өөр сервертэй бол та тэдэнд вэб хуукуудаа чиглүүлэх боломжтой. Гэхдээ би тэгдэггүй. Би үүнийг вакуум дээр эмх цэгцтэй, авсаархан байлгахыг хүссэн. Тиймээс, хэрэв танд миний хандлага таалагдахгүй байгаа бол энэ уншаад өөрийнхөө дунд эрийн серверийг хэрхэн тохируулахаа олж чадна гэж бодож байна. 2 -р цэг рүү шууд очно уу.

За энд явцгаая…

Алхам 1: Token болон Root Vacuum авах

Token болон Root Vacuum авах
Token болон Root Vacuum авах
Token болон Root Vacuum авах
Token болон Root Vacuum авах
Token болон Root Vacuum авах
Token болон Root Vacuum авах
Token болон Root Vacuum авах
Token болон Root Vacuum авах

Бүх програм хангамж, програм хангамж болон rooting хийх зааврыг дараах хаягаар авсан болно: https://4pda.ru/forum/index.php? Showtopic = 881982

Хэрэв танд Windows -аас өөр үйлдлийн системтэй, Андройдоос өөр гар утас байгаа бол (та nox -тэй виртуал ашиглах боломжтой) дээрх линкийг дагана уу (Google Translate -ийг ашиглана уу), зааврыг уншина уу.

Үндэслэхийн тулд бид таны вакуумаас ip хаяг болон жетон авах шаардлагатай.

7z root -г задлах.

Андройд дээрээ Vevs -ээс Mihome -ийг суулгаарай. Та үүнийг архиваас ашиглаж болно, эсвэл хэрэв энэ заавар он сар өдөртэй бол хамгийн сүүлийн хувилбарыг түүний вэбсайтаас (https://www.kapiba.ru/2017/11/mi-home.html) эсвэл түүний Google Драйваас (https://drive.google.com/drive/folders/1IyjvIWiGaeD7iLWWtBlb6jSEHTLg9XGj)

MiHome руу нэвтэрнэ үү. Та China Mainland -ийг дансандаа суулгаж, түүнд Вакуум нэмэх ёстой).

Вакуум дүрсний тохиргоо дээр дарна уу (баруун дээд талд гурван цэг) Ерөнхий тохиргоо Сүлжээний мэдээлэл

Win-mirobo/win-mirobo.ini дээр ip хаяг болон жетоноо бөглөнө үү

Цонхнууд дахь галт ханыг идэвхгүй болгох. Win-mirobo.bat-ийг ажиллуулж, програм хангамжийг асаана уу.

!!!!!!!!! V1 нь v1 вакуумд зориулагдсан бол V2 нь v2 вакуумд зориулагдсан болно (Roborock S50) !!!!!!! Хэрэв та буруу FW анивчсан бол 4pda линк рүү ороод (энэ алхамд эхлээд) хэрхэн яаж сэргээх талаар уншина уу.

Arter Vacuum -ийг дахин ачаална - та вакуумаа амжилттай суулгасан бөгөөд одоо танд ssh -ээр дамжуулан хандах боломжтой боллоо!

Цэвэрлэгч/цэвэрлэгчтэй хамт SSH (шаваасаар). Passwd ашиглан нууц үгээ солино уу

Алхам 2: Вакуум дээр үндэс дор шаардлагатай багцуудыг суулгаж тохируулна уу

Байшин

WebVook -ийн оронд MiVacuum нь XiaoMi IoT төхөөрөмж бүрийн нэгэн адил miio протоколыг ашигладаг. Тиймээс бид webhooks -ийг ойлгохын тулд үүнийг сурах ёстой. Бид вэб хуук барьж, түүнийг miio протокол руу төхөөрөмж рүү орчуулах чадвартай дунд зэргийн хүн хэрэгтэй байна. Python номын сан байдаг (https://github.com/rytilahti/python-miio) гэхдээ вакуум дээр Python 3.5+ дээр хангалттай зай байхгүй тул бид үүнийг вакуум дээр ашиглах боломжгүй.

Гэхдээ аз болоход харьцангуй маш хөнгөн php-miio номын сан (https://github.com/skysilver-lab/php-miio) байдаг бөгөөд үүнийг бид ашиглах болно (энэ нь дээрх win-mirobo дээр бас хэрэглэгддэг)). Webhook -ийг барьж буй хүн бол ирж буй webhook дээр php скриптийг ажиллуулдаг webhook демон (https://github.com/adnanh/webhook) юм.

SSH таны вакуумд (шаваасаар):

#Үндэс дор хийх. Тийм ээ, энэ нь аюулгүй биш гэдгийг би мэднэ..whatevs.sudo su #Энд бид шаардлагатай бүх зүйлийг apt-get install -y wget php5-cli nano #Бусад бүх зүйл /opt cd /opt болно.

#Php-miio татаж авах

#Github дээрх хамгийн сүүлийн үеийн мэдээллийг үзээрэй. Хамгийн сүүлийн үеийн wget-ийн дагуу доорх мөрүүдийг засна уу https://github.com/skysilver-lab/php-miio/archive/v.0.2.6.tar.gz tar -xzvf v.0.2.6.tar.gz mv php- miio-v.0.2.6 php-miio rm -f v.0.2.6.tar.gz

#Webhooks демон татаж авах

#Github дээрх хамгийн сүүлийн үеийн мэдээллийг үзээрэй. Хамгийн сүүлийн үеийн wget https://github.com/adnanh/webhook/releases/download/2.6.8/webhook-linux-arm.tar.gz tar -xzvf webhook-linux-arm.tar.gz mv дагуу доорх зөв шугамыг оруулна уу. webhook-linux-arm webhook rm -f webhook-linux-arm.tar.gz

#Webhook -ийн тохиргоог үүсгэх

нано /opt/webhook/hooks.json #hooks.json агуулгыг энд оруулна уу. Шаваас дээр хулганы баруун товчийг дарна уу. #Ctr+X Y -ийг хадгална уу.

#Php-miio руу залгах скрипт үүсгээрэй

nano /opt/webhook/mirobo.sh #Mirobo.sh контентыг энд оруулна уу. Шаваас дээр хулганы баруун товчийг дарна уу. # Ctr +X Save Y. # Гүйцэтгэх chmod +x /opt/webhook/mirobo.sh болгох

#Автоматаар эхлүүлэх скрипт үүсгэж, тохиргоог шинэчилнэ үү

echo "/opt/webhook/webhook -hooks /opt/webhook/hooks.json" >> /etc/init.d/webhook.sh chmod ugo+x /etc/init.d/webhook.sh update -rc.d webhook.sh анхдагч утга

#Системийг дахин ачаална уу

дахин ачаална уу

Дахин ачаалсны дараа хөтөч дээр өөрийн тохиргоог шалгана уу.

192.168.your.ip: 9000/hooks/mirobo? method = find_me

арга - тушаал

параметрүүд - параметрүүд

Эндээс олж болох бүх арга (команд) ба параметрүүдийг:

github.com/marcelrv/XiaomiRobotVacuumProtocol

Дэгээ.json -ийн агуулга

Энд байгаа токенээ вакуумаас авсан токен болгон өөрчил.

Дотоод сүлжээнийхээ IP-цагаан жагсаалтыг зөв тохируулах эсвэл хэрэв та дэгээгээ өөр газраас ажиллуулж байвал бүрэн устгах боломжтой (аюултай).

[{"id": "mirobo", "execute-command": "/opt/webhook/mirobo.sh", "command-working-directory": "/opt/webhook", "response-message": "Гүйцэтгэж байна mirobo скрипт "," include-command-output-in-response ": false," pass-environment-to-command ": [{" source ":" string "," envname ":" token "," name ": "your-token-here"}], "command-to-pass": [{"source": "url", "name": "method"}, {"source": "url", "name ":" params "}]," trigger-rule ": {" match ": {" type ":" ip-whitelist "," ip-range ":" 192.168.1.0/24 "}}}]

mirobo.sh файлын агуулга. Зүгээр л хуулж тавь. Зөвхөн хоёр мөр байна (3 биш).

#!/bin/bashphp /opt/php-miio/miio-cli.php --ip '127.0.0.1' --bindip '127.0.0.1' --token $ token --sendcmd '{"id":' $ RANDOM ', "method": "' $ 1 '", "params": [' $ 2 ']}'

Алхам 3: Amazon Dash товчлууруудыг тохируулна уу

Amazon програмаа нээнэ үү. Dash төхөөрөмжүүд рүү очно уу. Шинэ зураасны товчлуурыг ердийнхөөрөө нэмнэ үү. Бүтээгдэхүүнээ сонгох сурталчилгааны үеэр ҮГҮЙ. Аппыг хаах. Та дууссан.

Алхам 4: MiVacuum -ийн товчлуурын хүсэлтийг хянах, хянах чиглүүлэгчийг тохируулна уу

MiVacuum -ийн товчлуурын хүсэлтийг барьж, хянахын тулд чиглүүлэгчийг тохируулна уу
MiVacuum -ийн товчлуурын хүсэлтийг барьж, хянахын тулд чиглүүлэгчийг тохируулна уу
MiVacuum -ийн товчлуурын хүсэлтийг хянах, хянах чиглүүлэгчийг тохируулах
MiVacuum -ийн товчлуурын хүсэлтийг хянах, хянах чиглүүлэгчийг тохируулах
MiVacuum -ийн товчлуурын хүсэлтийг барьж, хянахын тулд чиглүүлэгчийг тохируулна уу
MiVacuum -ийн товчлуурын хүсэлтийг барьж, хянахын тулд чиглүүлэгчийг тохируулна уу

Энэ нь дараах байдлаар ажилладаг.

Товчлуур дарагдсан үед энэ нь таны сүлжээнд холбогддог бөгөөд dhcp серверээс хаяг өгөхийг хүсдэг. Бид энэ хүсэлтийг барьж, вэб хуухайг вакуумд хийх ёстой. Аюулгүй байдлын нэмэлт арга хэмжээ болгон бид Амазонтой холболтыг хаах болно, ингэснээр Амазон бид товчлуурыг дарсан гэдгээ мэдэхгүй байх болно, програм хангамжийн шинэчлэлт эсвэл өөр зүйлийг дарах чадваргүй болно.

Ихэнхдээ би WinBox ашигладаг, гэхдээ заримдаа терминал нь илүү хялбар байдаг.

#Блоклох хаягийн жагсаалттай галт ханыг буулгах дүрмийг үүсгэнэ үү

/ip галт ханын шүүлтүүрийг нэмж хэлхээг оруулна уу

Дараа нь бид товчлуур бүрт dhcp түрээсийн дүрмийг бий болгох ёстой. Winbox дээр хийхэд маш хялбар.

DHCP сервер - Түрээс

Бид товчлуур дээр дарахад шинэ түрээс гарч ирнэ. Бид үүнийг статик гэж дарж, хаягийн жагсаалтыг 'blockdash' болгож, түрээсийн хугацааг 5 сек болгож тохируулна (ингэснээр түрээсийн хугацаа дараагийн даралтаас өмнө дуусна), дараа нь mac хаягийг хуулж аваарай.

#Хэрэв та winbox -т түрээс нэмж оруулсан бол үүнийг алгасаад л энэ тушаалыг ашиглах боломжтой.

/ip dhcp-server lease add address-list = blockdash mac-address = XXXXXXXXXX address = 192.168.x.x түрээсийн хугацаа = 5s

Одоо бид скрипт түрээслэхийг зааж өгөх ёстой.

DHCP табыг нээж 'myLeaseScript' -ийг dhcp сервер дээрээ түрээсийн скрипт болгон нэмнэ үү.

Одоо System - Script -ийг нээж, унших, шалгах зөвшөөрлүүдтэй 'myLeaseScript' -г нэмнэ үү.

MyLeaseScript -ийн агуулга:

#Script -ийг түрээслэх (1) болон хувилбар дээр (0) хоёр удаа дууддаг: if ($ leaseBound = 1) do = { /log info ("myLeaseScript -ийг ажиллуулж байна. Хэн нэгэн Даш товчийг дарсан уу?")

Таны залгах бүх товчлуурууд болон url -ийн массив

: орон нутгийн товчлуурууд {"XX: XX: XX: XX: XX: XX" = "https://192.168.your.ip: 9000/hooks/mirobo? method = app_zoned_clean¶ms = [19300, 21000, 21200, 23800, 1] "; "YY: YY: YY: YY: YY: YY" = "https://192.168.your.ip: 9000/hooks/mirobo? Method = app_zoned_clean¶ms = [24000, 21500, 26100, 22900, 1]"; "ZZ: ZZ: ZZ: ZZ: ZZ: ZZ" = "https://192.168.your.ip: 9000/hooks/mirobo? Method = app_zoned_clean¶ms = [21400, 24200, 22700, 26200, 1], [24000, 21500, 26100, 22900, 1] "; "AA: AA: AA: AA: AA: AA" = "https://whateveryouwant.com:9000/other?argument=and_values"; };

#Дарагдсан товчлуурыг шалгаад url -г дарна уу

: foreach mac, url in = $ button do = {: if ($ mac = $ leaseActMAC) do = { /log info ("Pressed". $ mac. "button") /tool fethe keep-result = no mode = https http-method = нийтлэлийн URL = $ url}}}

Одоо та Amazon Dash Button дарж цэвэрлэгээгээ автоматжууллаа. Хөгжилтэй байгаарай

Анхаарна уу: webhooks -ийг шифрлээгүй илгээх нь маш аюултай. Webhook нь шифрлэлтийг ашиглаж болох боловч би үүнийг ажиллуулахыг хичээсэн боловч хэзээ ч ийм зүйл тохиолдоогүй. Би үүнийг зөвхөн дотоод сүлжээндээ ашигладаг болохоор би нэг их санаа зовдоггүй. Гэхдээ хэрэв та үүнийг интернэтээр дамжуулан Google Assistant -ийг ашиглан IFTTT -тэй холбогдохыг хүсвэл энэ баримтад анхаарлаа хандуулаарай. Миний хувьд крипто валютын бүтэлгүйтлийн шалтгаан юу байсныг би сайн мэдэхгүй байна. Letsencrypt-ээс өгсөн миний гарын үсэг зурсан гэрчилгээ. Олон тооны NAT -уудтай хэтэрхий төвөгтэй сүлжээ. Гэхдээ надад webhooks нь гэрчилгээтэй маш муу ажилладаг, үнэндээ маш муу баримтжуулсан байдаг. IFTTT нь ipv6 -тай ажилладаггүй юм шиг байна. Би чадах бүхнээ хийсэн боловч чадаагүй. Та илүү азтай байж магадгүй юм. Бичлэг хийхээ бүү мартаарай.

upd: Надад үүнийг шифрлэхгүйгээр хэрхэн илүү аюулгүй болгох талаар санаа байна. Та гүйцэтгэхийг хүсч буй үйлдэл бүрийн хувьд хэд хэдэн скрипт үүсгэдэг. Та mirobo.sh -ийг webhook -д илгээсэн параметрийн скрипт рүү залгахын тулд өөрчилнө үү. цэвэрхэн унтлагын өрөө. Ингээд л боллоо. Дэгээ ашигладаг ихэнх хүмүүс унтлагын өрөөгөө дахин дахин цэвэрлэж байх болно …)) Үүнийг хийсний дараа би зааварчилгаа өгөх болно

Алхам 5: Газрын зургаа хэрхэн яаж зурах вэ

Газрын зургаа хэрхэн яаж зурах вэ
Газрын зургаа хэрхэн яаж зурах вэ

MiHome аппликейшндээ бүтэн газрын зургаа бэлэн болгосны дараа вакуумуудаа 'app_goto' командыг ашиглан тодорхой байршил руу илгээнэ үү.

Илгээсэн байрлал, суурь бүхий бүрэн газрын зургийн дэлгэцийн агшинг хийх. Вакуум дахин ачаалсны дараах суурь цэг бол [25500, 25500] Энэ бол цэнэглэх баазын байрлал биш, гэхдээ хэрэв та вакуум цэнэглэх суурин дээр дахин асаах юм бол цэнэглэх суурийн байрлал 25500, 25500 байх болно. үндсэн байршил, та авсан дэлгэцийн агшинг ашиглан CAD програмын аль нэг дээр газрын зураг зурж болно. Би үнэгүй QCAD ашигладаг байсан.

Зургийг сүлжээнд холбосны дараа би өрөөний дээгүүр зураас ашиглан бүсийн эхлэл ба төгсгөлийн цэгийг хэмждэг.

Зөвлөмж болгож буй: