Sadržaj:

Uber dugme: 7 koraka
Uber dugme: 7 koraka

Video: Uber dugme: 7 koraka

Video: Uber dugme: 7 koraka
Video: Табор уходит в небо (4К, драма, реж. Эмиль Лотяну, 1976 г.) 2024, Novembar
Anonim
Uber dugme
Uber dugme

Vozite se Uberom pritiskom na dugme!

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 detalja o proizvođačima Sigfoxa.

Korak 1: Hardver

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

Korak 2: Uber API

Automatizirat ćemo proces naručivanja zahtjeva za vožnju pozivanjem Uber API -ja.

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

Preduslovi

  • Važeći Uber račun
  • Vaš pristupni token Uber API -ja (provjerite iznad kako biste ga dobili)
  • Aktiviran uređaj na Sigfox Backend -u (slijedite ovu vezu za aktivaciju Sens'it -a). Trebat će vam ID uređaja i PAC.

Instalacija

U app.js će se stvoriti dvije strukture adresa kako slijedi (sa 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 adresa_2 = {'ime': 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 lokacija preuzimanja i predaje. Postavit ćemo ih kasnije.

Ako Sens'it uređaj pošalje svoju geo-lokaliziranu poziciju najbližu adresi #1, tada je adresa #1 postavljena kao preuzimanje, a adresa #2 postavljena kao otpuštanje za zahtjev za vožnju. I tako obrnuto …

Ako usluga geolokacije Sigfox Backend vrati radijus preciznosti veći od udaljenosti između dvije adrese, Uberov zahtjev neće biti izvršen (budući da odredište dolaska nije moguće odrediti).

Korak 3: Postavite na Heroku

Implementirajte na Heroku
Implementirajte na Heroku
Implementirajte na Heroku
Implementirajte 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 da ga pokrenete na Heroku -u je instaliranje Heroku Cli -a i slijedite ove korake:

klon $ git

$ cd sigfox_uber $ heroku aplikacije: kreirajte $ 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):

  • ACCESS_TOKEN | YOUR_ACCESS_TOKEN
  • ADRESA_1_LAT | 49.009698
  • ADRESA_1_LNG | 2.547882
  • ADDRESS_1_NAME | aerodrom
  • ADDRESS_2_LAT | 48.876579
  • ADDRESS_2_LNG | 2.330618
  • ADDRESS_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. Ovo će zatim naručiti UberX s utvrđenim adresama preuzimanja i odjave.

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

Korak 4: [Opcionalno] Besplatna SMS obavještenja sa francuskim mobilnim operatorom (po imenu Free)

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

  • FREE_USER | YOUR_FREE_USER
  • 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 na red 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 obrazac: https://.herokuapp.com/request/ {device}/{lat}/{lng}/{radius}
  • Koristi HTTP metodu: GET
  • Odaberite "OK" za potvrdu

Korak 6: Pokrenite da biste testirali

Podrazumijevano, varijabla sandbox je postavljena na true. Ovo će lažirati zahtjeve za vožnju Uberom tako da nenamjerne manipulacije ne utječu na vaš bankovni račun.

Pritisnite dugme Sens'it dvaput da biste poslali poruku preko Sigfoxa. Uvjerite se da su poruke dobro primljene na Sigfox Backend -u. Prijavite se, idite na odjeljak UREĐAJ i kliknite lijevo na ID uređaja. Zatim možete otići u odjeljak PORUKE da vidite korisni teret.

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 Uberov upravljački program.

SANDBOX | false

Dugme Sens'it će pozvati putanju …/request/: device/: lat/: lng/: radius i pokrenuti Uber zahtjev za vožnju!

Trenutni status zahtjeva možete vidjeti i na…/request/current.

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

Idemo voziti

Uživajte naručujući svoj Ubers!

Antoine de Chassey

Preporučuje se: