Obsah:

Tlačítko Uber: 7 kroků
Tlačítko Uber: 7 kroků

Video: Tlačítko Uber: 7 kroků

Video: Tlačítko Uber: 7 kroků
Video: ANDROID MÁ JEDNO SKRYTÉ NASTAVENÍ 🤖 2024, Červenec
Anonim
Tlačítko Uber
Tlačítko Uber

Získejte jízdu Uberem pouhým stisknutím tlačítka!

Úvod

V tomto tutoriálu budeme používat službu lokalizace sítě Sigfox (která prozatím může poskytovat přesnost polohy poloměru maximálně 1 km), abychom získali nejbližší polohu na zadanou adresu a podle toho požádali o jízdu Uberem. Nepotřebujeme tedy zařízení s GPS.

Použijeme Sens'it, ale k úspěšnému provedení tohoto kurzu lze použít jakékoli zařízení schopné odeslat zprávu přes Sigfox.

Podívejte se sem, pokud chcete získat více podrobností o výrobcích Sigfox.

Krok 1: Hardware

Sens'it (nebo jakékoli jiné zařízení schopné odeslat zprávu Sigfox)

Krok 2: API Uber

Budeme automatizovat proces objednávání žádosti o jízdu voláním koncových bodů API Uber.

Abyste pochopili, jak je to možné, nezapomeňte se podívat na modul uzlu, který jsem vyvinul pro účely jednoduchosti a přehlednosti použití. Aby fungoval, budete potřebovat přístupový token k API Uber. Postup, jak tento token získat, najdete na této stránce GitHub.

Předpoklady

  • Platný účet Uber
  • Váš přístupový token API Uber (podívejte se výše, jak ho získat)
  • Aktivované zařízení na back -endu Sigfox (pro aktivaci Sens'it klikněte na tento odkaz). Budete potřebovat ID zařízení a PAC.

Instalace

V aplikaci app.js budou vytvořeny dvě struktury adres následovně (s hodnotami definovanými v proměnných prostředí):

konstantní 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};

Tyto adresy budou použity k určení míst vyzvednutí a vyzvednutí. Nastavíme je později.

Pokud zařízení Sens'it odešle svou geolokalizovanou polohu nejblíže adrese č. 1, pak je adresa č. 1 nastavena jako vyzvednutí a adresa č. 2 je nastavena jako odchozí pro žádost o jízdu. A tak dále pro opačný…

Pokud služba geografické polohy Sigfox Backend vrací poloměr přesnosti větší než vzdálenost mezi těmito dvěma adresami, požadavek Uber nebude proveden (protože cíl příjezdu nelze určit).

Krok 3: Nasazení na Heroku

Nasazení na Heroku
Nasazení na Heroku
Nasazení na Heroku
Nasazení na Heroku

Napsal jsem aplikaci pomocí NodeJS k automatizaci procesu objednávání. Kliknutím na tlačítko níže jej automaticky nasadíte na Heroku.

KLIKNĚTE ZDE

Alternativní způsob, jak jej spustit v Heroku, je nainstalovat Heroku Cli a postupujte takto:

$ git klon

$ cd sigfox_uber $ heroku aplikace: vytvořte $ git push heroku master

Nyní přejděte na kartu nastavení aplikace Heroku (https://dashboard.heroku.com/apps//settings), abyste mohli nastavit proměnné prostředí. Nastavte následující proměnné (nezapomeňte nastavit požadované adresy):

  • ACCESS_TOKEN | VAŠE_ACCESS_TOKEN
  • ADDRESS_1_LAT | 49,009698
  • ADDRESS_1_LNG | 2,547882
  • ADDRESS_1_NAME | letiště
  • ADDRESS_2_LAT | 48,876579
  • ADDRESS_2_LNG | 2,330618
  • ADDRESS_2_NAME | kancelář

Koncový bod „…/požadavek/: zařízení/: lat/: lng/: radius“bude volán pokaždé, když je zpráva odeslána do back -endu Sigfox (viz níže, jak jej nakonfigurovat). Pomocí geolokalizační služby Sigfox server získá přibližnou polohu Sens'it. Poté se objedná UberX s určenými adresami pro vyzvednutí a odeslání.

Chcete -li zkontrolovat, zda je aplikace spuštěna, přejděte na její adresu URL. Ve vašem prohlížeči byste měli vidět „Aplikace běží …“. Další podrobnosti můžete také zkontrolovat v protokolech.

Krok 4: [Volitelné] Bezplatná oznámení SMS s francouzským mobilním operátorem (pojmenovaný zdarma)

Pokud máte francouzské bezplatné předplatné mobilního operátora, můžete pomocí jejich bezplatného API pro oznámení SMS dostávat oznámení do telefonu. Aby to fungovalo, jednoduše aktivujte službu ve své předplatitelské oblasti a na kartě nastavení aplikace Heroku si přečtěte následující proměnné prostředí:

  • FREE_USER | VAŠE_ZDARMA_uživatel
  • FREE_PASS | VAŠE_ZDARMA_PRODEJ

Nyní budete moci dostávat SMS upozornění týkající se vašich požadavků na UberX.

Krok 5: Konfigurujte zpětné volání Sigfox Backend

Nakonfigurujte zpětné volání Sigfox Backend
Nakonfigurujte zpětné volání Sigfox Backend
  • Přihlaste se zde
  • Přejděte na https://backend.sigfox.com/devicetype/list, klikněte vlevo na řádku zařízení a vyberte „Upravit“
  • Nyní přejděte vlevo do sekce „CALLBACKS“, vpravo nahoře vyberte „new“, vyberte „Custom Callback“
  • Typ: SERVIS | GEOLOC
  • URL kanálu
  • Vzor adresy URL: https://.herokuapp.com/request/ {device}/{lat}/{lng}/{radius}
  • Použijte metodu HTTP: GET
  • Potvrďte výběrem „OK“

Krok 6: Spusťte test

Ve výchozím nastavení je proměnná karantény nastavena na hodnotu true. To bude falešné žádosti o jízdu Uber, takže váš bankovní účet nebude ovlivněn neúmyslnými manipulacemi.

Stisknutím tlačítka Sens'it dvakrát odešlete zprávu přes Sigfox. Ujistěte se, že zprávy jsou na back -endu Sigfox dobře přijímány. Přihlaste se, přejděte do části ZAŘÍZENÍ a klikněte vlevo na ID zařízení. Chcete -li zobrazit užitečné zatížení, můžete přejít do sekce ZPRÁVY.

Krok 7: Objednejte si skutečnou jízdu Uber

Objednejte si Real Uber Ride
Objednejte si Real Uber Ride

Pokud chcete požádat o skutečný ovladač Uber, nyní nastavte proměnnou prostředí sandboxu na hodnotu false.

SANDBOX | Nepravdivé

Tlačítko Sens'it zavolá cestu …/požadavek/: zařízení/: lat/: lng/: poloměr a spustí požadavek na jízdu Uberem!

Aktuální stav požadavku můžete také vidět na…/požadavek/aktuální.

Pro zrušení objednávky lze použít tuto cestu:…/požadavek/zrušit.

Pojďme řídit

Bavte se objednáváním svého Ubers!

Antoine de Chassey

Doporučuje: