Taula de continguts:

El botó Uber: 7 passos
El botó Uber: 7 passos

Vídeo: El botó Uber: 7 passos

Vídeo: El botó Uber: 7 passos
Vídeo: Как заставить работать - САМОЛЕТНЫЕ СВЕЧИ 2024, De novembre
Anonim
El botó Uber
El botó Uber

Obteniu un viatge Uber només prement un botó.

Introducció

En aquest tutorial, farem servir el servei de localització de la xarxa Sigfox (que, per ara, pot donar una precisió de posició de radi com a màxim 1 km) per obtenir la posició més propera a una adreça especificada i sol·licitar un viatge Uber en conseqüència. Per tant, no necessitem cap dispositiu amb GPS.

Utilitzarem un Sens'it, però qualsevol dispositiu capaç d'enviar un missatge a través de Sigfox es pot utilitzar per realitzar aquest tutorial amb èxit.

Mireu aquí si voleu obtenir més informació sobre els fabricants de Sigfox.

Pas 1: maquinari

Un Sens'it (o qualsevol altre dispositiu capaç d'enviar un missatge Sigfox)

Pas 2: l'API Uber

Automatitzarem el procés de comanda d’una sol·licitud de viatge trucant als punts finals de l’API Uber.

Per tal d’entendre com és possible, assegureu-vos de comprovar el mòdul de node que he desenvolupat amb finalitats de simplicitat i claredat d’ús. Necessitareu un testimoni d’accés a l’API Uber perquè funcioni. El procediment de com obtenir aquest testimoni es pot trobar en aquesta pàgina de GitHub.

Requisits previs

  • Un compte vàlid d'Uber
  • El vostre testimoni d'accés a l'API Uber (consulteu més amunt com obtenir-lo)
  • Un dispositiu activat al Sigfox Backend (seguiu aquest enllaç per activar Sens'it). Necessitareu la identificació del dispositiu i el PAC.

Instal·lació

A app.js, es crearan dues estructures d’adreces de la següent manera (amb valors definits a les variables d’entorn):

adreça const_1 = {

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

Aquestes adreces s’utilitzaran per especificar les ubicacions de recollida i devolució. Els configurarem més endavant.

Si el dispositiu Sens'it envia la seva posició geolocalitzada més propera a l'adreça # 1, l'adreça # 1 s'estableix com a recollida i l'adreça # 2 s'estableix com a sortida per a la sol·licitud de viatge. I així successivament al revés …

Si el servei de geolocalització de Sigfox Backend retorna un radi de precisió superior a la distància entre les dues adreces, la sol·licitud Uber no s’executarà (ja que no es pot determinar la destinació d’arribada).

Pas 3: desplegueu a Heroku

Desplegueu a Heroku
Desplegueu a Heroku
Desplegueu a Heroku
Desplegueu a Heroku

Vaig escriure una aplicació amb NodeJS per automatitzar el procés de comanda. Feu clic al botó següent per desplegar-lo automàticament a Heroku.

FES CLIC AQUÍ PER EMPLEAR

Una forma alternativa de fer-lo funcionar a Heroku és instal·lar Heroku Cli i seguir aquests passos:

$ git clone

$ cd sigfox_uber $ heroku apps: create $ git push heroku master

Ara aneu a la pestanya de configuració de la vostra aplicació Heroku (https://dashboard.heroku.com/apps//settings) per establir les variables d’entorn. Establiu les variables següents (assegureu-vos d’establir les adreces que desitgeu):

  • ACCESS_TOKEN | YOUR_ACCESS_TOKEN
  • ADREÇA_1_LAT | 49.009698
  • ADREÇA_1_LNG | 2.547882
  • ADRESSA_1_NAME | aeroport
  • ADREÇA_2_LAT | 48,876579
  • ADREÇA_2_LNG | 2.330618
  • ADRESSA_2_NAME | despatx

El punt final "… / request /: device /: lat /: lng /: radius" es cridarà cada vegada que s'enviï un missatge al Sigfox Backend (vegeu més avall com configurar-lo). En utilitzar el servei de geolocalització Sigfox, el servidor rebrà la posició aproximada de Sens'it. Tot seguit, s’ordenarà un UberX amb les adreces de recollida i lliurament determinades.

Per comprovar si l'aplicació s'està executant, aneu al seu URL. Hauríeu de veure "L'aplicació s'està executant …" al navegador. També podeu consultar els registres per obtenir més informació.

Pas 4: [Opcional] Notificacions SMS gratuïtes amb un operador mòbil francès (anomenat gratuït)

Si teniu una subscripció gratuïta a l'operador de telefonia mòbil francès, podeu utilitzar la seva API de notificació per SMS per rebre notificacions al telèfon. Per fer que això funcioni, simplement activeu el servei a la vostra zona de subscriptors i consulteu les variables d'entorn següents a la pestanya de configuració de la vostra aplicació Heroku:

  • FREE_USER | YOUR_FREE_USER
  • FREE_PASS | YOUR_FREE_PASS

Ara podreu rebre alertes per SMS sobre les vostres sol·licituds d’UberX.

Pas 5: configureu la devolució de trucada de Sigfox Backend

Configureu la devolució de trucada de Sigfox Backend
Configureu la devolució de trucada de Sigfox Backend
  • Inicieu sessió aquí
  • Aneu a https://backend.sigfox.com/devicetype/list, feu clic a l'esquerra a la fila del dispositiu i seleccioneu "Edita"
  • Ara aneu a la secció "RECURSOS" a l'esquerra, seleccioneu "nou" a la part superior dreta, seleccioneu "Devolució de trucada personalitzada"
  • Tipus: SERVEI | GEOLOC
  • URL del canal
  • Patró d'URL: https://.herokuapp.com/request/ {device} / {lat} / {lng} / {radius}
  • Utilitzeu el mètode HTTP: GET
  • Seleccioneu "D'acord" per validar

Pas 6: executeu la prova

Per defecte, la variable sandbox està definida com a true. Això falsificarà les sol·licituds d'Uber ride perquè el vostre compte bancari no es vegi afectat per manipulacions involuntàries.

Premeu el botó Sens'it dues vegades per enviar un missatge a través de Sigfox. Assegureu-vos que els missatges siguin ben rebuts al Sigfox Backend. Inicieu la sessió, aneu a la secció DEVICE i feu clic a l'esquerra a l'identificador del dispositiu. Podeu anar a la secció MISSATGES per veure les càrregues útils.

Pas 7: demaneu un viatge real a Uber

Demaneu una autèntica Uber Ride
Demaneu una autèntica Uber Ride

Ara configureu la variable d'entorn de la caixa de sorra a false si voleu sol·licitar un controlador Uber real.

SANDBOX | fals

El botó Sens'it cridarà al camí … / request /: device /: lat /: lng /: radius i activarà la sol·licitud de viatge Uber.

També podeu veure l’estat de la sol·licitud actual a … / request / current.

Per cancel·lar una comanda, es pot utilitzar aquest camí: … / sol·licitar / cancel·lar.

Anem amb cotxe

Diverteix-te demanant els teus Ubers!

Antoine de Chassey

Recomanat: