@City IoT Nền tảng đám mây
iSys - Hệ thống thông minh IoT Giải pháp
IoE.Systems
Mục lục
1. Giới thiệu. 5
1.1 Các loại thiết bị được hỗ trợ. 5
1.2. Các loại sản phẩm được hỗ trợ. 5
1.3. Các giao thức truyền thông được hỗ trợ 5
1.4. Công nghệ truyền thông được hỗ trợ của các thiết bị 6
1.5. @City Cloud Server 6
1.5.1. Các cổng giao tiếp và máy chủ 7
1.5.2 Tích hợp HTTP LoRaWAN 7
1.5.3. Giao diện front-end 8
1.5.3. Quyền truy cập máy chủ 8
1.6. Thiết bị thông minh 9
1.6.1. CIoT - Thiết bị GSM 9
1.6.3. BAS, BMS, IoT - Thiết bị Ethernet và WiFi 9
1.6.2. IoT Thiết bị -LoRaWAN 9
1.7. Các tùy chọn từ Doanh nghiệp đến Doanh nghiệp (B2B) 9
2. @City IoT Chức năng nền tảng 10
3. Trang chính 11
4. Mẫu chính 11
4.1. Tiêu đề 12
4.1.1. Liên kết Trang chủ - (mở bảng kết quả thực tế) 12
4.1.2. Hộp kiểm "X" - mở / đóng Biểu mẫu truy vấn 12
4.1.3. Hộp kiểm "V" - mở / đóng Mẫu trường 12
4.1.4. Biểu tượng đồ họa - liên kết đến kết quả trực quan hóa (có thể chỉnh sửa) 12
4.2. Hình thức: 12
4.2.1. Hộp kiểm "X" - mở / đóng toàn bộ Biểu mẫu truy vấn 12
4.2.2. CSS - Chọn Chủ đề Hình ảnh hóa 12
4.2.3 Hộp kiểm Các trường có thể chia sẻ - hiển thị / ẩn Danh sách Bộ lọc Trường 12
4.2.4. Tab: Tên Tab để thêm hoặc bớt 12
4.2.5. Thêm / Xóa các nút - Thêm hoặc xóa các tab có tên trong trường Tab 12
4.2.6. Chọn nút lõi 12
4.2.7. Bỏ chọn tất cả nút 12
4.2.7. Chọn tất cả nút 12
4.2.8. Ẩn bộ lọc - Ẩn toàn bộ Biểu mẫu 12
4.2.9. Nút Thực thi - Thay đổi cài đặt thông số 13
4,2.10. Hộp kiểm "V" - hiển thị / trường bộ lọc cao. 13
4.3. Tab 13
4.4. Mục lục 13
4.4.1. Run - xem kết quả loại 13
4.4.2. Sao chép (liên kết +/-) 13
4.4.3. Liên kết ô trong bảng 13
4.5. Thứ tự dữ liệu 13
4.6. Ví dụ 13
5. Bản đồ 15
5.1. Khởi tạo bản đồ 15
5.2. Cài đặt Tùy chọn cho truy vấn 15
5.2.1. Sửa đổi thang đo MAP (Mức thu phóng) 16
5.2.2. IMEI (Chọn trường thiết bị) 16
5.2.3. Lon, Lat (Trường tọa độ Kinh độ, Vĩ độ) 16
5.2.4. Sửa đổi kiểu MAP (Chủ đề) 16
5.2.5. Mệnh đề WHERE 16
5.2.6. Thực thi (Nút Chạy truy vấn) 16
5.2.7. Bỏ chọn Tất cả (Xóa tất cả các trường khỏi truy vấn) 17
5.2.8. Hộp kiểm "V" (Mở / Đóng Biểu mẫu Trường) 17
5.2.9. Hộp kiểm "X" (Hiển thị / Ẩn Biểu mẫu Truy vấn) 17
5.3. Ví dụ 17
6. Hiển thị kết quả trong bảng 18
6.1. Khởi tạo bảng 18
6.2. Cài đặt Tùy chọn cho truy vấn 19
6.2.1. Sắp xếp - trường sắp xếp và thứ tự tăng dần / giảm dần 19
6.2.2. DB / IMEI - Chọn thiết bị 19
6.2.3. CSS - chọn kiểu (Chủ đề trực quan hóa) 20
6.2.4. Các trường hiển thị - Hiển thị / Ẩn các trường Mẫu 20
6.2.5. Loại bỏ Trống - Không hiển thị các cột trống 20
6.2.6. Hộp kiểm "X" (Hiển thị / Ẩn Biểu mẫu Truy vấn) 20
6.2.7. Mệnh đề Where (đối với giới hạn dữ liệu) 20
6.2.8. Chọn nút cốt lõi (Bật các trường phổ biến nhất) 20
6.2.9. Nút Bỏ chọn Tất cả (Xóa tất cả các trường khỏi truy vấn) 20
6.2.10. Thực thi (Nút Chạy truy vấn) 20
6.2.11. Hộp kiểm "V" (Mở / Đóng Biểu mẫu Trường) 20
7. Biểu đồ thanh. 21
số 8. Biểu đồ lịch sử. 22
8.1. Khởi tạo biểu đồ Lịch sử 22
8.2. Cài đặt Tùy chọn của Biểu đồ Lịch sử 23
8.2.1. IMEI - (Chọn Thiết bị để hiển thị dữ liệu lịch sử) 23
8.2.2. Min - giới hạn giá trị nhỏ nhất của trường đầu tiên 23
8.2.3. Max - giới hạn giá trị lớn nhất của trường đầu tiên 23
8.2.4. "V" - Hiển thị / Ẩn Trường Mẫu 23
8.2.5. Từ: đặt ngày / giờ tối thiểu (*) 23
8.2.6. Tới: đặt ngày / giờ tối đa (*) 23
8.2.7. Hộp kiểm "X" (Hiển thị / Ẩn Biểu mẫu Truy vấn) 23
8.2.8. "Ở đâu" Khoản 23
8.2.9. Nút Bỏ chọn Tất cả (Xóa tất cả các trường khỏi truy vấn) 23
8.2.10. Thực thi (Nút Chạy truy vấn) 23
8.2.11. Hộp kiểm "V" (Mở / Đóng Biểu mẫu Trường) 24
8.3. Biến thể thanh: (chỉ hiển thị dữ liệu có sẵn) 24
8,4. Biến thể liên tục (với cùng một dữ liệu): 24
9. Khả năng tương thích của trình duyệt web 25
10. Tùy chỉnh chủ đề 26
11. Cập nhật thuật toán 27
12. Cấu trúc cơ sở dữ liệu 28
12.1. Cấu trúc bảng "ithings_" và "*" 29
12.2. Lệnh thiết bị (Sự kiện) bảng "* _c" hàng đợi - cấu trúc 30
12.3. Truy cập kết quả từ cơ sở dữ liệu - Mức trung bình (Đọc dữ liệu) 30
12.3.1. Nhận trạng thái hiện tại của tất cả các thiết bị 30
12.3.2. Nhận dữ liệu lịch sử cho Thiết bị 31
12.3.3. Nhận danh sách thiết bị - trường đơn từ các trạng thái hiện tại với giới hạn 32
@City IoT Cloud Platform dành riêng cho "đám mây vi mô" hệ thống dành cho khách hàng cá nhân. Nền tảng không thể chia sẻ và chỉ một khách hàng có quyền truy cập vào máy chủ vật lý hoặc máy chủ ảo (VPS hoặc máy chủ chuyên dụng). Khách hàng có thể chọn một trong hàng chục trung tâm dữ liệu ở Châu Âu hoặc trên thế giới.
Nền tảng @City IoT dành riêng cho việc theo dõi các sản phẩm iSys.PL
IoT - RF / LoRaWAN (Internet vạn vật)
CIoT - GSM / 2G / 3G / 4G / CATM1 / NBIoT (Mạng di động của vạn vật)
Wifi
Ethernet
@City (eCity) Cloud IoT Platform là hệ thống kích thước khác nhau dành cho các sản phẩm IP IoT (được gọi chung là Phần cứng @City hoặc là Thiết bị CioT ):
@City
@Ánh sáng
@Metering
@Trace
@AirQ
@Thùng rác
Nền tảng @City IoT hỗ trợ các giao thức sau để giao tiếp:
UDP - được đề xuất cho cảm biến / thiết bị CIoT (đặc biệt là NBIoT) - sử dụng dữ liệu thấp nhất
TCPIP - được đề xuất cho các thiết bị có giao tiếp hai chiều - bắt tay / xác nhận
HTTP - chỉ được đề xuất cho truy cập dữ liệu / trực quan hóa / xuất / "đám mây đến đám mây"
HTTP Webhooks - dành cho giao tiếp LoRaWAN giữa Mạng LoRaWAN / Máy chủ ứng dụng và @City Cloud.
Dữ liệu gửi từ bộ điều khiển đến máy chủ đám mây và ngược lại được mã hóa ở định dạng nhị phân duy nhất để có kích thước dữ liệu thấp nhất và tăng tính bảo mật. Mỗi đối tác nhận được khóa mã hóa duy nhất của riêng mình để ủy quyền thiết bị, kiểm tra tính hợp lệ của dữ liệu, v.v.
Đối với các thiết bị không phải eHouse / eCity, chúng tôi có thể cung cấp các thuật toán mã hóa riêng lẻ ( "C" mã nguồn) cho từng đối tác để bộ vi xử lý bảo vệ dữ liệu trước khi giao tiếp.
Trong trường hợp này, dữ liệu được bảo mật hoàn toàn trong quá trình giao tiếp hai chiều qua các phương tiện truyền thông công cộng (internet, Air, v.v. ).
Nền tảng @City IoT hỗ trợ:
GSM: 2G, 3G, 4G (LTE), CATM1 (LTEM1), NBIoT - thiết bị (giao tiếp UDP / TCPIP)
Thiết bị LoRaWAN (HTTP Webhooks) - thông qua cổng LoRaWAN và máy chủ ứng dụng / mạng LoRaWAN
Bộ điều khiển Ethernet (giao tiếp UDP / TCP)
Bộ điều khiển WiFi (giao tiếp UDP / TCP)
Các sản phẩm IP trong tương lai
Các sản phẩm không phải IP thông qua local @ City / eHouse.PRO Hardware Gateway bổ sung
@City IoT Nền tảng dành riêng cho các thiết bị / nút:
Các sản phẩm iSys bản địa:
CIoT (GSM / 2G / 3G / 4G / CATM1 / NBIoT)
IoT (LoRaWAN)
WiFi - sản phẩm chuyên dụng cho Nền tảng @City
Ethernet - sản phẩm chuyên dụng cho Nền tảng @City
Sản phẩm đồng sản xuất (do bên thứ ba sản xuất theo giấy phép iSys và thương hiệu bên ngoài)
Sản phẩm nhượng quyền (do bên thứ ba sản xuất theo giấy phép của iSys với logo iSys)
Phần mềm @City hoạt động trên VPS dựa trên Linux (Máy chủ riêng ảo) hoặc Máy chủ chuyên dụng trên mạng internet, tùy thuộc vào hiệu suất được yêu cầu của Máy chủ (sau này được gọi là Máy chủ):
truy cập riêng tư / công cộng
tổng số thiết bị
cập nhật tần suất trạng thái thiết bị
tốc độ làm mới dữ liệu
Một số biến thể của VPS tồn tại tùy thuộc vào:
Giá bán
địa lý hóa trung tâm dữ liệu
Lõi bộ xử lý ảo (1-8)
RAM ảo (1-32GB)
Đĩa SSD (20GB-1TB)
Hàng chục máy chủ chuyên dụng tồn tại tùy thuộc vào:
Giá bán
địa lý hóa trung tâm dữ liệu
Lõi bộ xử lý (4.. 32)
RAM (16.. 512GB)
SSD / HDD (256GB .. 8TB)
Nền tảng @City IoT dành riêng cho một khách hàng:
chính quyền và cơ quan chức năng địa phương (Thành phố, Cộng đồng, Quốc gia)
B2B (dành cho chủ sở hữu bên thứ ba)
Bởi vì nó không phải là Máy chủ có thể chia sẻ giữa các khách hàng, nó đơn giản hóa các vấn đề về truy cập bảo mật và hiệu suất. Vì lý do này, chỉ khách hàng chịu trách nhiệm về bảo mật hiệu quả, tính ổn định, hiệu quả, thông lượng dữ liệu, v.v. Trong trường hợp không đủ hiệu suất, khách hàng có thể mua gói cao hơn (VPS hoặc Máy chủ chuyên dụng), tối ưu hơn về chức năng và hiệu suất mong đợi.
Trong những trường hợp đặc biệt "Cloud to cloud" giao tiếp có thể được thực hiện để toàn cầu hóa và tập trung dữ liệu cho các khu vực lớn hơn thay vì đám mây đa khách hàng.
Giao tiếp của Máy chủ @City được thực hiện dựa trên ứng dụng cấp thấp để tối đa hóa hiệu suất.
Các tính năng chính của ứng dụng @City Server là:
nhận dữ liệu không đồng bộ từ các thiết bị (thông qua các giao thức: UDP, TCP IP, HTTP)
giảm thiểu việc sử dụng dữ liệu và chi phí của nó giữa các thiết bị và Đám mây (bằng cách sử dụng các giao thức truyền thông cấp thấp UDP, TCP IP)
nhận trạng thái được mã hóa của thiết bị (thông qua bất kỳ phương tiện truyền thông nào)
ủy quyền và xác thực dữ liệu từ các thiết bị bằng cách giải mã trạng thái của chúng
giải mã trạng thái thiết bị và cập nhật trực tiếp vào bảng MariaDB / MySQL (ở định dạng dữ liệu thô)
bảng dữ liệu hiện tại (chỉ chứa trạng thái mới nhất của mỗi thiết bị)
bảng dữ liệu lịch sử (chứa tất cả các trạng thái cho một thiết bị)
gửi các lệnh đang chờ xử lý (Sự kiện) đến các thiết bị
đảm bảo bắt tay, xác minh và xác nhận
Phần mềm @City Server là giống nhau cho mỗi người dùng và không thể tùy chỉnh cho các khách hàng khác nhau.
Bộ điều khiển LoRaWAN được tích hợp với đám mây @City thông qua giao diện HTTP (webhooks) có sẵn trên máy chủ ứng dụng / mạng LoRaWAN.
Một số loại máy chủ mạng / ứng dụng được hỗ trợ:
TTN (thời gian có hạn "Giữa không trung" và số lượng lệnh tối đa được gửi đến trình điều khiển và không hỗ trợ nâng cấp chương trình cơ sở)
LoraWAN-Stack (Yêu cầu lưu trữ trên thiết bị vật lý có truy cập internet).
LoraServer.Io (Yêu cầu lưu trữ trên thiết bị vật lý có truy cập internet - chỉ gửi dữ liệu đến máy chủ và không hỗ trợ nâng cấp phần sụn)
@City Cloud dành cho bộ điều khiển LoRaWAN được phân chia theo cách tương tự như đối với các giao diện khác. Nó được thảo luận trong chương trước.
Giao diện front-end được hiện thực hóa với các tập lệnh PHP để trích xuất dữ liệu tùy chỉnh từ Cơ sở dữ liệu đám mây @City. Nó sử dụng cơ chế tìm kiếm rất đàn hồi, dựa trên các truy vấn SQL gốc để giới hạn dữ liệu mong muốn. Giao diện cung cấp kết quả truy vấn ở định dạng JSON để giải mã và xử lý thêm bằng "ứng dụng" JavaScript Web Front-end.
Giao diện front-end gốc giống nhau đối với mỗi người dùng và không thể tùy chỉnh cho các khách hàng khác nhau.
Giao diện lớp phủ có thể được tạo bởi nhân viên của chúng tôi hoặc hợp tác để đảm bảo tùy chỉnh cho khách hàng.
Quyền truy cập của khách hàng (vào Máy chủ vật lý) bị hạn chế.
Chỉ truy cập tệp cho thư mục "mẫu" (tệp văn bản gốc - .txt, .js, .css, .html):
thêm, xóa, sửa đổi các tệp HTML thuần túy (Giao diện người dùng / Phát triển giao diện)
thêm, xóa, sửa đổi các tệp thuần túy (Giao diện người dùng / Phát triển giao diện và các thuật toán)
thêm, xóa, sửa đổi Tệp CSS thuần túy (Giao diện người dùng - Chế độ xem tùy chỉnh / Chủ đề)
thêm, xóa, sửa đổi tệp văn bản của mẫu (Giao diện người dùng cuối)
thêm, xóa, sửa đổi tab, phím tắt, liên kết đến kết quả dữ liệu
Các quyền truy cập khác:
Toàn quyền truy cập vào Cơ sở dữ liệu đám mây @City MySQL / MariaDB, nơi tất cả dữ liệu thiết bị được lưu trữ
Quyền truy cập vào Dịch vụ Web được xác định (thông tin xác thực) cho khách hàng.
Khách hàng không được phép chuyển thông tin đăng nhập cho bên thứ ba (nhiều quyền truy cập kết quả có thể ảnh hưởng đến hiệu suất, sự ổn định và bảo mật của toàn bộ hệ thống)
Trong những trường hợp đặc biệt và việc sử dụng Máy chủ chuyên dụng hiệu suất cao, tài khoản công cộng có thể được thiết lập để quan sát hầu hết dữ liệu hiện tại (không phải lịch sử).
Người dùng có thể sao chép dữ liệu sang máy chủ MySQL của riêng mình và thực hiện phân tích và xử lý dữ liệu của riêng mình, để không ảnh hưởng đến hiệu suất của Máy chủ @City
iSys - nhân viên Hệ thống thông minh - có quyền truy cập không giới hạn vào toàn bộ máy chủ bao gồm tài khoản gốc và toàn quyền truy cập DB để bảo trì.
Trong một số trường hợp nhất định, iSys có thể cấp thêm các quyền hạn chế cho khách hàng (tập lệnh PHP, tệp) sau khi kiểm tra mã nguồn, chạy thử nghiệm, nếu điều đó không ảnh hưởng đến bảo mật, tính ổn định và hiệu suất tổng thể của hệ thống.
Thiết bị của chúng tôi chứa bộ vi điều khiển và mô-đun GSM / GPS / GNSS (2G..4G, NBIoT, CATM1) để giao tiếp. Bộ vi điều khiển chứa bộ nạp khởi động được mã hóa để nâng cấp chương trình cơ sở OTA an toàn. Điều này cho phép tạo nhiều biến thể hệ thống dựa trên cùng một "CIoT thiết bị thông minh".
Bộ điều khiển Ethernet và WiFi cho phép giao tiếp dựa trên IP với hệ thống (không tính phí truyền dữ liệu đến nhà khai thác GSM). Thiết bị này cũng có bộ nạp khởi động được mã hóa và các thiết bị có thể được cập nhật thông qua giao diện gốc của nó. Đối với WiFi, nó có nâng cấp firmware OTA từ máy chủ chính
LoRaWAN cho phép truyền dữ liệu trong khoảng cách rất xa (lên đến khoảng. 15 km). Phạm vi này phụ thuộc vào tốc độ truyền dữ liệu, lượng dữ liệu, đô thị hóa của khu vực và hiệu quả của các đường dẫn vô tuyến của các thiết bị.
Các thiết bị của chúng tôi bao gồm một bộ vi điều khiển và mô-đun LoRaWAN để giao tiếp. Bộ vi điều khiển chứa bộ nạp khởi động được mã hóa để cập nhật phần mềm OTA an toàn. Điều này cho phép bạn tạo nhiều biến thể hệ thống dựa trên cùng một "IoT smart device". Các thiết bị hoạt động trong băng tần mở ISM mà không phải trả thêm phí đăng ký. Cần phải sử dụng LoRaWAN Gateways để phủ sóng toàn bộ khu vực có thể truy cập Internet. Trong trường hợp các cổng LoRaWAN hiện có trong phạm vi thiết bị (được cấu hình cho máy chủ TTN), có thể gửi thông tin qua chúng. Nâng cấp chương trình cơ sở yêu cầu máy chủ LoRaWAN mạng / ứng dụng riêng và phạm vi giao tiếp tốt.
Có một số lựa chọn để kinh doanh và hợp tác:
nhập / xuất sản phẩm sẵn sàng (tổng đài, thiết bị) - sản phẩm cuối cùng
nhập khẩu / xuất khẩu các sản phẩm OEM (PCB, bộ điều khiển, v.v.) - sản phẩm trung gian, phụ tùng thay thế
nhượng quyền thương mại - sản xuất dựa trên giấy phép của chúng tôi cho các thị trường địa phương (chúng tôi chỉ cung cấp các bộ vi điều khiển được lập trình) theo iSys - Thương hiệu Hệ thống Thông minh
Hợp tác sản xuất - (như trên) nhưng dưới Thương hiệu bên ngoài
Nền tảng @City hỗ trợ mẫu Front-End có thể tùy chỉnh để trực quan hóa dữ liệu, truy vấn, giới hạn và xử lý (Dữ liệu hiện tại / lịch sử):
trực quan hóa dữ liệu đã chọn trên bản đồ (bản địa hóa địa lý)
hiển thị dữ liệu đã chọn và kết quả trong bảng
hiển thị dữ liệu đã chọn trong biểu đồ thanh
hiển thị dữ liệu đã chọn trong biểu đồ lịch sử
xuất dữ liệu sang các ứng dụng của bên thứ ba và xử lý thêm
chức năng khác sẽ được cập nhật theo yêu cầu riêng lẻ.
Người dùng có thể truy cập Front-End thông qua IP tĩnh hoặc tên miền / tên miền phụ / tệp chuyển hướng DNS tĩnh nếu có.
Cài đặt mẫu & Demo (Nó chỉ được kích hoạt cho khách hàng tiềm năng).
Vui lòng thông báo cho chúng tôi khi bạn muốn kiểm tra nó - để cho phép truy cập công khai vào nền tảng.
Nó có thể yêu cầu IP tĩnh của máy tính từ xa để cho phép giao tiếp với nền tảng @City.
Trang chính bị bỏ trống có chủ ý vì lý do bảo mật: http: //% YourIP% / IoT /
Nó có thể được kích hoạt và chỉnh sửa riêng và chứa các liên kết đến tất cả các dịch vụ hiện có của @City IoT Platform nếu nó được yêu cầu
Main Form nhằm tạo các tab và cài đặt trước mới: http: //%IP%/IoT/que.php
Đây là biểu mẫu ban đầu để tạo kết quả, dạng xem và tab cho mỗi cấu hình
Mô tả (Từ trên xuống và từ trái sang phải theo hướng)
Sửa đổi chủ đề trực quan Tệp CSS phải tồn tại trong "mẫu / css /" thư mục - được liệt kê tự động.
Chọn các trường chính hiển thị trên bảng. Nó đã cập nhật tự động.
Bỏ chọn tất cả các trường (phải theo sau bằng cách chọn một số trường theo cách thủ công)
Chọn tất cả các trường (phải theo sau bằng cách bỏ chọn một số trường theo cách thủ công)
Hộp kiểm này tương đương với tất cả (X)
Các tab được tạo riêng với tên và giá trị đặt trước (được lưu trữ trong cfg / tabs.cfg tập tin).
Tệp thực sự chứa tên và URL (được phân tách bằng ký tự tab).
Hiển thị tất cả các trường bị giới hạn bởi Bộ lọc Trường.
Các trường trong bảng:
bản đồ- kết quả lập bản đồ trên bản đồ (có thể chọn một hoặc nhiều trường)
lịch sử - biểu đồ lịch sử (một hoặc nhiều trường có thể được chọn)
tab - hiển thị bảng (có thể chọn bất kỳ tổ hợp trường nào)
quán ba - chỉ một trường được hiển thị trên biểu đồ thanh
Khi nhấn một trong các giá trị của nó, nó sẽ mở ra kết quả mới với các trường đã chọn (cho hàng hiện tại).
Thêm / xóa một Tab có tên được đặt trong Chuyển hướng cánh đồng. Nó chỉ sử dụng các trường được chọn trong cùng một hàng của bảng.
Nhấn bất kỳ tên trường nào khác sẽ bắt đầu Trực quan hóa dữ liệu của trường đã chọn cho hàng đã chọn.
Thứ tự của các trường được hiển thị giống như thứ tự của nó trong các trường (tuy nhiên tm trường luôn được gửi đến cuối văn bản). Thứ tự này chỉ có thể được thay đổi khi chỉnh sửa trực tiếp các tham số URL (phần thứ tự các trường).
Ví dụ: Cài đặt Tab với Theo dõi tài sản đặt tên và chứa bản đồ với thời gian và tốc độ trên bản đồ
Tất cả mô tả đề cập đến hàng nơi "Map" văn bản ở "Chạy" cột.
Nhập tên "Theo dõi tài sản" trong Chuyển hướng trường (không có dấu ngoặc kép)
Đảm bảo tất cả các cột không được chọn trong hàng
lựa chọn tm, gps_speed_km chỉ trong hàng
nhấn + nút ở đâu trong hàng
Bản đồ có thể được khởi chạy từ MainForm với cấu hình trước
Khởi tạo bản đồ được thực hiện theo cách thủ công khi được thực thi trực tiếp với liên kết: > http: //%IP%/IoT/maps.php
Người dùng nên Bỏ chọn tất cả các trường (Nhấn Bỏ chọn Cái nút)
Nhấn một số hộp kiểm cho các trường được hiển thị (ví dụ: Ain5 (cho mức Smog) và tm (cho ngày / giờ đo)
nhấn "V" hộp kiểm để ẩn biểu mẫu trường
nhấn Hành hình nút để chạy truy vấn DB và hiển thị thông tin hiện tại từ tất cả các cảm biến / thiết bị
Bản đồ với dữ liệu được cập nhật sau 30 giây hoặc hơn.
Cài đặt được mô tả từ trái sang phải (trên ảnh chụp màn hình ở trên).
Mức thu phóng có thể được sửa đổi bằng cách sử dụng các nút (+/-) cho tỷ lệ (current_scale * 2 hoặc current_scale / 2 tương ứng). Nhấn một trong các nút này sẽ tự động sửa đổi tỷ lệ.
Một cách khác là chọn Mức thu phóng trong Thu phóng Trường Combo Box và nhấn Hành hình cái nút. Trong trường hợp này, toàn bộ Chế độ xem / Bản đồ được tải lại và làm mới (mất một lúc trong quá trình khởi tạo).
IMEItrường chứa ID duy nhất của thiết bị hoặc Bí danh duy nhất cho một thiết bị. Cài đặt mặc định là * (dấu hoa thị) hiển thị các giá trị gần đây nhất và vị trí địa lý cho từng thiết bị.
Đặt IMEI thành bất kỳ giá trị nào khác, sẽ hiển thị dữ liệu lịch sử của thiết bị đã chọn. Nó chỉ có ý nghĩa đối với cảm biến di động và chuyển động, nếu không kết quả sẽ trùng lặp trên bản đồ ở cùng một vị trí.
Đặt vị trí trung tâm của bản đồ. Trường này được đặt thành vị trí con trỏ khi nhấn nút chuột trên bản đồ.
Phong cách bản đồ / chủ đề có thể được chọn từ Map Trường ComboBox (ví dụ: Tối, Xám, Địa hình).
Các chủ đề bản đồ khác nhau có thể có các mức thu phóng tối đa khác nhau để nó có thể thực thi Chủ đề phù hợp để tăng tỷ lệ bản đồ.
Mệnh đề Where được sử dụng cho chuỗi truy vấn bổ sung {WHERE part} cho MySQL / MariaDB.
Mệnh đề này được tính đến để tạo chuỗi QUERY hoàn chỉnh cho kết quả cơ sở dữ liệu. Nó có thể giới hạn dữ liệu, thời gian và bất kỳ giá trị nào khác bằng cách giới hạn số lượng kết quả. Tên trường bảng gốc (không phải bí danh) phải được sử dụng trong trường này. Ví dụ.
gps_speed_km> 10 // tốc độ hơn 10km / h
ain5> 3 // ain5 lớn hơn 3 (giữ số lượng hạt 2,5um - mức độ khói)
gps_speed_km> 10 và ain6> 5 // tốc độ hơn 10km / h và ain6 lớn hơn 5 (giữ số lượng hạt 10um - mức khói)
Nhấn nút này là bắt buộc để thay đổi bất kỳ cài đặt, thông số nào (ngoại trừ nhấn +/- nút).
Bản đồ được tải từ đầu với các cài đặt trước mới.
Bản đồ hoàn toàn không được tải, khi không có dữ liệu nào cho truy vấn hiện tại.
Sau khi nhấn nút này, ít nhất một trường phải được chọn theo cách thủ công để hiển thị kết quả trên bản đồ.
Hộp kiểm này được sử dụng để hiển thị / ẩn bộ chọn các trường để hiển thị.
Hộp kiểm này cho phép ẩn toàn bộ Biểu mẫu ngoại trừ ( +/- nút)
Kết quả trên bản đồ liên tục được làm mới và cập nhật các giá trị mới
Ví dụ: Kết quả khói (Cảm biến được lắp trên xe): Mức khói 2,5um hạt (Ain5), Tốc độ (gps_speed_km), Ngày / Giờ (tm), bản đồ (2 - địa hình), mức thu phóng 16,
Mệnh đề Where:
"gps_fix = 3 và tm> "2019-02-18 00:00:00" và tm <"2019-02-19 00:00:00" và gps_speed_km> 0".
// GPS = kết quả 3D hợp lệ & date = 2019-02-18 & tốc độ> 0 km / h
Hiển thị kết quả trong bảng.
Trên "Hình thức chính" nhấn "bàn" mục, sau khi chọn một số trường để hiển thị bảng được định cấu hình trước
Khi bảng được mở từ liên kết http: //%IP%/IoT/que.php? func = tab nó yêu cầu khởi tạo cài đặt trước.
Bạn có thể chọn các trường hiển thị (bằng cách nhấn "Các trường hiển thị" ) hộp kiểm.
Nhấn vào tất cả hộp kiểm bắt buộc cho các trường được hiển thị
Nhấn vào hộp kiểm "Các trường hiển thị" để ẩn biểu mẫu trường
Nhấn nút Execute để chạy truy vấn DB và hiển thị bảng
Cài đặt được mô tả từ trái sang phải (trên ảnh chụp màn hình).
Trường sắp xếp tương đương với việc nhấn tiêu đề cột.
IMEItrường chứa ID duy nhất của thiết bị hoặc Bí danh duy nhất cho một thiết bị. Với giá trị trống, nó sẽ hiển thị bảng các giá trị gần đây nhất.
Đặt IMEI thành bất kỳ giá trị nào khác, sẽ hiển thị dữ liệu lịch sử của thiết bị đã chọn.
Đây là tiền tố cho chuỗi truy vấn bổ sung MySQL / MariaDB {WHERE part}
Mệnh đề này được tính đến để tạo chuỗi QUERY hoàn chỉnh cho kết quả cơ sở dữ liệu. Nó có thể giới hạn dữ liệu, thời gian và bất kỳ giá trị nào khác bằng cách giới hạn số lượng kết quả. Tên trường bảng gốc (không phải bí danh) phải được sử dụng trong trường này. Ví dụ.
gps_speed_km> 10 // tốc độ hơn 10km / h
ain5> 3 // ain5 lớn hơn 3 (giữ số lượng hạt 2,5um - mức độ khói)
gps_speed_km> 10 và ain6> 5 // tốc độ hơn 10km / h và ain6 lớn hơn 5 (giữ số lượng hạt 10um - mức khói)
Sau khi nhấn nút này, ít nhất một trường phải được chọn theo cách thủ công để hiển thị kết quả trên bản đồ.
Nhấn nút này là bắt buộc để thay đổi bất kỳ cài đặt, thông số nào (ngoại trừ nhấn +/- nút).
Bảng được tải lại từ đầu với các cài đặt trước mới.
Hộp kiểm này được sử dụng để hiển thị / ẩn bộ chọn các trường để hiển thị.
Kết quả trong bảng được sắp xếp theo Sắp xếp thiết lập trường. Thứ tự sắp xếp có thể được thay đổi bằng cách nhấn tiêu đề hàng (một lần cho một hướng hai lần cho một hướng khác).
Một số kết quả trong các cột liên kết đến các màn hình trực quan khác (được mã hóa cứng).
Khi hiển thị dữ liệu lịch sử cho thiết bị, cần hạn chế để không hiển thị toàn bộ thông tin lịch sử vì nó có thể dẫn đến các vấn đề về hiệu suất hoặc hết bộ nhớ.
Biểu đồ thanh phải được thực thi từ Biểu mẫu chính bằng cách nhấn vào trường đơn trong hàng "Thanh".
Nó hiển thị các thanh được sắp xếp chuẩn hóa đến giá trị tối đa, hiển thị từ thứ tự cao nhất đến thấp nhất.
Nó rất hữu ích để kiểm tra nhanh các kết quả cực đoan và thực hiện một số hành động.
Sự kiện Di chuột qua sẽ hiển thị thông tin bổ sung cho thiết bị.
Biểu đồ lịch sử có thể được bắt đầu từ MainForm khi nhấn cột đã chọn trong hàng "Lịch sử" (đối với trường đơn lẻ).
Đối với Nhiều trường trong hàng "Lịch sử", các trường mong muốn phải được chọn và phải nhấn liên kết "Lịch sử" trong cột "Chạy".
Kết quả lịch sử được giới hạn trong 24 giờ qua + 24 giờ tiếp theo (đối với biểu đồ làm mới cuối cùng), khi không có giới hạn nào được thiết lập.
Biểu đồ lịch sử khi được mở từ liên kết chính yêu cầu khởi tạo như các kết quả khác, khi mở từ liên kết mà không có tham số tùy chọn.
Nhiều trường có thể được chọn để hiển thị các mục khác nhau. Nó cũng có thể được đặt trong Biểu mẫu Lọc Trường.
Nhấn vào tất cả hộp kiểm bắt buộc cho các trường được hiển thị
Nhấn vào hộp kiểm "Các trường hiển thị" để ẩn biểu mẫu trường
Nhấn nút Execute để chạy truy vấn DB và hiển thị bảng
Các mục được mô tả từ trên xuống và từ trái sang phải (trên ảnh chụp màn hình).
IMEItrường chứa ID duy nhất của thiết bị hoặc Bí danh duy nhất cho một thiết bị. Với giá trị * (asterix), nó hiển thị bảng các giá trị gần đây nhất mà không có ý nghĩa.
Đặt IMEI thành bất kỳ giá trị nào khác, sẽ hiển thị dữ liệu lịch sử của thiết bị đã chọn.
Mệnh đề giới hạn kết quả dữ liệu Chuỗi truy vấn bổ sung MySQL / MariaDB {WHERE part}.
Mệnh đề này được tính đến để tạo chuỗi QUERY hoàn chỉnh cho kết quả cơ sở dữ liệu. Nó có thể giới hạn dữ liệu, thời gian và bất kỳ giá trị nào khác bằng cách giới hạn số lượng kết quả. Tên trường bảng gốc (không phải bí danh) phải được sử dụng trong trường này và cú pháp SQL hợp lệ. Ví dụ.
gps_speed_km> 10 // tốc độ hơn 10km / h
ain5> 3 // ain5 lớn hơn 3 (giữ số lượng hạt 2,5um - mức độ khói)
gps_speed_km> 10 và ain6> 5 // tốc độ hơn 10km / h và ain6 lớn hơn 5 (giữ số lượng hạt 10um - mức khói)
Sau khi nhấn nút này, ít nhất một trường phải được chọn theo cách thủ công để hiển thị kết quả lịch sử.
Nhấn nút này là bắt buộc để thay đổi bất kỳ cài đặt, thông số nào (ngoại trừ hiển thị các trường hoặc bảng truy vấn). Bảng được tải lại từ đầu với các cài đặt trước mới.
Hộp kiểm này được sử dụng để hiển thị / ẩn bộ chọn các trường để hiển thị.
Con trỏ chuột hiển thị các giá trị của phép đo và ngày / giờ.
Chức năng / Trình duyệt WWW | Chrome 72 | FireFox 65 | Cạnh | Opera 58 |
Bản đồ | + | + | + | + |
Lịch sử | + | + (*) | + | + |
Thanh | + | + | + | + |
Các tab | + | + | + | + |
* - Firefox không hỗ trợ bộ chọn ngày / giờ (trường văn bản phải được chỉnh sửa thủ công bằng cách sử dụng định dạng ngày giờ thích hợp).
Internet Explorer không được hỗ trợ (sử dụng Cạnh thay thế)
Các trình duyệt web khác không được kiểm tra.
Các trang web dựa trên tệp mẫu chung đặt tại "mẫu" thư mục "* .template".
Ngoài ra, mỗi loại trang chứa:
Tệp "* .head" lưu trữ tiêu đề của trang (liên kết, CSS đã nhập, JavaScript Tệp, v.v. )
Các tệp "* .foot" lưu trữ chân trang (liên kết, v.v. )
Visualization Theme có thể được thay đổi theo sở thích của người dùng bằng cách đối phó và sửa đổi các tệp CSS. Các tệp CSS được đặt ở "mẫu / css" danh mục. Các Chủ đề Trang Web khác nhau có thể được sử dụng để tạo ra được tối ưu hóa cho ví dụ. mẫu in, SmartPhones, PADs.
Chuyển hướngle chế độ xem - có trường có thể lựa chọn để chọn tệp CSS để sửa đổi hoàn toàn chủ đề (được lưu trữ trong "mẫu / css / tab" danh mục).
Map lượt xem - chủ đề chung được chọn bởi "bản đồ" loại hộp kết hợp. Ngoài ra, có tệp CSS mặc định "Template / css / map.css" trong đó có một số chức năng bổ sung như ẩn / tô màu kết quả dựa trên các giá trị của nó. Phần còn lại của tệp CSS này thực tế chỉ giới hạn ở các biểu mẫu trường và truy vấn.
Hầu hết Nền tảng @City Các tệp PHP để hiển thị chấp nhận csstham số với giá trị của tên tệp cho Chủ đề (không có phần mở rộng). Tệp phải được đặt trong thư mục "templates / css" và tên có phân biệt chữ hoa chữ thường.
Một số phần tử của hiển thị Chủ đề được đặt trực tiếp trong tệp JavaScript nằm trong "mẫu / js" danh mục.
Chủ yếu @City kịch bản"@ City.js" nằm trong thư mục trên. Không có khả năng sửa đổi trong điều này vị trí, tuy nhiên tập lệnh có thể được sao chép sang "mẫu / js" thư mục và sửa đổi ở đó. Việc sử dụng tập lệnh riêng lẻ yêu cầu cập nhật tất cả các tệp tiêu đề.
Một số cảm biến duy nhất có thể yêu cầu các chức năng tính toán chuyên dụng.
Không có khả năng cập nhật và duy trì nhiều biến thể của Phần mềm máy chủ @City, Giao diện PHP front-end, điều này sẽ gây ra rất nhiều vấn đề, phiên bản, lỗi.
Cách tốt nhất và dễ nhất để đạt được điều đó, là cập nhật các tệp JavaScript "lớp phủ" để hiển thị đúng giá trị / mô tả.
Các tập lệnh JS gốc là tệp văn bản mở và có thể được sử dụng theo nhu cầu của khách hàng. Như đã nêu trong chương trước, chúng phải được sao chép vào "mẫu / js" thư mục nơi khách hàng có quyền truy cập để sửa đổi.
Khía cạnh kỹ thuật về lập trình của @City hệ thống không phải là chủ đề của tài liệu này, tuy nhiên nhà phát triển Web có kiến thức cơ bản về HTML và JS có thể tùy chỉnh ứng dụng Web Front-end theo nhu cầu của từng khách hàng.
Cơ sở dữ liệu @City có tên "IOT" hoặc là "* IOT" được chia thành các bảng (trong đó asterix là tiền tố tùy thuộc vào máy chủ lưu trữ - nếu được yêu cầu). DataBase có thể được quan sát trong PHPAdmin (ứng dụng web) tại liên kết http: //% IP% / phpmyadmin
Bảng được đặt cho từng thiết bị (Ở đâu * {asterix} là địa chỉ IMEI - ID duy nhất):
"* _t" - mã thông báo để ủy quyền người dùng hiện tại (không được sử dụng cho các đám mây dành cho một Khách hàng)
"* _c" - hàng đợi lệnh (Sự kiện) - được gửi đến thiết bị
"*" - tất cả các kết quả trạng thái được giải mã.
Các bảng khác:
"ithings_" bảng - chứa trạng thái hiện tại được giải mã của tất cả các thiết bị (nó được sao chép trong quá trình cập nhật bất kỳ "*" những cái bàn). Cấu trúc của ithings_ bảng gần giống với "*" những cái bàn. "ithings_" có các trường bổ sung cho Địa chỉ Bưu điện và mô tả.
bảng "người dùng" bị hạn chế và cần được sửa đổi.
"idx" - mục lục
"tm" - dấu thời gian tự động
"dt" - dấu thời gian unix
"imei" - địa chỉ thiết bị duy nhất
"rssi" - Mức tín hiệu RSSI
"rsrp" - Tín hiệu RSRP
"sự kiện" - các sự kiện đang chờ được gửi đến bộ điều khiển
"out1" .. "out16" - trạng thái đầu ra được giải mã
"trong 1" .. "in16" - trạng thái đầu vào được giải mã
"ain1" .. "ain8" - giá trị ADC được giải mã (RAW)
"sens1" .. "sens8" - các giá trị cảm biến được chuyển đổi (phụ thuộc vào loại thiết bị)
"dimm1" .. "dimm8" - giá trị bộ điều chỉnh độ sáng được giải mã (phụ thuộc vào loại thiết bị)
"int1" .. "int6" - giá trị bộ đếm được giải mã (phụ thuộc vào loại thiết bị)
"Văn bản 1" .. "text6" - giá trị văn bản được giải mã (phụ thuộc vào loại thiết bị)
"sự sáng tạo" - ngày / giờ tạo thiết bị
"Cuối cùng" - ngày / giờ cuối cùng
"người dùng" - sử dụng trong tương lai
"vượt qua" - sử dụng trong tương lai
"sn" - nr nối tiếp gsm
"trạng thái" - trạng thái bộ điều khiển hiện tại không được giải mã ở định dạng hex
"hash_code" - sử dụng trong tương lai
"addr" - địa chỉ thiết bị ngắn
"fwnr" - phần sụn nr
"vô hiệu hóa" - thiết bị bị vô hiệu hóa (không hoạt động)
"gsm_nr" - số CIoT gsm
"nhà cung cấp" - mã nhà cung cấp (để nhượng quyền / đồng sản xuất)
"múi giờ" - Chênh lệch múi giờ
"dst" - Sử dụng cài đặt Tiết kiệm hàng ngày
"gps_lat" - Vĩ độ GPS
"gps_long" - Kinh độ GPS
"gps_hdop" - HDOP GPS
"gps_alt" - Độ cao GPS
"gps_fix" - Định vị GPS (phải là 3 - để có kết quả hợp lệ)
"gps_cog" - GPS Cog
"gps_speed_km" - Tốc độ GPS tính bằng [km / h]
"gps_sat" - Các vệ tinh GPS được tìm thấy
"lục địa", "quốc gia", "khu vực", "tiểu vùng", "tiểu vùng", "thành phố", "quận", "đường phố", "street_nr", "item_nr" - Địa chỉ khách hàng và các trường mô tả (!!!! Không khả dụng cho "*" bảng lịch sử)
"log" - dữ liệu nhật ký
Tên trường rất quan trọng để tạo truy vấn SQL để tăng chức năng tìm kiếm vì tên gốc phải được sử dụng trong SQL Statement.
Bảng này là hàng đợi sự kiện / lệnh cho mỗi thiết bị và có cấu trúc sau:
"command" - lệnh được gửi hoặc đã được gửi đến bộ điều khiển
"đã xác nhận" - cờ xác nhận nếu nó đã được gửi và xác nhận
"date" - dấu thời gian unix của sự kiện
"đã cập nhật" - cờ cập nhật tự động (ngày / giờ dấu thời gian)
Dữ liệu có thể được truy cập mà không cần ứng dụng Web Front-end. Hệ thống @City chứa tập lệnh với các chức năng cấp trung bình. Kết quả được trả về ở định dạng JSON.
http: //%IP%/IoT/que.php? func = devsjson
Truy vấn trả về toàn bộ "_ithings" bảng (trạng thái hiện tại của tất cả các thiết bị) ở Định dạng JSON:
[{ "Quốc gia":"", "thành phố":"", "lục địa":"", "Quốc gia":"", "khu vực":"", "tiểu vùng":"", "tiểu vùng":"", "thành phố":"", "huyện":"", "đường phố":"", "street_nr":"", "item_nr":"", "gps_lat":"0000.0000N", "gps_long":"00000.0000E", "tm":"2019-02-10 12:56:23", "sự sáng tạo":"2019-02-09 18:12:38", "Cuối cùng":"0000-00-00 00:00:00", "sự kiện":"", "người dùng":"", "vượt qua":"", "imei":"351580051067110", "sn":"", "trạng thái":"73000200000f360033026800240000002c002c002dffffffffffffffffffffffff5b63000001c1000001c20000000000000009250a4f0a760a7a0a750a780a7e0000031d032205fc34029b025c025600460e", "Mã Băm":"", "addr":"", "fwnr":"", "tàn tật":"", "gsm_nr":"", "người bán hàng":"", "Múi giờ":"", "dst":"", "rssi":"91", "rsrp":"99", "gps_lat":"0000.0000N", "gps_long":"00000.0000E", "gps_hdop":"", "gps_alt":"", "gps_fix":"4", "gps_cog":"", "gps_speed_km":"", "gps_sat":"", "sự kiện":"", "out1":"0", "out2":"0", "out3":"0", "out4":"0", "out5":"0", "out6":"0", "out7":"0", "out8":"0", "out9":"0", "out10":"1", "out11":"0", "ra ngoài12":"0", "out13":"0", "ra14":"0", "ra15":"0", "out16":"0", "trong 1":"0", "trong 2":"0", "trong 3":"0", "in4":"0", "in5":"0", "in6":"0", "in7":"0", "in8":"0", "in9":"0", "in10":"0", "in11":"0", "in12":"0", "in13":"0", "năm14":"0", "năm15":"0", "in16":"0", "ain1":"3894", "ain2":"51", "ain3":"616", "ain4":"36", "ain5":"0", "ain6":"44", "ain7":"44", "ain8":"45", "sens1":"0", "sens2":"0", "sens3":"0", "sens4":"0", "sens5":"0", "sens6":"0", "sens7":"0", "sens8":"0", "dimm1":"255", "dimm2":"255", "dimm3":"255", "dimm4":"255", "dimm5":"255", "dimm6":"255", "dimm7":"255", "dimm8":"255", "int1":"-16776767", "int2":"450", "int3":"", "int4":"", "int5":"", "int6":"0", "Văn bản 1":"", "text2":"", "text3":"", "text4":"", "text5":"", "text6":"" }]
Truy vấn dữ liệu lịch sử của một thiết bị bằng IMEI nr:
http: //%IP%/IoT/que.php? func = imeijson & imei = 356345080018095
Bởi vì toàn bộ bảng có thể chứa hàng triệu hàng, nó nên được giới hạn bằng mệnh đề WHERE để không làm treo máy chủ.
Tham số url tham số bổ sung:
func - imeijson
imei - IMEI của thiết bị
cánh đồng - các trường được hiển thị trong kết quả (danh sách được phân tách theo kiểu hôn mê)
min - giá trị tối thiểu cho trường đầu tiên từ danh sách
tối đa - giá trị lớn nhất cho trường đầu tiên từ danh sách
shoặc làt - lĩnh vực để sắp xếp
tm - trường được tự động thêm vào kết quả.
where - mệnh đề where để giới hạn dữ liệu
Thí dụ:
Chúng tôi muốn nhận được kết quả sau
cho thiết bị với imei=356345080018095
hiển thị các trường: ain5, ain6, gps_lat, gps_long
và giới hạn ain5 trong phạm vi ( 1, 10000 ) - phải là trường đầu tiên trong danh sách
và gps có dữ liệu hợp lệ (gps_fix = 3)
và ngày / giờ (tm) from2019-02-14 23:00:19 to 2019-02-15 00:00:00
Chuỗi URL được tạo:
http: //%IP%/IoT/que.php? func =imeijson& imei =356345080018095& trường =ain5, ain6, gps_lat, gps_long& min =1& max =1000& ở đâu =gps_fix = 3 và tm> "2019-02-14 23:00:19" và tm <"2019-02-15 00:00:00"
Kết quả Truy vấn:
[{ "ain5":"66","ain6":"68","gps_lat":"5202.7326N","gps_long":"02115.8073E","tm":"2019-02-14 23:04:31" }, { "ain5":"67","ain6":"76","gps_lat":"5202.7328N","gps_long":"02115.8075E","tm":"2019-02-14 23:05:42" }, { "ain5":"63","ain6":"77","gps_lat":"5202.7328N","gps_long":"02115.8074E","tm":"2019-02-14 23:06:05" }, { "ain5":"58","ain6":"77","gps_lat":"5202.7328N","gps_long":"02115.8075E","tm":"2019-02-14 23:06:32" }, { "ain5":"58","ain6":"68","gps_lat":"5202.7328N","gps_long":"02115.8076E","tm":"2019-02-14 23:06:55" }]
Hàm này trả về dữ liệu giới hạn từ bảng "_ithings"
http: //%IP%/IoT/que.php? func = fieldjson & field = ain5 & min = 13 & max = 5000
Thông số:
func - fieldjson
cánh đồng - trường được hiển thị trong kết quả - imei và tm được tự động thêm vào
min - giá trị tối thiểu cho trường
tối đa - giá trị lớn nhất cho trường
Đối với chuỗi truy vấn trên, nó trả về kết quả của ain5, imei, tm lĩnh vực:
nếu ain5 nằm trong phạm vi (13,5000)
Kết quả Truy vấn:
[{"imei":"353080090069142", "tm":"2019-03-14 11:51:01", "ain5":"14" },
{"imei":"356345080018095", "tm":"2019-02-20 09:13:04", "ain5":"115" },
{"imei":"karczew", "tm":"2019-03-07 13:08:22", "ain5":"103" }]