Obsah:

Tlačidlo Uber: 7 krokov
Tlačidlo Uber: 7 krokov

Video: Tlačidlo Uber: 7 krokov

Video: Tlačidlo Uber: 7 krokov
Video: Продолжение Сериала Верни мою любовь 13 - 24 серия. Русские мелодрамы 2024, November
Anonim
Tlačidlo Uber
Tlačidlo Uber

Vydajte sa na jazdu Uberom iba stlačením tlačidla!

Úvod

V tomto tutoriáli budeme používať službu lokalizácie siete Sigfox (ktorá zatiaľ môže poskytovať presnosť polohy polomeru maximálne 1 km), aby sme získali najbližšiu polohu k zadanej adrese a podľa toho požiadali o jazdu Uberom. Preto nepotrebujeme zariadenie s GPS.

Použijeme Sens'it, ale na úspešné zvládnutie tohto tutoriálu je možné použiť akékoľvek zariadenie, ktoré dokáže odoslať správu cez Sigfox.

Pozrite sa sem, ak chcete získať viac podrobností o výrobcoch Sigfox.

Krok 1: Hardvér

Sens'it (alebo akékoľvek iné zariadenie schopné odosielať správu Sigfox)

Krok 2: API Uber

Proces objednávania žiadosti o jazdu budeme automatizovať volaním koncových bodov API Uber.

Aby ste pochopili, ako je to možné, pozrite sa na modul uzla, ktorý som vyvinul, kvôli jednoduchosti a prehľadnosti použitia. Na to, aby fungoval, budete potrebovať prístupový token k rozhraniu Uber API. Postup, ako tento token získať, nájdete na tejto stránke GitHub.

