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

Амазоны самбарын товчлуур чимээгүй хаалганы хонх: 10 алхам (зурагтай)
Амазоны самбарын товчлуур чимээгүй хаалганы хонх: 10 алхам (зурагтай)

Видео: Амазоны самбарын товчлуур чимээгүй хаалганы хонх: 10 алхам (зурагтай)

Видео: Амазоны самбарын товчлуур чимээгүй хаалганы хонх: 10 алхам (зурагтай)
Видео: Лучшие ванны для улучшения вашего интерьера дома 2024, Долдугаар сарын
Anonim
Image
Image

Зочдыг хаалганы хонх дуугарахаас өмнө тасалдуулахын тулд цонх руу байнга хардаг уу? Нохой, нялх хүүхэд дуугарах бүртээ галзуурахаас залхаж байна уу? "Ухаалаг" шийдэлд маш их мөнгө зарцуулахыг хүсэхгүй байна уу?

Чимээгүй хаалганы хонх хийх нь 5 долларын үнэтэй Amazon Dash Button -ийг хакердахтай адил хялбар юм! Танд хэрэгтэй цорын ганц зүйл бол үргэлж гэртээ байдаг компьютер юм. Хэн нэгэн таны шинэ хаалганы хонхыг дарж, байшинг бүхэлд нь аз жаргалтай байлга. (Хэрэв та ухаалаг цагтай бол мэдэгдэл авах нь бүр ч сайхан юм!)

Энэ төслийн хувьд танд хэрэгтэй болно:

  • Амазоны зураасны товчлуур
  • Гэртээ суудаг компьютер (Raspberry Pi шиг)

Алхам 1: Хяналтын товчлуурыг тохируулах

Таны зураасны товчлуурыг тохируулж байна
Таны зураасны товчлуурыг тохируулж байна
Таны зураасны товчлуурыг тохируулж байна
Таны зураасны товчлуурыг тохируулж байна

Dash товчлуурыг хакердахад бэлэн болгох нь маш энгийн зүйл юм - та зөвхөн Amazon -ийн тохиргооны процессыг бүхэлд нь сонгохоос татгалзах хэрэгтэй.

Энэхүү тохиргоонд iOS болон Android дээр ашиглах боломжтой Amazon програм шаардлагатай. Аппликешн дотор Амазон руу нэвтэрсний дараа өөрийн акаунт -> зураасны товчлуур ба төхөөрөмжүүд -> шинэ төхөөрөмж тохируулах хэсэгт очно уу. "Зураасны товчлуур" -ыг сонгоод бүтээгдэхүүнийг сонгохыг хүсэх хүртэл зааврыг дагана уу.

Аппыг хаах. Тохиргоог цуцлахгүй байх; x дарж болохгүй - зүгээр л програмыг хаа. Хэрэв та санамсаргүйгээр бүтээгдэхүүн сонгосон эсвэл хуучин зураасны товчлуурыг дахин сольж байгаа бол төхөөрөмжийг Amazon програмаар устгаад эдгээр алхмуудыг дагана уу.

Хэрэв та товчныхоо гадаад төрхийг өөрчлөхийг хүсч байвал шошгон дээрх наалтыг хуулж авахад хялбар болно.

Алхам 2: Node JS -ийг төхөөрөмж дээрээ суулгаарай

Таны Dash товчлуурын тоног төхөөрөмжийн хаягийг олохын тулд (дараа нь ашиглах) бид Node JS -ийг ашиглах хэрэгтэй. Үүнийг ямар ч компьютер дээр суулгаж болно - Mac, Linux (Raspberry Pi) эсвэл Windows.

Бидний эцсийн төсөл бол Node скриптийг тасралтгүй ажиллуулж байгаа бидний товчлууртай ижил сүлжээнд холбогдсон компьютертэй байх явдал юм, тиймээс төхөөрөмжөө сонгохдоо үүнийг санаарай. Гэрийн ширээний компьютер эсвэл Raspberry Pi нь төгс төгөлдөр байх болно.

Би Pi 3 -ийг ашиглахаар сонгосон боловч WiFi гинжтэй Pi Zero бас ажиллах болно!

Node JS -ийг компьютер дээрээ суулгахын тулд зохих зааврыг дагана уу.

  • Raspberry Pi
  • Mac OS
  • Windows

Алекс Хортон бидний хийх гэж буй зүйлд зориулан node-dash-button гэсэн гайхалтай модулийг бичсэн. Бид үүнийг зангилааны багц менежер (npm) болон libpcap -ийн хамт суулгах хэрэгтэй. Эдгээр тушаалуудыг командын мөрөнд оруулна уу.

sudo apt-get npm суулгах

sudo apt-get install libpcap-dev npm node-dash-button суулгах

Алхам 3: Товчлуурын хаягийг олоорой

Товчлуурын хаягийг олоорой
Товчлуурын хаягийг олоорой
Товчлуурын хаягийг олоорой
Товчлуурын хаягийг олоорой

Бид таны зураасны товчлуурын хаягийг олох энгийн аргыг олсон.

Нэгдүгээрт, LED товчлуур дээрх товчлуурыг 5 секундын турш дарж, LED аажмаар цэнхэр өнгөөр ялгарч эхлэх хүртэл барина уу. Утсан дээрээ wifi тохиргоогоо нээгээд 'Amazon Configure Me' wifi -г олоорой. Үүнд холбогдсоны дараа вэб хөтөчөө нээгээд 'https://192.168.0.1' руу очно уу.

Бидний хайж буй хаяг бол MAC хаяг бөгөөд "ab: 64: be: 8b: ce: 82" шиг харагдах болно.

Алхам 4: Товчлуураа туршиж үзээрэй

Та товчлуур дарагдах бүрт мессеж хэвлэх энгийн скрипт бичиж зөв хаягаа олсон гэдгээ баталж чадна.

Node-dash-button лавлах дотор шинэ скрипт үүсгэнэ үү.

sudo nano button_test.js

Тэгээд дараахыг хуулж файл руу оруулна уу.

var dash_button = шаардлагатай ('node-dash-button'), dash = dash_button ('xx: xx: xx: xx: xx'), // ХАЯГТАЙ ОРЛОХ exec = шаардлагатай ('child_process'). exec; dash.on ('илэрсэн', function () {console.log ('Товчлуур дарагдсан!');});

Хоёр дахь мөрөнд байгаа x -г шинээр олсон товчлуурын хаягаар солино. Файлыг Ctl-x, y ашиглан хадгална уу.

Скриптийг эхлүүлээд товчлуураа дарна уу.

sudo зангилаа button_test.js

Та "Товчлуур дарагдсан!" хэвлэх. Одоо бид товчлуур дарж байгааг илрүүлж чадсан тул тэдгээр дээр суурилсан үйлдлүүдийг эхлүүлж чадна!

Алхам 5: Анхны улсын данс тохируулах

Анхны улсын данс тохируулах
Анхны улсын данс тохируулах
Анхны улсын данс тохируулах
Анхны улсын данс тохируулах

Одоо бид Dash товчлуурыг дарахад тушаалын мөрийн мессежийг өдөөж болох юм бол бид бусад бүх зүйлийг идэвхжүүлж чадна! Энэ тохиолдолд би мессеж бичих болно - бид имэйлээ шалгах хүртэл хаалган дээр байгаа хэн ч бай хүлээхийг бид хүсэхгүй байна.

Текст мэдэгдлийг идэвхжүүлэх хэд хэдэн арга байдаг - Twilio эсвэл PushBullet зэрэг үйлчилгээнүүд. Миний олж мэдсэн хамгийн хялбар аргуудын нэг бол Анхны төлөв юм. Энэ нь хамгийн бага нэмэлт кодчилол шаарддаг бөгөөд миний товчлуурыг дарсан үед хяналтын самбарыг харах боломжийг надад олгодог.

Https://iot.app.initialstate.com хаягаар орж шинэ данс үүсгэнэ үү.

Та NodeJS -ийн анхны төлөвийн SDK -ийг ширээний/зөөврийн компьютер дээрээ/Raspberry Pi дээр суулгах хэрэгтэй. Тушаал хүлээх мөрөнд (эхлээд Pi руу SSH оруулахаа бүү мартаарай) дараах тушаалыг ажиллуулна уу.

cd/home/pi/node_modules/node-dash-button

sudo npm анхны төлөвийг суулгана уу

Шууд дамжуулагчийг шалгахын тулд туршилтын файл үүсгэнэ үү.

нано урсгал_тест.js

Дараахыг хуулж буулгана уу (энд бас энд байна):

var IS = шаардлагатай ('анхны төлөв');

var bucket = IS.bucket ('NodeJS_SDK_Example', 'YOUR_ACCESS_KEY_GOES_HERE'); // Үйл явдлыг анхны төлөвт шилжүүлэх.push ('Демо төлөв', 'идэвхтэй'); setTimeout (function () {// Өөр нэг үйл явдлыг түлхэх bucket.push ('Демо төлөв', 'идэвхгүй');}, 1000);

Скриптийг Ctl-x, y ашиглан хадгална уу.

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

2 -р мөрөнд var bucket = IS.bucket (… -ээр эхэлсэн мөрийг харах болно. Энэ мөрүүд нь "NodeJS_SDK_Example" нэртэй шинэ өгөгдлийн савыг үүсгэдэг бөгөөд энэ нь таны данстай холбоотой байдаг. Энэ холболт нь ижил параметрийн хоёр дахь параметрийн улмаас тохиолддог. Таны анхны төлөвийн данс руу нэвтрэх түлхүүр нь урт үсэг, тоо юм. Хэрэв та вэб хөтөч дээрээ анхны төлөв рүүгээ орвол баруун дээд буланд байгаа хэрэглэгчийн нэрээ дараад "миний тохиргоо" хэсэгт очвол та олох болно. таны нэвтрэх түлхүүр тэнд байна.

Туршилтын скриптийг ажиллуулснаар бид таны анхны төлөвт өгөгдөл дамжуулах боломжтой болно. Дараахыг ажиллуулна уу.

зангилаа stream_test.js

Вэб хөтөч дээрээ анхны төлөв рүүгээ буцна уу. "NodeJS_SDK_Example" нэртэй шинэ өгөгдлийн сав таны бүртгэлийн тавиур дээр зүүн талд гарч ирэх ёстой байсан (та хуудсыг шинэчлэх шаардлагатай байж магадгүй). Туршилтын өгөгдлийг харахын тулд энэ хувин дээр дарна уу.

Одоо та товчлуурын даралтыг анхны төлөв рүү илгээхэд бэлэн боллоо!

Алхам 6: Эцсийн код

Эцсийн код
Эцсийн код

Бид Initial State Node SDK -г аль хэдийн суулгасан байгаа тул үүнийг кодондоо нэмэх л үлдлээ!

Бидний өмнө ашиглаж байсан button_test.js скриптийн өөрчлөгдсөн хувилбар энд байна.

var dash_button = шаардлагатай ('node-dash-button'), dash = dash_button ('xx: xx: xx: xx: xx'), // ХАЯГТАЙ ОРЛОХ exec = шаардлагатай ('child_process'). exec; var IS = шаардлагатай ('анхны төлөв'); var bucket = IS.bucket ('Хаалганы хонх', 'YOUR_ACCESS_KEY'); dash.on ('илэрсэн', function () {console.log ('Товчлуур дарагдсан!'); bucket.push ('Урд хаалга', 'Хэн нэгэн энд байна!');});

Энэ скриптийг шинэ файл руу хуулж оруулна уу (зангилааны товчлуурын лавлах дотор байсаар байна):

sudo нано хаалганы хонх.js

5, 6 -р мөрөнд бид анхны төлөв байдлын модулийг оруулж, хувингийнхаа параметрүүдийг өгдөг болохыг та анзаарах болно. Та өвөрмөц хандалтын түлхүүрээ 6 -р мөрөнд оруулах ёстой.

10 -р мөрөнд бид анхны төлөв рүү өгөгдөл илгээдэг. Энэ тохиолдолд би хувингаа "Хаалганы хонх" гэж нэрлээд "Хэн нэгэн энд байна!" миний урд хаалган дээр. Хэрэв танд хэд хэдэн Dash товчлуур байгаа бол та бүгдийг нь "Doorbell" хувин руу илгээж болох боловч байршлын дагуу нэрлэж болно (жишээ нь "Garage Door", "Унтлагын өрөө" гэх мэт).

Скриптийг Ctl-x, y ашиглан хадгална уу.

Скриптээ шалгахын тулд дараахыг ажиллуулна уу.

sudo node doorbell.js.

Та товчлуураа дарахдаа Анхны төлөв хуудас руугаа орж, хажуугийн мөрөнд "Хаалганы хонх" нэртэй шинэ хувин харах боломжтой байх ёстой. Одоо Trigger нэмж оруулъя!

Алхам 7: SMS өдөөгчийг тохируулах

SMS өдөөгчийг тохируулах
SMS өдөөгчийг тохируулах

"Триггерүүд" нь Анхны мужийн мэдэгдлийн хувилбар бөгөөд тэдгээрийг нэмж оруулахад маш хялбар байдаг. Хаалганы хонхны хувин доорх "Тохиргоо" дээр дараад "Triggers" таб дээр дарна уу.

Унтраах жагсаалтаас идэвхжүүлэхийг хүсч буй дохиогоо сонгож болно. Манай хувин ганцхан байдаг - "Урд хаалга", тиймээс үүнийг сонгоорой. Дараа нь "тааруулах" сонголтыг сонгоод товчлуур дарагдсан үед дамжуулж буй зурвасыг нэмээрэй - энэ тохиолдолд "Хэн нэгэн энд байна!"

Эцэст нь SMS мессеж хүлээн авахын тулд утасны дугаараа нэмнэ үү. Та энэ дугаарыг анх ашиглахдаа утсандаа илгээсэн баталгаажуулах кодыг оруулах шаардлагатай болно.

Утасныхаа хажууд байгаа "+" тэмдгийг дарна уу, эс бөгөөс гохыг үүсгэхгүй.

Триггерийн табын доод хэсэгт байгаа "Дууссан" дээр дарж триггерээ хадгална уу.

Одоо та текст дохио хүлээн авахад бэлэн боллоо! Товчлуураа дарна уу (doorbell.js скрипт ажиллаж байх үед). Та текстийг 8 секундын дотор авах ёстой.

Таны чимээгүй хаалганы хонх бэлэн боллоо! Хэрэв та скриптийг цахилгаан тасарсан үед дахин эхлүүлэхийг хүсч байвал үргэлжлүүлэн уншаарай. Би таны хувин дээр эможи нэмж, дохио өгөх талаар ярилцъя.

Алхам 8: Хяналтын самбараа хувийн болгох

Хяналтын самбараа хувийн болгож байна
Хяналтын самбараа хувийн болгож байна
Хяналтын самбараа хувийн болгож байна
Хяналтын самбараа хувийн болгож байна

Хэрэв та анхны төлөвийнхөө самбарыг гоё болгохыг хүсч байвал эможи нэмэх эсвэл нэрийг бүхэлд нь өөрчлөх нь маш энгийн зүйл юм.

Хавтангийн нэрийг өөрчлөхийн тулд хавтан дээр хулганы баруун товчийг дараад "хавтан засах" -г сонгоно уу. Гарч ирэх гарчгийн хайрцгийн дотор дурын эможигийн товчлолыг оруулах боломжтой. Тохируулах цонхны дээд хэсэгт байрлах "x" товчийг дарснаар таны өөрчлөлтүүд хадгалагдах болно.

Та үүнийг хувин нэрнийхээ доорх "Тохиргоо" дээр дараад нэрийн талбарыг засварлаж хувингийнхаа нэрээр хийж болно.

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

Алхам 9: Скриптийг ачаалахаас эхлүүлэх

Таны гэрийн компьютер эсвэл Pi дээр ажилладаг скрипт бол бидний чимээгүй хаалганы хонхны түлхүүр юм. Хэрэв ямар нэгэн зүйл цахилгаан тасарсан мэт тохиолдвол бид скриптийг дахин ажиллуулж байгаа эсэхийг шалгахыг хүсч байна.

Mac дээр бид crontab нэртэй үйлчилгээ болон нано текст засварлагчийг ашиглах болно.

env EDITOR = нано crontab -e

Файлын дотор нэмнэ үү:

@дахин ачаалах nohup sudo node /Users/UserName/node_modules/node-dash-button/doorbell.js &

"UserName" -г өөрийн нэрээр солихоо мартуузай. Хэрэв та өөрийн скриптийг өөр нэрээр нэрлэсэн эсвэл өөр лавлах санд оруулсан бол /Users/UserName/node_modules/node-dash-button/doorbell.js-ийг зөв замаар солино уу. Миний жишээн дээрх зам бол үндсэн хэрэглэгчийн лавлах бөгөөд дараа нь node_modules/node-dash-button сан юм. Та эдгээр зааврыг дагаж файлын замыг хялбархан хуулж болно.

Файлыг Ctl-x, y ашиглан хадгална уу. Та компьютерээ дахин асаах замаар ажиллах эсэхийг шалгаж болно.

Windows дээр зангилааны скриптийг дахин эхлүүлэхийн тулд энд байгаа зааврыг дагана уу. Скриптийн замыг бүхэлд нь зааж өгөхөө мартуузай.

Raspberry Pi/Linux машин дээр Pi дээр ачаалахаас эхлээд скрипт ажиллуулах нь маш энгийн зүйл юм. Бид crontab нэртэй үйлчилгээг ашиглах гэж байна.

sudo crontab -e

Дуртай текст засварлагчаа сонгоорой (надад нано таалагддаг) ба файлын доод хэсэгт (бүх сэтгэгдлүүдийн доор) нэмнэ үү.

@дахин ачаалах nohup sudo node /home/pi/node_modules/node-dash-button/doorbell.js &

Хэрэв та өөрийн скриптийг өөр нэрээр нэрлэсэн эсвэл өөр лавлах санд оруулсан бол /home/pi/node_modules/node-dash-button/doorbell.js-ийг зөв замаар солино уу. Миний жишээн дээрх зам бол үндсэн Pi лавлах бөгөөд дараа нь node_modules/node-dash-button гэсэн лавлах юм.

Файлыг хадгална уу! Үүнийг хүчин төгөлдөр болгохын тулд та дахин ачаалах хэрэгтэй, гэхдээ хэрэв та интернет холболт тасарсан бол дахин ачаалахыг хүсч байвал бид дараагийн алхамдаа crontab дээрээ өөр даалгавар өгөх болно.

Сүлжээний уналтыг зохицуулахын тулд би Pi -г сүлжээний холболтыг илрүүлэх, хэрэв байхгүй бол дахин ачаалах аргыг хэрэгжүүлэхээр шийдлээ.

Эхлээд бид WiFi -г шалгах скрипт үүсгэж дараа нь унтрах хэрэгтэй.

cd

sudo нано /usr/local/bin/checkwifi.sh

IP хаягийг чиглүүлэгчийнхээ IP хаягаар орлуулахаа мартуузай.

ping -c4 IP_ADDRESS> /dev /null

хэрэв [$? ! = 0] дараа нь sudo /sbin /shutdown -r now fi

Ping нь холболтыг шалгадаг. Хэрэв энэ нь тэг биш гарах кодоор буцаж ирвэл скрипт нь унтраах командыг илгээдэг. Хадгалж, скриптээс гарна уу. Одоо түүний зөвшөөрлүүд дараалсан эсэхийг шалгаарай.

sudo chmod 775 /usr/local/bin/checkwifi.sh

Манай doorbell.js скриптийн нэгэн адил бид энэ скриптийг crontab дээр нэмэх гэж байна.

sudo crontab -e

Газар

*/5 * * * */usr/bin/sudo -H /usr/local/bin/checkwifi.sh >>/dev/null 2> & 1

бидний өмнө нэмж оруулсан шугамын доор. Энэ нь манай checkwifi скриптийг 5 минут тутамд ажиллуулах болно. Одоо crontab -ээс гараад Pi -г дахин ачаална уу:

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

Бүх зүйл тохируулагдсан, ажиллах ёстой! Та мөн энэ хичээлийг дагаж Pi дээр ажиллаж байгаа процессуудыг хянах арга замыг тохируулж болно.

Алхам 10: Дүгнэлт

Дүгнэлт
Дүгнэлт

Амазоны хүргэлтийн залуус таныг сэрээхгүйн тулд танд одоо чимээгүй хаалганы хонх байна! Хэрэв танд ямар нэгэн асуулт байвал эсвэл өвөрмөц өөрчлөлт хийвэл надад мэдэгдээрэй.

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