Съдържание:
- Стъпка 1: Хардуер
- Стъпка 2: API на Uber
- Стъпка 3: Разгърнете на Heroku
- Стъпка 4: [По избор] Безплатни SMS известия с френски мобилен оператор (наречен Free)
- Стъпка 5: Конфигурирайте обратното извикване на Sigfox
- Стъпка 6: Изпълнете, за да тествате
- Стъпка 7: Поръчайте истинско пътуване с Uber
Видео: Бутонът на Uber: 7 стъпки
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:50
Качете се с Uber само с натискане на бутон!
Въведение
В този урок ще използваме услугата за локализация на мрежата Sigfox (която засега може да даде най -много точна позиция на радиус от 1 км), за да получим най -близкото положение до определен адрес и да поискаме съответно пътуване с Uber. Следователно не се нуждаем от устройство с GPS.
Ще използваме Sens'it, но всяко устройство, което може да изпрати съобщение през Sigfox, може да се използва за успешно изпълнение на този урок.
Разгледайте тук, ако искате да имате повече подробности относно производителите на Sigfox.
Стъпка 1: Хардуер
Sens'it (или всяко друго устройство, което може да изпрати съобщение на Sigfox)
Стъпка 2: API на Uber
Ще автоматизираме процеса на поръчка на заявка за пътуване, като извикаме крайните точки на Uber API.
За да разберете как е възможно това, моля, проверете модула на възела, който разработих за простота и яснота на използване. Ще ви е необходим маркер за достъп до Uber API, за да работи. Процедурата за това как да получите този жетон може да бъде намерена на тази страница на GitHub.
Предпоставки
- Валиден акаунт в Uber
- Вашият маркер за достъп до Uber API (проверете по -горе за това как да го получите)
- Активирано устройство на Sigfox Backend (следвайте тази връзка за активиране на Sens'it). Ще ви трябват ИД на устройството и PAC.
Инсталация
В app.js ще бъдат създадени две адресни структури, както следва (със стойности, дефинирани в променливите на средата):
const адрес_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};
Тези адреси ще се използват за определяне на местата за вземане и кацане. Ще ги зададем по -късно.
Ако устройството Sens'it изпрати своята геолокализирана позиция, най-близка до адрес #1, тогава адрес #1 се задава като пикап и адрес #2 се задава като отпадане за заявката за каране. И така нататък за обратното …
Ако услугата за геолокация на Sigfox Backend връща радиус на прецизност, по-голям от разстоянието между двата адреса, заявката на Uber няма да бъде изпълнена (тъй като дестинацията на пристигане не може да бъде определена).
Стъпка 3: Разгърнете на Heroku
Написах приложение, използващо NodeJS, за да автоматизирам процеса на поръчка. Щракнете върху бутона по -долу, за да го инсталирате автоматично на Heroku.
КЛИКНЕТЕ ТУК, ЗА ДЕПЛОЙ
Алтернативен начин да го стартирате в Heroku е да инсталирате Heroku Cli и да следвате тези стъпки:
$ git клонинг
$ cd sigfox_uber $ heroku приложения: създайте $ git push heroku master
Сега преминете към раздела с настройки на вашето приложение Heroku (https://dashboard.heroku.com/apps//settings), за да зададете променливите на средата. Задайте следните променливи (не забравяйте да зададете желаните адреси):
- ACCESS_TOKEN | YOUR_ACCESS_TOKEN
- ADDRESS_1_LAT | 49,009698
- ADDRESS_1_LNG | 2,547882
- ADDRESS_1_NAME | летище
- ADDRESS_2_LAT | 48.876579
- ADDRESS_2_LNG | 2.330618
- ADDRESS_2_NAME | офис
Крайната точка „…/request/: device/: lat/: lng/: radius“ще се извиква всеки път, когато съобщение бъде изпратено до Sigfox Backend (вижте по -долу как да го конфигурирате). Използвайки услугата за геолокализация на Sigfox, сървърът ще получи приблизителната позиция на Sens'it. След това ще поръчате UberX с определените адреси за получаване и изпращане.
За да проверите дали приложението работи, отидете на неговия URL адрес. Трябва да видите „Приложението работи…“в браузъра си. Можете също да проверите регистрационните файлове за повече подробности.
Стъпка 4: [По избор] Безплатни SMS известия с френски мобилен оператор (наречен Free)
Ако имате абонамент за френски безплатен мобилен оператор, можете да използвате безплатния им API за известяване чрез SMS, за да получавате известия на телефона си. За да направите това, просто активирайте услугата във вашата абонатна област и препратете следните променливи на средата в раздела с настройки на вашето приложение Heroku:
- FREE_USER | YOUR_FREE_USER
- FREE_PASS | YOUR_FREE_PASS
Вече ще можете да получавате SMS сигнали относно вашите заявки за UberX.
Стъпка 5: Конфигурирайте обратното извикване на Sigfox
- Влезте тук
- Отидете на https://backend.sigfox.com/devicetype/list, щракнете наляво в реда на вашето устройство и изберете „Редактиране“
- Сега отидете в секцията „ОБАЖДАНИЯ“вляво, изберете „ново“горе вдясно, изберете „Персонализирано обратно обаждане“
- Тип: УСЛУГИ | GEOLOC
- URL адрес на канала
- Модел на URL адрес: https://.herokuapp.com/request/ {device}/{lat}/{lng}/{radius}
- Използвайте HTTP метод: GET
- Изберете „OK“, за да потвърдите
Стъпка 6: Изпълнете, за да тествате
По подразбиране променливата на пясъчника е зададена на true. Това ще фалшифицира заявки за пътуване на Uber, така че банковата ви сметка да не бъде засегната от непреднамерени манипулации.
Натиснете бутона Sens'it два пъти, за да изпратите съобщение през Sigfox. Уверете се, че съобщенията са добре приети на Sigfox Backend. Влезте, отидете в раздела УСТРОЙСТВО и щракнете наляво върху идентификатора на вашето устройство. Можете след това да отидете в раздела Съобщения, за да видите полезния товар.
Стъпка 7: Поръчайте истинско пътуване с Uber
Сега задайте променливата на средата на пясъчника на false, ако искате да поискате истински драйвер на Uber.
ПЕЧАЛБА | невярно
Бутонът Sens'it ще извика пътя …/request/: device/: lat/: lng/: radius и ще задейства заявката за каране на Uber!
Можете също да видите текущото състояние на заявката на…/request/current.
За да отмените поръчка, този път може да се използва:…/request/cancel.
Да караме
Забавлявайте се, като поръчвате своя Ubers!
Антоан дьо Шаси
Препоръчано:
Първи стъпки с безжични сензори за температура и вибрации на дълги разстояния: 7 стъпки
Първи стъпки с безжични сензори за температура и вибрации на дълги разстояния: Понякога вибрациите са причина за сериозни проблеми в много приложения. От валове и лагери на машината до работа на твърдия диск, вибрациите причиняват повреда на машината, ранна подмяна, ниска производителност и нанасят сериозен удар върху точността. Мониторинг
Първи стъпки с STM32f767zi Cube IDE и качване на персонализирана скица: 3 стъпки
Първи стъпки с STM32f767zi Cube IDE и качване на персонализирана скица: КУПЕТЕ (щракнете върху теста, за да закупите/посетете уеб страницата) STM32F767ZISUPPORTED SOFTWARE · STM32CUBE IDE · KEIL MDK ARM µVISION · EWARM IAR EMBEDDED WORKBENCH използва се за програмиране на STM микроконтролери
Uber I2C LCD контролерен модул: 6 стъпки
Uber I2C LCD контролерен модул: Преамбюл Тези инструкции описват как да създадете HD44780 LCD базиран контролерен модул (снимка 1 по -горе). Модулът позволява на потребителя да контролира програмно всички аспекти на LCD дисплея през I2C, включващ; LCD и дисплей, контраст и интензивност на задната светлина
Hexapod Arduino Über Eine SSC32: 5 стъпки
Hexapod Arduino Über Eine SSC32: Link zum http://youtu.be/E5Z6W_PGNAgMein erster versuch eines eigenbau Hexapod
Бутонът за парти: 6 стъпки
Бутонът за парти: Представете си това: Вие и вашите приятели инструктори току -що публикувахте най -добрите инструкции за лицето на тази планета. Какъв по -добър начин да празнувате от това да извадите новия си ПАРТИЙСКИ БУТОН !!!!! P.S. Извинявам се предварително за някои от тези снимки