Predpoklady

  • Platný účet Uber
  • Váš prístupový token rozhrania API Uber (pozrite sa vyššie, ako ho získate)
  • Aktivované zariadenie na serveri Sigfox Backend (aktiváciu Sens'it spustíte kliknutím na tento odkaz). Budete potrebovať ID zariadenia a PAC.

Inštalácia

V aplikácii app.js sa vytvoria dve štruktúry adries nasledovne (s hodnotami definovanými v premenných prostredia):

konštantná adresa_1 = {

'name': process.env. ADDRESS_1_NAME, 'lat': process.env. ADDRESS_1_LAT, 'lng': process.env. ADDRESS_1_LNG}; const adresa_2 = {'meno': process.env. ADDRESS_2_NAME, 'lat': process.env. ADDRESS_2_LAT, 'lng': process.env. ADDRESS_2_LNG};

Tieto adresy budú použité na určenie miest vyzdvihnutia a odovzdania. Nastavíme ich neskôr.

Ak zariadenie Sens'it odošle svoju geolokalizovanú polohu najbližšie k adrese č. 1, potom sa adresa č. 1 nastaví ako vyzdvihnutie a adresa č. 2 sa nastaví ako výstupná požiadavka na jazdu. A tak ďalej pre obrátenie …

Ak služba geografickej polohy Sigfox Backend vráti polomer presnosti väčší ako vzdialenosť medzi týmito dvoma adresami, požiadavka Uber sa nevykoná (pretože cieľový cieľ nie je možné určiť).

Krok 3: Nasadenie na Heroku

Nasadiť na Heroku
Nasadiť na Heroku
Nasadiť na Heroku
Nasadiť na Heroku

Napísal som aplikáciu pomocou NodeJS na automatizáciu procesu objednávania. Kliknutím na tlačidlo nižšie ho automaticky nasadíte do Heroku.

KLIKNUTÍM ZDE sa nasadí

Alternatívny spôsob, ako ho spustiť v Heroku, je nainštalovať Heroku Cli a postupovať podľa týchto krokov:

$ git klon

$ cd sigfox_uber $ heroku aplikácie: vytvorte $ git push heroku master

Teraz prejdite na kartu nastavení vo svojej aplikácii Heroku (https://dashboard.heroku.com/apps//settings), aby ste mohli nastaviť premenné prostredia. Nastavte nasledujúce premenné (nezabudnite nastaviť požadované adresy):

  • ACCESS_TOKEN | VAŠE_ACCESS_TOKEN
  • ADDRESS_1_LAT | 49,009698
  • ADDRESS_1_LNG | 2,547882
  • ADDRESS_1_NAME | letisko
  • ADDRESS_2_LAT | 48,876579
  • ADDRESS_2_LNG | 2,330618
  • ADDRESS_2_NAME | kancelária

Koncový bod „…/požiadavka/: zariadenie/: lat/: lng/: radius“sa zavolá pri každom odoslaní správy na server Sigfox Backend (postup konfigurácie nájdete nižšie). Použitím geolokalizačnej služby Sigfox server dostane približnú polohu Sens'it. Potom sa objedná UberX s určenými adresami vyzdvihnutia a odovzdania.

Ak chcete skontrolovať, či je aplikácia spustená, prejdite na jej adresu URL. Vo vašom prehliadači by sa malo zobraziť „Aplikácia je spustená …“. Môžete tiež skontrolovať denníky, kde nájdete ďalšie podrobnosti.

Krok 4: [Voliteľné] Bezplatné oznámenia SMS s francúzskym mobilným operátorom (pomenované zadarmo)

Ak máte francúzske bezplatné predplatné mobilného operátora, môžete na ich odosielanie upozornení do telefónu používať ich bezplatné API pre SMS notifikácie. Aby to fungovalo, jednoducho aktivujte službu vo svojej oblasti predplatiteľa a na karte nastavení vašej aplikácie Heroku si pozrite nasledujúce premenné prostredia:

  • FREE_USER | VAŠE_ZADARMO_USER
  • FREE_PASS | VAŠA_ZADARMO_PRÍSTUP

Teraz budete môcť dostávať SMS upozornenia týkajúce sa vašich požiadaviek na UberX.

Krok 5: Nakonfigurujte spätné volanie Sigfox Backend

Nakonfigurujte spätné volanie Sigfox Backend
Nakonfigurujte spätné volanie Sigfox Backend
  • Prihláste sa tu
  • Choďte na https://backend.sigfox.com/devicetype/list, kliknite vľavo na riadok zariadenia a zvoľte "Upraviť"
  • Teraz vľavo prejdite do sekcie „CALLBACKS“, v pravom hornom rohu vyberte „new“a zvoľte „Custom Callback“
  • Typ: SERVIS | GEOLOC
  • URL kanála
  • Vzor adresy URL: https://.herokuapp.com/request/ {device}/{lat}/{lng}/{radius}
  • Použite metódu HTTP: GET
  • Potvrďte výber „OK“

Krok 6: Spustite test

Štandardne je premenná izolovaného priestoru nastavená na hodnotu true. Toto bude falošné žiadosti o jazdu Uber, aby sa váš bankový účet nedotkol neúmyselných manipulácií.

Dvakrát stlačte tlačidlo Sens'it, aby ste odoslali správu cez Sigfox. Zaistite, aby boli správy na serveri Sigfox Backend dobre prijaté. Prihláste sa, prejdite do sekcie ZARIADENIE a kliknite vľavo na ID svojho zariadenia. Potom môžete ísť do sekcie SPRÁVY a pozrieť sa na užitočné zaťaženie.

Krok 7: Objednajte si skutočnú jazdu Uber

Objednajte si skutočnú jazdu Uberom
Objednajte si skutočnú jazdu Uberom

Ak chcete požiadať o skutočný ovládač Uber, teraz nastavte premennú prostredia sandbox na hodnotu false.

SANDBOX | falošný

Tlačidlo Sens'it zavolá cestu …/požiadavka/: zariadenie/: lat/: lng/: polomer a spustí požiadavku na jazdu Uberom!

Aktuálny stav žiadosti môžete tiež vidieť na …/požiadavka/aktuálna.

Na zrušenie objednávky je možné použiť túto cestu:…/žiadosť/zrušenie.

Poďme jazdiť

Príjemnú zábavu pri objednávaní vašich Ubers!

Antoine de Chassey

Odporúča: