Мазмұны:

Amazon Dash түймесі үнсіз есік қоңырауы: 10 қадам (суреттермен)
Amazon Dash түймесі үнсіз есік қоңырауы: 10 қадам (суреттермен)

Бейне: Amazon Dash түймесі үнсіз есік қоңырауы: 10 қадам (суреттермен)

Бейне: Amazon Dash түймесі үнсіз есік қоңырауы: 10 қадам (суреттермен)
Бейне: Түнге арналған әңгімелер. Жаңа жыл шынайы өмірде. Рождество туралы қорқынышты әңгімелер. 2024, Шілде
Anonim
Image
Image

Келушілер есік қоңырауын соғар алдында оларды ұстап қалу үшін үнемі терезеден қарап тұрасыз ба? Иттер мен нәресте кез келген уақытта жынды болудан шаршадыңыз ба? «Ақылды» шешімге көп ақша жұмсағыңыз келмей ме?

Есік үнсіз қоңырау соғу 5 долларлық Amazon Dash батырмасын бұзу сияқты оңай! Сізге қажет жалғыз нәрсе - бұл әрқашан үйде болатын компьютер, мысалы, сіз Raspberry Pi -де отырасыз. Кез келген адам сіздің жаңа қоңырауыңызды басып, бүкіл үйді қуантады. (Егер сізде ақылды сағат болса, хабарландыруларды алу одан да жақсы!)

Бұл жоба үшін сізге қажет:

  • Амазонка сызықшасы
  • Үйде отыратын компьютер (Raspberry Pi сияқты)

1 -қадам: Сызық түймесін орнату

Сызық түймесін орнату
Сызық түймесін орнату
Сызық түймесін орнату
Сызық түймесін орнату

Dash түймесін бұзуға дайындау өте қарапайым - сізге Amazon -ды орнатудың барлық процесін минуспен өнімді таңдаудан өту керек.

Бұл орнату үшін iOS және Android үшін қол жетімді Amazon қосымшасы қажет. Қолданбаның ішіндегі Amazon -ға кіргеннен кейін, өзіңіздің есептік жазбаңыз -> Dash түймелері мен құрылғылары -> жаңа құрылғыны орнатыңыз. Өнімді таңдау сұралмайынша, «Қашықша түймесін» таңдаңыз және нұсқауларды орындаңыз.

Қолданбаны жабыңыз. Орнатуды болдырмаңыз; x соқпаңыз - бағдарламаны жабыңыз. Егер сіз кездейсоқ өнімді таңдап алсаңыз немесе ескі Dash түймесінің орнын бассаңыз, құрылғыны Amazon қосымшасы арқылы алып тастап, осы қадамдарды қайталаңыз.

Егер сіз түйменің түрін өзгерткіңіз келсе, жапсырма жапсырмасын алып тастау оңай.

2 -қадам: NS Jode құрылғысына орнатыңыз

Dash түймесінің аппараттық мекенжайын табу (және кейіннен пайдалану) үшін бізге Node JS пайдалану қажет. Оны кез келген компьютерге орнатуға болады - Mac, Linux (Raspberry Pi) немесе Windows.

Біздің соңғы жобамыз түйіннің үзіліссіз сценарийін іске қосатын біздің түйменің желіге қосылған компьютерге байланысты, сондықтан құрылғыны таңдағанда осыны есте сақтаңыз. Үйдегі жұмыс үстелі немесе Raspberry Pi тамаша болар еді.

Мен Pi 3 пайдалануды таңдаймын, бірақ WiFi кілті бар Pi Zero жұмыс істейді!

Node JS жүйесін компьютерге орнату үшін сәйкес нұсқауларды орындаңыз:

  • Raspberry Pi
  • Mac OS
  • Windows

Алекс Хортон біз жасауға тырысып жатқан түйін-түйме-түйме деп аталатын фантастикалық модуль жазды. Біз оны түйін бумасының менеджерімен (npm) және libpcap бірге орнатуымыз керек. Бұл пәрмендерді пәрмен жолына енгізіңіз:

sudo apt-get npm орнатыңыз

sudo apt-get install libpcap-dev npm node-dash-button орнату

3 -қадам: Батырманың мекенжайын табыңыз

Түйменің мекенжайын табыңыз
Түйменің мекенжайын табыңыз
Түйменің мекенжайын табыңыз
Түйменің мекенжайын табыңыз

Біз сіздің түймедегі мекенжайыңызды табудың қарапайым әдісін таптық.

Алдымен, жарық диоды көк түспен ақырын түсе бастағанша, бақылау түймесіндегі түймені шамамен 5 секунд ұстап тұрыңыз. Телефонда wifi параметрлерін ашып, 'Amazon Configure Me' Wi -Fi тармағын табыңыз. Бұған қосылғаннан кейін веб -шолғышты ашып, 'https://192.168.0.1' өтіңіз.

Біз іздейтін мекен -жай MAC -адрес және «ab: 64: be: 8b: ce: 82» сияқты болады.

4 -қадам: түймені тексеру

Түйме басылған сайын хабарды басып шығару үшін қарапайым сценарий жазу арқылы сіз дұрыс мекенжайды тапқаныңызды растай аласыз.

Dode-dash-button каталогының ішінде жаңа сценарий жасаңыз.

sudo nano button_test.js

Және келесі файлға көшіріңіз:

var dash_button = талап етіңіз ('node-dash-button'), dash = dash_button ('xx: xx: xx: xx: xx: xx'), // АДРЕСІҢІЗМЕН ОРЫНДАҢЫЗ exec = қажет ('child_process'). exec; dash.on ('анықталды', function () {console.log ('Түйме басылды!');});

Екінші жолдағы x таңбаларын жаңадан табылған түйме мекенжайымен ауыстырыңыз. Файлды Ctl-x, y көмегімен сақтаңыз.

Сценарийді бастаңыз және түймені басыңыз.

sudo түйіні button_test.js

Сіз «Түйме басылды!» Көруіңіз керек. шығару. Енді біз түймені басуды анықтай аламыз, біз оларға негізделген әрекеттерді бастай аламыз!

5 -қадам: бастапқы мемлекеттік есептік жазбаны орнату

Бастапқы мемлекеттік шотты орнату
Бастапқы мемлекеттік шотты орнату
Бастапқы мемлекеттік шотты орнату
Бастапқы мемлекеттік шотты орнату

Енді біз сызықша түймесін басқан кезде пәрмен жолы туралы хабарды іске қосатын болсақ, біз басқа да барлық нәрселерді іске қосамыз! Бұл жағдайда мен мәтіндік хабарды жіберемін - біз электрондық поштаны тексермейінше, есік алдында тұрғандардың күтуін қаламаймыз.

Мәтіндік хабарландыруды қосудың бірнеше әдісі бар - Twilio немесе PushBullet сияқты қызметтер. Мен тапқан ең оңай жолдардың бірі - бастапқы күй. Ол минималды қосымша кодтауды талап етті және менің түйме басылған кездегі бақылау тақтасының көрінісін берді.

Https://iot.app.initialstate.com сайтына өтіп, жаңа тіркелгі жасаңыз.

Жұмыс үстеліне/ноутбукке/Raspberry Pi -ге NodeJS үшін Initial State SDK орнату қажет. Пәрмен жолында (алдымен Pi -ге SSH енгізуді ұмытпаңыз) келесі пәрменді орындаңыз:

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

sudo npm бастапқы күйін орнатыңыз

Трансляторды тексеру үшін тест файлын жасаңыз:

nano stream_test.js

Және төмендегілерді көшіріп қойыңыз (мұнда да табылған):

var IS = қажет ('бастапқы күй');

var bucket = IS.bucket ('NodeJS_SDK_Example', 'YOUR_ACCESS_KEY_GOES_HERE'); // Оқиғаны бастапқы күйге көшіру bucket.push ('Демо күйі', 'белсенді'); setTimeout (function () {// Басқа оқиғаны жіберіңіз bucket.push ('Демо күйі', 'белсенді емес');}, 1000);

Сценарийді Ctl-x, y көмегімен сақтаңыз.

Бұл сценарийді іске қоспас бұрын, екінші жолға бірегей кіру кілтін қосу керек.

