INHOUDSOPGAWE:

Die Uber -knoppie: 7 stappe
Die Uber -knoppie: 7 stappe

Video: Die Uber -knoppie: 7 stappe

Video: Die Uber -knoppie: 7 stappe
Video: BONEZ MC & RAF CAMORA feat GZUZ - MÖRDER 2024, November
Anonim
Die Uber -knoppie
Die Uber -knoppie

Kry 'n Uber -rit deur net op 'n knoppie te druk!

Inleiding

In hierdie tutoriaal gebruik ons die Sigfox netwerk lokaliseringsdiens (wat tans hoogstens 'n radiusposisie van 1 km kan gee) om die naaste posisie na 'n gespesifiseerde adres te kry en 'n Uber -rit daarvolgens te versoek. Daarom het ons nie 'n toestel met GPS nodig nie.

Ons sal 'n Sens'it gebruik, maar enige toestel wat 'n boodskap oor Sigfox kan stuur, kan gebruik word om hierdie tutoriaal suksesvol uit te voer.

Kyk hier as u meer inligting oor Sigfox -vervaardigers wil hê.

Stap 1: Hardeware

'N Sens'it (of enige ander toestel wat 'n Sigfox -boodskap kan stuur)

Stap 2: Die Uber API

Ons sal die bestelproses van 'n ritversoek outomatiseer deur Uber API -eindpunte te skakel.

Om te verstaan hoe dit moontlik is, kyk gerus na die nodemodule wat ek ontwikkel het vir eenvoud en duidelikheidsdoeleindes. U benodig 'n toegangsteken na die Uber API om te kan werk. Die prosedure oor hoe u hierdie token kry, kan op hierdie GitHub -bladsy gevind word.

Voorvereistes

  • 'N Uber -geldige rekening
  • U Uber API -toegangstoken (kyk hierbo hoe u dit kan kry)
  • 'N Geaktiveerde toestel op die Sigfox Backend (volg hierdie skakel vir die Sens'it -aktivering). U benodig die toestel -ID en PAC.

Installasie

In app.js word twee adresse strukture soos volg geskep (met waardes gedefinieer in omgewingsveranderlikes):

konst adres_1 = {

'naam': 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};

Hierdie adresse sal gebruik word om die op- en aflaai-plekke te spesifiseer. Ons sal hulle later stel.

As die Sens'it-toestel sy geo-gelokaliseerde posisie naaste aan adres #1 stuur, word adres #1 as afhaal ingestel en adres #2 is ingestel as aflaai vir die ritversoek. En so aan vir die omgekeerde …

As die geografiese liggingdiens van Sigfox Backend 'n presisieradius groter as die afstand tussen die twee adresse gee, word die Uber-versoek nie uitgevoer nie (aangesien die aankomsbestemming nie bepaal kan word nie).

Stap 3: Gebruik Heroku

Gebruik Heroku
Gebruik Heroku
Gebruik Heroku
Gebruik Heroku

Ek het 'n app met NodeJS geskryf om die bestelproses te outomatiseer. Klik op die onderstaande knoppie om dit outomaties op Heroku te implementeer.

KLIK HIER OM TE ONTWERP

'N Alternatiewe manier om dit by Heroku aan die gang te kry, is om die Heroku Cli te installeer en die volgende stappe te volg:

$ git kloon

$ cd sigfox_uber $ heroku -programme: skep $ git push heroku -meester

Gaan nou na die instellingsoortjie van u Heroku -app (https://dashboard.heroku.com/apps//settings) om die omgewingsveranderlikes in te stel. Stel die volgende veranderlikes in (maak seker dat u die adresse stel wat u wil hê):

  • ACCESS_TOKEN | YOUR_ACCESS_TOKEN
  • ADDRESS_1_LAT | 49.009698
  • ADDRESS_1_LNG | 2.547882
  • ADDRESS_1_NAME | lughawe
  • ADDRESS_2_LAT | 48.876579
  • ADDRESS_2_LNG | 2.330618
  • ADDRESS_2_NAME | kantoor

Die eindpunt "…/request/: device/: lat/: lng/: radius" word gebel elke keer as 'n boodskap na die Sigfox Backend gestuur word (sien hoe u dit kan opstel). Deur die Sigfox -geolokaliseringsdiens te gebruik, ontvang die bediener die Sens'it -benaderde posisie. Dit bestel dan 'n UberX met die vasgestelde aflewerings- en afleweringsadresse.

Gaan na die URL om na te gaan of die program werk. U moet 'App loop' … in u blaaier sien. U kan ook die logboeke nagaan vir meer besonderhede.

Stap 4: [Opsioneel] Gratis SMS -kennisgewings met 'n Franse mobiele operateur (genaamd Free)

As u 'n Franse gratis selfoonoperateur -intekening het, kan u hul gratis SMS -kennisgewing -API gebruik om kennisgewings op u telefoon te kry. Om dit te laat werk, aktiveer u eenvoudig die diens in u intekenarea en verwys die volgende omgewingsveranderlikes op die instellings -oortjie van u Heroku -app:

  • FREE_USER | U_FREE_USER
  • FREE_PASS | JOU_GRATIS_PAS

U sal nou SMS -waarskuwings oor u UberX -versoeke kan ontvang.

Stap 5: Stel die terugroep van Sigfox Backend op

Stel die Sigfox Backend -terugbel op
Stel die Sigfox Backend -terugbel op
  • Meld hier aan
  • Gaan na https://backend.sigfox.com/devicetype/list, klik links op die ry van u toestel en kies "Wysig"
  • Gaan nou na die afdeling "Oproepe" aan die linkerkant, kies "nuut" regs bo, kies "Aangepaste terugbel"
  • Tipe: DIENS | GEOLOC
  • Kanaal -URL
  • URL -patroon: https://.herokuapp.com/request/ {device}/{lat}/{lng}/{radius}
  • Gebruik HTTP -metode: GET
  • Kies "OK" om te bevestig

Stap 6: hardloop na toets

Die sandbox -veranderlike is standaard op true gestel. Dit sal Uber -ry -versoeke vervals, sodat u bankrekening nie deur onbedoelde manipulasies geraak word nie.

Druk twee keer op die Sens'it -knoppie om 'n boodskap oor Sigfox te stuur. Maak seker dat die boodskappe goed ontvang word op die Sigfox -agterkant. Meld aan, gaan na die DEVICE -afdeling en klik links op u toestel -ID. U kan dan na die Boodskappe -afdeling gaan om die laaivragte te sien.

Stap 7: Bestel 'n regte Uber -rit

Bestel 'n regte Uber -rit
Bestel 'n regte Uber -rit

Stel nou die sandbox -omgewingsveranderlike op onwaar as u 'n regte Uber -bestuurder wil aanvra.

SANDBOX | onwaar

Die Sens'it -knoppie bel die pad…/request/: device/: lat/: lng/: radius en aktiveer die Uber -ritversoek!

U kan ook die huidige versoekstatus sien op …/request/current.

Om 'n bestelling te kanselleer, kan hierdie pad gebruik word: …/versoek/kanselleer.

Kom ons ry

Geniet u bestelling van u Ubers!

Antoine de Chassey

Aanbeveel: