Obsah:
- Krok 1: Hardware
- Krok 2: API Uber
- Krok 3: Nasazení na Heroku
- Krok 4: [Volitelné] Bezplatná oznámení SMS s francouzským mobilním operátorem (pojmenovaný zdarma)
- Krok 5: Konfigurujte zpětné volání Sigfox Backend
- Krok 6: Spusťte test
- Krok 7: Objednejte si skutečnou jízdu Uber
Video: Tlačítko Uber: 7 kroků
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:19
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
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
- 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
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:
Tlačítko rotačního kodéru: 6 kroků
Tlačítko rotačního kodéru: Toto je otočné dálkové ovládání založené na rotačním kodéru. Má následující funkce: Baterie provozovaná při aktivaci s velmi nízkým odběrem proudu Automatická aktivace při otočení ovladače Automatický spánek po období nečinnosti Konfigurovat
Tlačítko Octopus: 8 kroků
Tlačítko Octopus: Octopus s knoflíkovými články nahrazuje knoflíkové baterie. To je užitečné, když nemáte po ruce náhradní baterii. Sloužil k provozu teploměru a vlhkoměru z 4 centové baterie. Je také ukázána výroba této baterie
Nožně ovládané tlačítko Push to Talk: 5 kroků
Nožně ovládané tlačítko Push to Talk: Takto jsem vytvořil tlačítko Push To Talk, které můžete použít s nohama
Zmáčkni tlačítko); // Hra Arduino LCD: 5 kroků (s obrázky)
Zmáčkni tlačítko); // Arduino LCD Game: Nedávno jsem ve skautech pracoval na zásluhovém odznaku Game Design. Pro jeden z požadavků jsem postavil tuto hru pomocí Arduina, který je založen na hře LED Rocker Game. Smyslem hry je získat co nejvyšší počet bodů. Na začátku t
FPGA Cyclone IV DueProLogic - tlačítko a LED: 5 kroků
FPGA Cyclone IV DueProLogic - tlačítko a LED: V tomto tutoriálu použijeme FPGA k ovládání externího obvodu LED. Chystáme se implementovat následující úkoly (A) K ovládání LED použijte tlačítka na FPGA Cyclone IV DuePrologic. (B) Bliká LED na & pravidelně vypnuto Video demo Lab