Sadržaj:

Gumb Uber: 7 koraka
Gumb Uber: 7 koraka

Video: Gumb Uber: 7 koraka

Video: Gumb Uber: 7 koraka
Video: Как очистить телефон от ВИРУСОВ/Быстрый/Простой способ😱😱😱 2024, Srpanj
Anonim
Gumb Uber
Gumb Uber

Vozite se Uberom pritiskom na gumb!

Uvod

U ovom ćemo vodiču koristiti uslugu lokalizacije mreže Sigfox (koja za sada može dati najviše 1 km radijusa preciznost položaja) kako bismo dobili najbližu poziciju na određenu adresu i u skladu s tim zatražili vožnju Uberom. Stoga nam ne treba uređaj s GPS -om.

Koristit ćemo Sens'it, ali bilo koji uređaj koji može poslati poruku putem Sigfoxa može se koristiti za uspješno izvršavanje ovog vodiča.

Ovdje pogledajte ako želite imati više pojedinosti o proizvođačima Sigfoxa.

Korak 1: Hardver

Sens'it (ili bilo koji drugi uređaj koji može poslati Sigfox poruku)

2. korak: Uber API

Automatizirat ćemo proces naručivanja zahtjeva za vožnju pozivom krajnjih točaka Uber API -ja.

Da biste razumjeli kako je to moguće, provjerite modul čvora koji sam razvio radi jednostavnosti i jasnoće korištenja. Za rad će vam trebati pristupni token Uber API -ju. Postupak kako dobiti ovaj token može se pronaći na ovoj GitHub stranici.

Preduvjeti

  • Važeći Uber račun
  • Vaš pristupni token Uber API -ja (gore provjerite kako ga dobiti)
  • Aktiviran uređaj na Sigfox Backendu (slijedite ovu vezu za aktivaciju Sens'ita). Trebat će vam ID uređaja i PAC.

Montaža

U app.js će se stvoriti dvije strukture adresa kako slijedi (s vrijednostima definiranim u varijablama okruženja):

const adresa_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};

Ove će se adrese koristiti za određivanje mjesta preuzimanja i predaje. Postavit ćemo ih kasnije.

Ako uređaj Sens'it pošalje svoj geografski lokaliziran položaj najbliži adresi #1, tada je adresa #1 postavljena kao preuzimanje, a adresa #2 postavljena kao mjesto ispuštanja za zahtjev za vožnju. I tako obrnuto …

Ako usluga geolokacije Sigfox Backend vrati radijus preciznosti veći od udaljenosti između dviju adresa, Uberov zahtjev neće se izvršiti (budući da se odredište dolaska ne može odrediti).

Korak 3: Rasporedite na Heroku

Rasporedi na Heroku
Rasporedi na Heroku
Rasporedi na Heroku
Rasporedi na Heroku

Napisao sam aplikaciju koristeći NodeJS za automatizaciju procesa naručivanja. Pritisnite donji gumb za automatsko postavljanje na Heroku.

KLIKNITE OVDJE ZA ODLAGANJE

Alternativni način za pokretanje na Heroku -u je instaliranje Heroku Cli -a i slijedite ove korake:

klon $ git

$ cd sigfox_uber $ heroku aplikacije: izradite $ git push heroku master

Sada prijeđite na karticu postavki vaše Heroku aplikacije (https://dashboard.heroku.com/apps//settings) kako biste postavili varijable okruženja. Postavite sljedeće varijable (obavezno postavite željene adrese):

  • PRISTUP_TOKEN | VAŠ_ACCESS_TOKEN
  • ADRESA_1_LAT | 49,009698
  • ADRESA_1_LNG | 2.547882
  • ADRESA_1_NAME | zračna luka
  • ADRESA_2_LAT | 48.876579
  • ADRESA_2_LNG | 2.330618
  • ADRESA_2_NAME | ured

Krajnja točka "…/request/: device/: lat/: lng/: radius" bit će pozvana svaki put kada se poruka pošalje na Sigfox Backend (pogledajte dolje kako je konfigurirati). Korištenjem usluge geolokalizacije Sigfox poslužitelj će primiti Sens'it približnu poziciju. Time će se naručiti UberX s utvrđenim adresama preuzimanja i odjave.

Da biste provjerili radi li aplikacija, idite na njezin URL. U svom pregledniku trebali biste vidjeti "Aplikacija radi …". Za više pojedinosti možete provjeriti i zapisnike.

Korak 4: [Izborno] Besplatne SMS obavijesti s francuskim mobilnim operatorom (po imenu Free)

Ako imate francusku pretplatu na besplatnog mobilnog operatera, možete koristiti njihov besplatni API za SMS obavijesti kako biste primali obavijesti na svoj telefon. Da biste to učinili, jednostavno aktivirajte uslugu u svom pretplatničkom području i pogledajte sljedeće varijable okruženja na kartici postavki vaše aplikacije Heroku:

  • FREE_USER | VAŠ_BESPLATAN_KORISNIK
  • FREE_PASS | YOUR_FREE_PASS

Sada ćete moći primati SMS upozorenja u vezi s vašim zahtjevima za UberX.

Korak 5: Konfigurirajte povratni povratni poziv Sigfoxa

Konfigurirajte povratni povratni poziv Sigfoxa
Konfigurirajte povratni povratni poziv Sigfoxa
  • Prijavite se ovdje
  • Idite na https://backend.sigfox.com/devicetype/list, kliknite lijevo u retku uređaja i odaberite "Uredi"
  • Sada idite na odjeljak "POZIVI" s lijeve strane, odaberite "novo" u gornjem desnom kutu, odaberite "Prilagođeni povratni poziv"
  • Vrsta: USLUGA | GEOLOC
  • URL kanala
  • Url uzorak: https://.herokuapp.com/request/ {device}/{lat}/{lng}/{radius}
  • Koristi HTTP metodu: GET
  • Odaberite "OK" za potvrdu

Korak 6: Pokrenite da biste testirali

Varijabla pješčanika prema zadanim postavkama postavljena je na true. Ovo će lažirati zahtjeve za vožnju Uberom tako da nenamjerne manipulacije ne utječu na vaš bankovni račun.

Dvaput pritisnite tipku Sens'it za slanje poruke putem Sigfoxa. Provjerite jesu li poruke dobro primljene na Sigfox Backendu. Prijavite se, idite na odjeljak UREĐAJ i kliknite lijevo na ID uređaja. Možete otići u odjeljak PORUKE kako biste vidjeli korisne terete.

Korak 7: Naručite pravu vožnju Uberom

Naručite pravu vožnju Uberom
Naručite pravu vožnju Uberom

Sada postavite varijablu okruženja sandbox na false ako želite zatražiti pravi upravljački program Ubera.

SANDBOX | lažno

Gumb Sens'it pozvat će put …/request/: device/: lat/: lng/: radius i pokrenuti zahtjev za vožnju Uberom!

Trenutačni status zahtjeva možete vidjeti i na…/request/current.

Za otkazivanje narudžbe ovaj se put može koristiti:…/request/cancel.

Idemo voziti

Uživajte naručujući svoj Ubers!

Antoine de Chassey

Preporučeni: