Mục lục:
- Bước 1: Phần cứng
- Bước 2: API Uber
- Bước 3: Triển khai trên Heroku
- Bước 4: [Tùy chọn] Thông báo SMS miễn phí với nhà cung cấp dịch vụ di động của Pháp (có tên Miễn phí)
- Bước 5: Định cấu hình cuộc gọi lại phụ trợ Sigfox
- Bước 6: Chạy để kiểm tra
- Bước 7: Đặt một chuyến đi Uber thực sự
Video: Nút Uber: 7 bước
2024 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2024-01-30 13:31
Nhận một chuyến đi Uber chỉ bằng cách nhấn một nút!
Giới thiệu
Trong hướng dẫn này, chúng tôi sẽ sử dụng dịch vụ bản địa hóa mạng Sigfox (hiện tại có thể cung cấp độ chính xác vị trí bán kính tối đa là 1km) để có được vị trí gần nhất với một địa chỉ được chỉ định và yêu cầu một chuyến xe Uber tương ứng. Do đó, chúng ta không cần thiết bị có GPS.
Chúng tôi sẽ sử dụng Sens'it nhưng bất kỳ thiết bị nào có thể gửi tin nhắn qua Sigfox đều có thể được sử dụng để thực hiện thành công hướng dẫn này.
Hãy xem ở đây nếu bạn muốn biết thêm chi tiết về các nhà sản xuất Sigfox.
Bước 1: Phần cứng
Một Sens'it (hoặc bất kỳ thiết bị nào khác có thể gửi tin nhắn Sigfox)
Bước 2: API Uber
Chúng tôi sẽ tự động hóa quy trình đặt hàng của một yêu cầu đi xe bằng cách gọi các điểm cuối API Uber.
Để hiểu cách thực hiện điều này, hãy đảm bảo xem mô-đun nút mà tôi đã phát triển vì mục đích sử dụng đơn giản và rõ ràng. Bạn sẽ cần một mã thông báo truy cập vào API Uber để nó hoạt động. Bạn có thể tìm thấy quy trình về cách lấy mã thông báo này trên trang GitHub này.
Điều kiện tiên quyết
- Tài khoản hợp lệ của Uber
- Mã thông báo truy cập API Uber của bạn (kiểm tra ở trên để biết cách lấy)
- Một thiết bị đã được kích hoạt trên Sigfox Backend (theo liên kết này để kích hoạt Sens'it). Bạn sẽ cần ID thiết bị và PAC.
Cài đặt
Trong app.js, hai cấu trúc địa chỉ sẽ được tạo như sau (với các giá trị được xác định trong các biến môi trường):
const address_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};
Các địa chỉ này sẽ được sử dụng để chỉ định địa điểm đón và trả khách. Chúng tôi sẽ đặt chúng sau.
Nếu thiết bị Sens'it gửi vị trí địa lý của nó gần nhất với địa chỉ số 1, thì địa chỉ số 1 được đặt làm điểm đón và địa chỉ số 2 được đặt làm điểm trả khách cho yêu cầu đi xe. Và cứ thế ngược lại…
Nếu dịch vụ định vị địa lý Sigfox Backend trả về bán kính chính xác lớn hơn khoảng cách giữa hai địa chỉ, yêu cầu Uber sẽ không được thực hiện (vì không thể xác định điểm đến).
Bước 3: Triển khai trên Heroku
Tôi đã viết một ứng dụng sử dụng NodeJS để tự động hóa quy trình đặt hàng. Nhấp vào nút bên dưới để tự động triển khai nó trên Heroku.
BẤM VÀO ĐÂY ĐỂ TRẢ LỜI
Một cách khác để làm cho nó chạy tại Heroku là cài đặt Heroku Cli và làm theo các bước sau:
$ git clone
Ứng dụng $ cd sigfox_uber $ heroku: tạo $ git push heroku master
Bây giờ, hãy chuyển đến tab cài đặt của ứng dụng Heroku của bạn (https://dashboard.heroku.com/apps//settings) để đặt các biến môi trường. Đặt các biến sau (đảm bảo đặt địa chỉ bạn muốn):
- ACCESS_TOKEN | BẠN_ACCESS_TOKEN
- ADDRESS_1_LAT | 49,009698
- ĐỊA CHỈ_1_LNG | 2,547882
- ADDRESS_1_NAME | sân bay
- ADDRESS_2_LAT | 48,876579
- ĐỊA CHỈ_2_LNG | 2.330618
- ADDRESS_2_NAME | văn phòng
Điểm cuối "… / request /: device /: lat /: lng /: radius" sẽ được gọi mỗi khi tin nhắn được gửi đến Sigfox Backend (xem bên dưới cách cấu hình nó). Bằng cách sử dụng dịch vụ định vị địa lý Sigfox, máy chủ sẽ nhận được vị trí gần đúng của Sens'it. Sau đó, điều này sẽ đặt một UberX với địa chỉ đón và trả khách đã xác định.
Để kiểm tra xem ứng dụng có đang chạy hay không, hãy truy cập URL của ứng dụng. Bạn sẽ thấy "Ứng dụng đang chạy…" trên trình duyệt của mình. Bạn cũng có thể kiểm tra nhật ký để biết thêm chi tiết.
Bước 4: [Tùy chọn] Thông báo SMS miễn phí với nhà cung cấp dịch vụ di động của Pháp (có tên Miễn phí)
Nếu bạn có đăng ký nhà cung cấp dịch vụ di động Miễn phí của Pháp, bạn có thể sử dụng API thông báo SMS miễn phí của họ để nhận thông báo trên điện thoại của mình. Để làm cho việc này hoạt động, chỉ cần kích hoạt dịch vụ trong khu vực người đăng ký của bạn và tham khảo các biến môi trường sau trong tab cài đặt của ứng dụng Heroku của bạn:
- MIỄN PHÍ_USER | BẠN_FREE_USER
- MIỄN_PHÍ | YOUR_FREE_PASS
Giờ đây, bạn sẽ có thể nhận được thông báo qua SMS liên quan đến các yêu cầu UberX của mình.
Bước 5: Định cấu hình cuộc gọi lại phụ trợ Sigfox
- Đăng nhập tại đây
- Truy cập https://backend.sigfox.com/devicetype/list, nhấp chuột trái vào hàng thiết bị của bạn và chọn "Chỉnh sửa"
- Bây giờ vào phần "CALLBACKS" ở bên trái, chọn "new" ở trên cùng bên phải, chọn "Custom Callback"
- Loại hình: DỊCH VỤ | GEOLOC
- URL kênh
- Mẫu url: https://.herokuapp.com/request/ {device} / {lat} / {lng} / {radius}
- Sử dụng phương thức HTTP: GET
- Chọn "OK" để xác thực
Bước 6: Chạy để kiểm tra
Theo mặc định, biến hộp cát được đặt thành true. Điều này sẽ giả mạo các yêu cầu đi xe Uber để tài khoản ngân hàng của bạn không bị ảnh hưởng bởi các thao tác không chủ ý.
Nhấn nút Sens'it hai lần để gửi tin nhắn qua Sigfox. Đảm bảo rằng các tin nhắn được nhận trên Sigfox Backend. Đăng nhập, vào phần THIẾT BỊ và nhấp chuột trái vào Id thiết bị của bạn. Bạn không thể vào phần MESSAGES để xem trọng tải.
Bước 7: Đặt một chuyến đi Uber thực sự
Bây giờ, hãy đặt biến môi trường hộp cát thành false nếu bạn muốn yêu cầu một tài xế Uber thực sự.
SANDBOX | sai
Nút Sens'it sẽ gọi đường dẫn… / request /: device /: lat /: lng /: radius và kích hoạt yêu cầu đi xe Uber!
Bạn cũng có thể xem trạng thái yêu cầu hiện tại trên… / request / current.
Để hủy đơn đặt hàng, bạn có thể sử dụng đường dẫn này:… / request / hủy bỏ.
Hãy lái xe
Hãy vui vẻ khi đặt hàng Ubers của bạn!
Antoine de Chassey
Đề xuất:
Nút tắt tiếng của Microsoft Teams: 4 bước
Nút tắt tiếng của Microsoft Teams: Tạo một nút bấm dễ tiếp cận để tự tắt tiếng / bật tiếng trong khi thực hiện cuộc gọi Microsoft Teams! Bởi vì năm 2020. Dự án này sử dụng Adafruit Circuit Playground Express (CPX) và một nút nhấn lớn để tạo nút tắt tiếng cho Microsoft Teams thông qua phím nóng
Nút tự động hóa nhà $ 5: 4 bước
Nút Tự động hóa Trang chủ $ 5: Một Nút Tự động hóa Trang chủ $ 5 Đôi khi giải pháp đơn giản nhất là một nút duy nhất. Chúng tôi muốn có một cách dễ dàng để kích hoạt thói quen “đi ngủ” trên trung tâm tự động hóa tại nhà của chúng tôi (Hubitat Elevation), tắt hầu hết các đèn, đặt những người khác ở các mức cụ thể và
Cách sử dụng động cơ bước 28BYJ-48 với 3 nút đẩy: 5 bước
Cách sử dụng động cơ bước 28BYJ-48 với 3 nút ấn: Bạn có muốn điều khiển động cơ bước của mình bằng các nút ấn không? Điều đó có thể làm theo chiều kim đồng hồ, ngược chiều kim đồng hồ và sau đó dừng chức năng? Sau đó, video này là dành cho bạn
Bộ điều khiển bước được kích hoạt bằng nút: 4 bước
Bộ điều khiển bước được kích hoạt bằng nút:
Bộ vi điều khiển AVR. Chuyển đổi đèn LED bằng Công tắc nút nhấn. Nút nhấn Debouncing: 4 bước
Bộ vi điều khiển AVR. Chuyển đổi đèn LED bằng Công tắc nút nhấn. Nhấn nút Debouncing: Trong phần này, chúng ta sẽ tìm hiểu Cách tạo mã chương trình C cho ATMega328PU để chuyển đổi trạng thái của ba đèn LED theo đầu vào từ một công tắc nút. Ngoài ra, chúng tôi đã khám phá một giải pháp cho vấn đề là ‘Chuyển đổi số lần trả lại‘. Như thường lệ, chúng tôi sẽ