2 -жолда сіз var bucket = IS.bucket (… басталады. Бұл жолдар «NodeJS_SDK_Example» деп аталатын және сіздің есептік жазбаңызбен байланыстырылған жаңа деректер пакетін құратын жолды көресіз. Бұл байланыс сол параметрдегі екінші параметрге байланысты болады. Сіздің бастапқы күйдегі тіркелгіге кіру кілті - бұл әріптер мен сандардың ұзақ тізбегі. Егер сіз өзіңіздің веб -браузердегі бастапқы күйге кірсеңіз, жоғарғы оң жақтағы пайдаланушы атыңызды нұқыңыз, содан кейін «менің параметрлерім» бөліміне өтіңіз. сіздің кіру кілтіңіз сол жерде.

Бастапқы күй шотыңызға деректер ағыны жасай алатындығымызға тексеру үшін тест сценарийін іске қосыңыз. Келесі әрекеттерді орындаңыз:

түйін stream_test.js

Веб -шолғышта бастапқы күйге қайтып оралыңыз. «NodeJS_SDK_Example» деп аталатын жаңа деректер шкаласы журнал сөресінде сол жақта көрсетілуі керек еді (бетті жаңарту қажет болуы мүмкін). Тест мәліметтерін көру үшін осы шелекті басыңыз.

Енді сіз түймені басуды бастапқы күйге жіберуге дайынсыз!

6 -қадам: Қорытынды код

Қорытынды код
Қорытынды код

Біз бастапқы күй түйіні SDK -ны орнатып қойғанбыз, сондықтан оны біздің кодқа қосу ғана қалады!

Міне, біз бұрын қолданған button_test.js сценарийінің өзгертілген нұсқасы:

var dash_button = талап етіңіз ('node-dash-button'), dash = dash_button ('xx: 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 түймелері болса, сіз олардың барлығын «Есік қоңырауы» шелегіне жібере аласыз, бірақ оларды орналасқан жеріне қарай атаңыз (мысалы, «Гараж есігі», «Жатын бөлме» және т.б.).

Сценарийді Ctl-x, y көмегімен сақтаңыз.

Сценарийді тексеру үшін келесі әрекеттерді орындаңыз:

sudo түйін есік қоңырауы.js.

Түймені басқан кезде сіз бастапқы күй бетіне өтіп, бүйірлік тақтада «есік қоңырауы» деп аталатын жаңа шелекті көре аласыз. Енді триггерді қосамыз!

7 -қадам: SMS триггерін орнату

SMS триггерін орнату
SMS триггерін орнату

«Триггерлер» - бұл хабарландырулардың бастапқы күйі және оларды қосу өте оңай. Есік қоңырауы шелегінің астындағы «Параметрлерді» нұқыңыз, содан кейін «Іске қосу» қойындысын нұқыңыз.

Сіз ашылмалы тізімнен өшіргіңіз келетін сигналды таңдай аласыз. Біздің шелекте тек біреуі бар - «Есік» - сондықтан оны таңдаңыз. Содан кейін «сәйкестендіру» опциясын таңдап, түйме басылған кезде жіберілетін хабарды қосыңыз - бұл жағдайда «Біреу осында!»

Соңында, SMS хабарламаларын алу үшін телефон нөміріңізді қосыңыз. Бұл нөмірді бірінші рет қолданған кезде телефонға жіберілетін растау кодын енгізу қажет болады.

Телефон нөмірінің жанындағы «+» белгісін басу керек, әйтпесе триггер жасалмайды.

Триггерді сақтау үшін Triggers қойындысының төменгі жағындағы «Орындалды» түймесін басыңыз.

Енді сіз мәтіндік ескертулерді алуға дайынсыз! Түймені басыңыз (doorbell.js сценарийі жұмыс істеп тұрғанда). Сіз мәтінді 8 секундтан аз уақыт ішінде алуыңыз керек!

Сіздің үнсіз есік қоңырауыңыз дайын! Егер сіздің сценарийіңіз электр қуаты өшкенде қайта басталатынына көз жеткізгіңіз келсе, оқуды жалғастырыңыз. Мен сіздің шелекке эмодзилерді қосуды және атау беруді қарастырамын.

8 -қадам: бақылау тақтасын жекелендіру

Бақылау тақтасын жекелендіру
Бақылау тақтасын жекелендіру
Бақылау тақтасын жекелендіру
Бақылау тақтасын жекелендіру

Егер сіз бастапқы күйіңіздің бақылау тақтасын жасағыңыз келсе, эмодзилерді қосу немесе атауды өзгерту өте қарапайым.

Плитканың атауын өзгерту үшін, тақтайшаны тінтуірдің оң жақ түймесімен нұқып, «тақтаны өңдеуді» таңдаңыз. Тақырып жолағының ішіне кез келген эмодзидің таңбашасын қоюға болады. Конфигурация терезесінің жоғарғы жағындағы «x» түймесін басу сіздің өзгерістерді сақтайды.

Сіз мұны шелек атауының астындағы «Параметрлер» түймесін басып, содан кейін Атау өрісін өңдеу арқылы шелектің атауына жасай аласыз.

Деректерге жеке тұлға мен контекст беру үшін бақылау тақтасына фондық сурет қосуға болады.

9 -қадам: сценарийді жүктеуден бастау

Сізде үй компьютерінде немесе Pi -де жұмыс істейтін сценарий - біздің үнсіз қоңыраудың кілті. Егер бірдеңе электр қуатын өшіру сияқты болып қалса, біз сценарийдің қайта іске қосылатынына көз жеткізгіміз келеді.

Mac жүйесінде біз crontab деп аталатын қызметті және нано мәтіндік редакторды қолданамыз:

env EDITOR = nano crontab -e

Файлдың ішіне мынаны қосыңыз:

@reboot 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

Өзіңізге ұнайтын мәтіндік редакторды таңдаңыз (маған нано ұнайды) және файлдың төменгі жағында (барлық түсініктемелердің астында) мынаны қосыңыз:

@reboot nohup sudo түйіні /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 -қа тағы бір тапсырманы қосамыз.

Желілік құлдырауды шешу үшін мен желінің қосылымын анықтауды және егер ол болмаса, қайта жүктеуді жүзеге асыруды шештім.

Алдымен WiFi -ді тексеру үшін сценарий құру керек, содан кейін өшіруді іске қосу керек:

cd

sudo nano /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 -қадам: Қорытынды

Қорытынды
Қорытынды

Енді сізде Amazon жеткізушілерінің сізді оятуына жол бермеу үшін үнсіз қоңырау бар! Егер сізде сұрақтар туындаса немесе бірегей өзгертулер болса, маған хабарлаңыз.

Ұсынылған: