Kazalo:
- 1. korak: Strojna oprema
- 2. korak: API Uber
- 3. korak: Uvedite na Heroku
- 4. korak: [Izbirno] Brezplačna obvestila SMS s francoskim mobilnim operaterjem (z imenom Free)
- 5. korak: Konfigurirajte povratni klic Sigfox
- 6. korak: Zaženite preskus
- 7. korak: Naročite pravo vožnjo z Uberjem
Video: Gumb Uber: 7 korakov
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:03
Vozite se z Uberjem s pritiskom na gumb!
Uvod
V tej vadnici bomo uporabljali storitev lokalizacije omrežja Sigfox (ki lahko zaenkrat poda največ 1 km radijske natančnosti), da bi dobili najbližji položaj do določenega naslova in ustrezno zahtevali vožnjo z Uberjem. Zato ne potrebujemo naprave z GPS -om.
Uporabili bomo Sens'it, vendar lahko za uspešno izvedbo te vadnice uporabite katero koli napravo, ki lahko pošlje sporočilo prek Sigfoxa.
Če želite več podrobnosti o proizvajalcih Sigfoxa, si oglejte tukaj.
1. korak: Strojna oprema
Sens'it (ali katera koli druga naprava, ki lahko pošlje sporočilo Sigfox)
2. korak: API Uber
Postopek naročanja zahteve za vožnjo bomo avtomatizirali s klicem na končne točke Uber API.
Če želite razumeti, kako je to mogoče, si oglejte enoto vozlišča, ki sem jo razvil zaradi enostavnosti uporabe in jasnosti. Za delovanje boste potrebovali žeton za dostop do Uber API -ja. Postopek pridobivanja tega žetona najdete na tej strani GitHub.
Predpogoji
- Uber veljaven račun
- Vaš žeton za dostop do Uber API -ja (zgoraj preverite, kako ga pridobite)
- Aktivirana naprava na zaledju Sigfox (sledite tej povezavi za aktivacijo Sens'it). Potrebovali boste ID naprave in PAC.
Namestitev
V app.js bosta ustvarjeni dve strukturi naslovov (z vrednostmi, določenimi v spremenljivkah okolja):
naslov const_1 = {
'name': process.env. ADDRESS_1_NAME, 'lat': process.env. ADDRESS_1_LAT, 'lng': process.env. ADDRESS_1_LNG}; const address_2 = {'name': process.env. ADDRESS_2_NAME, 'lat': process.env. ADDRESS_2_LAT, 'lng': process.env. ADDRESS_2_LNG};
Ti naslovi bodo uporabljeni za določanje mest prevzema in odpreme. Postavili jih bomo kasneje.
Če naprava Sens'it pošlje svoj geološko lokaliziran položaj, ki je najbližji naslovu #1, je naslov #1 nastavljen kot prevzem, naslov #2 pa kot odložen za zahtevo po vožnji. In tako obratno …
Če storitev geografske lokacije Sigfox Backend vrne natančen polmer, večji od razdalje med obema naslovoma, zahteva Uber ne bo izvedena (saj cilja prihoda ni mogoče določiti).
3. korak: Uvedite na Heroku
Napisal sem aplikacijo z uporabo NodeJS za avtomatizacijo postopka naročanja. Kliknite spodnji gumb, da ga samodejno uvedete v Heroku.
KLIKNITE TUKAJ ZA DELO
Alternativni način za zagon v Heroku je namestitev Heroku Cli in sledite tem korakom:
klon $ git
$ cd sigfox_uber $ heroku aplikacije: ustvarite $ git push heroku master
Zdaj pojdite na zavihek z nastavitvami vaše aplikacije Heroku (https://dashboard.heroku.com/apps//settings), da nastavite spremenljivke okolja. Nastavite naslednje spremenljivke (ne pozabite nastaviti želenih naslovov):
- ACCESS_TOKEN | YOUR_ACCESS_TOKEN
- ADDRESS_1_LAT | 49,009698
- ADDRESS_1_LNG | 2,547882
- ADDRESS_1_NAME | letališče
- ADDRESS_2_LAT | 48.876579
- ADDRESS_2_LNG | 2.330618
- ADDRESS_2_NAME | pisarno
Končna točka "…/request/: device/: lat/: lng/: radius" bo poklicana vsakič, ko bo sporočilo poslano v zaledje Sigfox (glejte spodaj, kako ga konfigurirate). Z uporabo storitve geolokalizacije Sigfox bo strežnik prejel približen položaj Sens'it. Ta bo nato naročil UberX z določenimi naslovi za prevzem in odvoz.
Če želite preveriti, ali se aplikacija izvaja, pojdite na njen URL. V brskalniku bi morali videti "Aplikacija deluje …". Za več podrobnosti lahko preverite tudi dnevnike.
4. korak: [Izbirno] Brezplačna obvestila SMS s francoskim mobilnim operaterjem (z imenom Free)
Če imate francosko naročnino na brezplačnega mobilnega operaterja, lahko za prejemanje obvestil v telefon uporabite njihov brezplačni API za obvestila SMS. Če želite to narediti, preprosto aktivirajte storitev na svojem naročniškem območju in se na zavihku z nastavitvami aplikacije Heroku obrnite na naslednje spremenljivke okolja:
- FREE_USER | YOUR_FREE_USER
- FREE_PASS | YOUR_FREE_PASS
Zdaj boste lahko prejemali opozorila SMS v zvezi z vašimi zahtevami UberX.
5. korak: Konfigurirajte povratni klic Sigfox
- Prijavite se tukaj
- Pojdite na https://backend.sigfox.com/devicetype/list, kliknite levo v vrstici naprave in izberite »Uredi«
- Zdaj pojdite na razdelek »KLICI« na levi, v zgornjem desnem kotu izberite »novo«, izberite »Povratni klic po meri«
- Vrsta: SERVIS | GEOLOC
- URL kanala
- Vzorec URL -ja: https://.herokuapp.com/request/ {device}/{lat}/{lng}/{radius}
- Uporabi metodo HTTP: GET
- Za potrditev izberite "V redu"
6. korak: Zaženite preskus
Spremenljivka peskovnika je privzeto nastavljena na true. To bo ponaredilo zahteve za vožnjo Uber, tako da nenamerne manipulacije ne vplivajo na vaš bančni račun.
Dvakrat pritisnite gumb Sens'it, da pošljete sporočilo prek Sigfoxa. Prepričajte se, da so sporočila dobro sprejeta na zaledju Sigfox. Prijavite se, pojdite v razdelek NAPRAVA in kliknite levo na ID vaše naprave. Lahko pa obiščete razdelek SPOROČILA in si ogledate koristne obremenitve.
7. korak: Naročite pravo vožnjo z Uberjem
Zdaj nastavite spremenljivko okolja peskovnika na false, če želite zahtevati pravi gonilnik Uber.
PISAK | napačno
Gumb Sens'it bo poklical pot…/request/: device/: lat/: lng/: radius in sprožil zahtevo za vožnjo Uber!
Trenutno stanje zahteve lahko vidite tudi na…/request/current.
Za preklic naročila lahko uporabite to pot:…/request/cancel.
Vozimo se
Lepo se naročite pri svojem Ubersu!
Antoine de Chassey
Priporočena:
Gumb vrtljivega dajalnika: 6 korakov
Gumb za rotacijski dajalnik: To je rotacijski daljinski upravljalnik, ki temelji na rotacijskem kodirniku. Ima naslednje funkcije: Baterija deluje z zelo nizko porabo toka, ko je aktivirana Samodejno aktiviranje, ko se krmiljenje vrti Samodejno spanje po obdobju nedejavnosti Konfiguriraj
Gumb Pritisni in govori z nožnim upravljanjem: 5 korakov
Gumb Pritisni in govori z nožno kontrolo: Tako sem naredil gumb Pritisni in govori, ki ga lahko uporabljate s svojimi nogami
Pritisnite (Gumb); // Arduino LCD igra: 5 korakov (s slikami)
Pritisnite (Gumb); // Arduino LCD igra: Pred kratkim sem v skavtih delal na znački zasluge za oblikovanje igre. Za eno od zahtev sem to igro zgradil z uporabo Arduina, ki temelji na igri LED Rocker. Bistvo igre je doseči čim večjo količino točk. Na začetku t
FPGA Cyclone IV DueProLogic - potisni gumb in LED: 5 korakov
FPGA Cyclone IV DueProLogic - potisni gumb in LED: V tej vadnici bomo uporabili FPGA za nadzor zunanjega vezja LED. Izvajali bomo naslednje naloge (A) Uporabite gumbe na FPGA Cyclone IV DuePrologic za nadzor LED. (B) LED LED utripa & občasno izklopite Video demo laboratorij
Stikalo s pritiskom na gumb: 31 korakov
Stikalo s pritiskom na gumb: Stikalo s pritiskom na gumb je druga varianta pomožnega stikala. Namenjen je invalidnim otrokom, zato so lahko pooblaščeni za uporabo vsakodnevnih predmetov