Kazalo:

Gumb Uber: 7 korakov
Gumb Uber: 7 korakov

Video: Gumb Uber: 7 korakov

Video: Gumb Uber: 7 korakov
Video: Быстрая укладка плитки на стены в санузле. ПЕРЕДЕЛКА ХРУЩЕВКИ от А до Я #27 2024, December
Anonim
Gumb Uber
Gumb Uber

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

Uvedite na Heroku
Uvedite na Heroku
Uvedite na Heroku
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

Konfigurirajte povratni klic Sigfox
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

Naročite pravo vožnjo z Uberjem
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: