HC VI N C NG NGH B U CH NH VI N TH NG
O CÁO BÀI T P L N
IOT VÀ NG D NG
Giảng viên hướng dẫn:
Nguyễn Quốc Uy
Quang Thắng
sinh viên:
Nhóm lớp:
B22DCCN812
16
Hà Ni 2025
LI CẢM ƠN
Đ hoàn thin bài báo cáo bài tp l n môn hc "IoT và ng dng", em xin trân
trng g i l i c c nh t tm ơn chân thành và sâu s i th y Nguyn Quc Uy.
Trong sut quá trình h p và th ng d n, c t c hin đ tài, em đã nhn đưc s hư
ch b o t n tình t th y. Nh ng bài gi ng tâm huy t và ki n th c chuyên môn quý báu mà ế ế
thy truy t chính là n n t ng v ng ch t n đ c giúp em vưt qua khó khăn và hoàn thành t
nht bài báo cáo này.
Mt l n n a, em xin kính chúc th y d i dào s nh phúc và luôn thành c kh e, h
công trong s nghi p gi ng d y.
Em xin chân thành cm ơn!
Hà N i, ngày 27 tháng 9 năm 2025
MC L C
LI CM ƠN .................................................................................................................... 2
CHƠNG 1: GII THIU I TOÁN .......................................................................... 5
1.1. Đ n đt v ................................................................................................................. 5
CHƠNG 2: CÁC CHC NĂNG ................................................................................... 5
2.1. c ch n ............................................................................................... 5 c năng cơ b
2.2. c thi t b c s d ng ......................................................................................... 5 ế đư
CHƠNG 3: GIAO DIN ................................................................................................ 6
3.1. Dashboard ................................................................................................................. 6
3.2. Data Sensor ............................................................................................................... 6
3.3. Active History ........................................................................................................... 7
3.4. Profile ....................................................................................................................... 9
CH NGƠNG 4: THIT K H TH ........................................................................... 9
4.1. Ph n c ng ................................................................................................................. 9
4.1.1. c thi t b và thành ph n ................................................................................. 9 ế
4.1.2. Thi t k m ch .................................................................................................. 11 ế ế
4.1.3. L p trình cho m u khi n ESP32 ............................................................ 11 ch đi
4.2. Backend .................................................................................................................. 13
4.2.1. Thi t k d li u ...................................................................................... 13 ế ế cơ s
4.3. Xây d ng API Docs ................................................................................................ 14
4.3.1. L y d li u c m bi n ....................................................................................... 15 ế
4.3.2. L y l ch s ho ng ...................................................................................... 17 t đ
4.3.3. L y tr ng thái thi t b g n nh t ........................................................................ 20 ế
4.6. Bi tu n t ....................................................................................................... 21 u đ
4.7. Front-end ................................................................................................................ 23
4.8. L y d li u t server ............................................................................................... 24
CHƠNG 1: GII THIU BÀI TOÁN
1.1. Đ n đt v :
Trong b i c nh c a cu c ch m ng công nghi p l n th phát tri tư, s n vũ bão
ca công ngh đã t ng bư ến đ t lượng đo ra nh c ti t phá, ci thin sâu sc ch i sng.
Gia làn sóng đ ới đó đã khng đi m , Internet vn vt (IoT - Internet of Things) nh v thế
là m t công ngh tr c t trong vi c ki n t o m t, đóng vai trò then ch ế t tương lai thông
minh. V b n ch t, IoT t o ra m t h sinh thái nơi các thiết b v t lý có th k t n i, thu th p ế
và trao đ ng Internet, cho phép chúng tương tác và vi d liu thông qua m n hành mt
cách t i s can thi p tr p t đng mà không đòi h c tiế con ngưi.
CHƠNG 2: CÁC CHỨC NĂNG
2.1. Các chc năng cơ bn:
Giám sát thông tin nhi ánh sáng theo th i gian th c thông t đ, đ m, cường đ
qua các c m bi ến.
Điu khi n b t t t các thi t b u hoà thông qua socket và giao th c ế đèn, qut và đi
MQTT.
Theo dõi l ch s thông s c m bi n Data Sensor: Tìm ki m theo các tiêu chí, s p ế ế
xếp theo ID, nhi ánh sáng và th i gian. t đ, đ m, cường đ
Theo dõi lch s b t t t thi t b Active History: Tìm ki m theo các tiêu chí, s p x p ế ế ế
theo ID, thi t b và th i gian.ế
2.2. Các thi t b ế đư c s d ng:
Phn c ng:
o ESP32
o Cm bi m DHT11 ến đo nhit đ, đ
o Cm bi n ánh sáng 4 pin ế
o 3 đèn led
Phn m m:
o Front-end: HTML, CSS
o Back-end: Nodejs
o MQTT broker: Mosquitto
CHƠNG 3: GIAO DIN
3.1. Dashboard:
Trang Dashboard hi n th tr c quan các thông s thu th p t c m bi n nhi ế t đ, đ
m và ánh sáng. D li c bi u di n b ng bi u đư u đ đng cho th y s thay đi giá tr theo
thi gian, đng thi cung c p các nút thao tác đ ngưi dùng d u khi n thi t b dàng đi ế .
Hình 3.1. Trang Dashboard
3.2. Data Sensor:
Trang Data Sensor lưu tr l i các b n ghi d li u thu đưc t các c m bi n theo th i ế
gian th c.
Bảng d liu cm biến (Data Sensor) gm 5 ct chính:
o ID: S th t bn ghi.
o Nhit đ (°C): Giá tr đo t cm biến nhit đ.
o Đ m (%): Giá tr đo t cm biến đ m.
o Đ sáng (lux): Cưng đ ánh sáng thu đưc t cm biến.
o Thời gian: Thi đim ghi nhn d liu.
Trang Data Sensor có m t khung tìm ki m i dùng tìm ki m thông tin theo ế đ ngư ế
mong mu n.
c nút cho phép s p x p các d li m d n. ế u theo hướng tăng hoc gi
Trang Data Sensor đưc phân trang và mi trang cha ti đa 50 bn ghi d liu.
Hình 3.2. Trang Data Sensor (1)
Hình 3.3. Trang Data Sensor (2)
3.3. Active History:
Trang Active History l i các b n ghi l ch s ho ng b t t t c a các thi t lưu tr t đ ế
b theo th i gian th c.
Bảng lch s hot đng (Active History) gm 4 ct chính:
o ID: S th t bn ghi.
o Thiết b: Tên thiết b đưc điu khin (Qut, Đèn, Điu hoà, ).
o Trng thái: Trng thái hin ti ca thiết b (Bật/Tt).
o Thời gian: Thi đim ghi nhn thao tác điu khin.
Trang Active History có m t khung tìm ki m ế đ ngư i dùng tìm ki m thông tin theo ế
mong mu n.
c nút cho phép s p x p các d li m d n. ế u theo hướng tăng hoc gi
Trang Active History đưc phân trang và m a ti trang ch i đa 20 bn ghi d liu.
Hình 3.4. Trang Active History (1)
Hình 3.5. Trang Active History (2)
3.4. Prole:
Trang Profile hi n th các thông tin cá nhân và các đưng d n Github, Figma và n đế
tài li u PDF mô t d án.
Hình 3.6. Trang Profile
CHƠNG 4: THIT K H THNG
4.1. Ph n c ng:
4.1.1. c thi t b và thành phế n:
Mch bao gm các thành ph n:
Thành phn
Hình nh thành ph n
M ch đi u khi n ESP32
Cm bi n nhi m ế t đ, đ
DHT11
Cm bi n ánh sáng 4 pin ế
Led 5mm
Breadboard
Dây n i
4.1.2. Thi t k mế ế ch:
Hình 4.1. Thi t k mế ế ch
4.1.3. L p trình cho m u khi n ESP32: ch đi
S d ng IDE Arduino cùng các thư vin PubSub, Wiv i ESP32. ESP32 đưc cu
hình đ ng, trao đ bên ngoài. Chương trình kết ni m i d liu vi các thiết b và dch v
s d x lý các s ki n khi có tín hi u ho c d li u g n, giúp h ng cơ chế callback đ i đế
thng ph n h i k p th ời mà không làm gián đon các tác v khác. Nh v y, vi u khi n c đi
và giám sát trên ESP32 tr nên linh ho t và hi u qu hơn.
Hình 4.2. Lp trình điu khin cho ESP32 (1)
Hình 4.3. Lp trình điu khin cho ESP32 (2)
Chương trình trên ESP32 đư u hình đ n cơ chếc c thc hi publish/subscribe vi
Mosquitto Broker. ch ti p c n này cho phép thi t l p kênh giao ti p hi u qu gi a ESP32 ế ế ế
và Backend Server thông qua giao th c MQTT m t giao th c nh , t ng i ưu cho các
dng IoT và phù h p v i các thi t b có tài nguyên h n ch . ế ế
4.2. Backend:
4.2.1. Thi t k d liế ế cơ s u:
s d liu s gm có 2 bng chính:
o Data Sensor:
ID (integer(10)): M i b n ghi d li u s có m t ID duy nht, giúp
phân bi t và truy xu t d li u m t cách chính xác.
temperature (integer(10) giá tr): Lưu tr nhi c tt đ đo đư i mt
thi đim.
humidity (integer(10) giá tr): Lưu tr đ c. m đo đư
light (integer(10) giá tr): Lưu tr cường đ đo đư ánh sáng c.
datetime (timestamp): Ghi l i m c th i gian chính xác (ngày và gi )
khi d li m bi n g i v . u đưc c ế
o Active History:
ID (integer(10)): Đm bo mi hành đng đưc ghi li là duy nht.
device (varchar(255) t b): Lưu tên ca thiế u khiđã đưc đi n.
action (varchar(255) c hi n trên thi t b): Lưu hành đng đã th ế .
time (timestamp): Ghi l i m c th ời gian chính xác khi hành đng đưc
thc hin.
Hình 4.4. Bi ERDu đ
4.3. Xây d ng API Docs:
Xây d ng API Docs s d ng Postman:
Hình 4.5. Giao di n trang ch Postman
4.3.1. Ly d liu cm biến:
Method: GET
Endpoint: /api/sensors
Mô t: Tr v mt danh sách d liu t các cm biến, có bao gm h tr phân
trang, tìm kiếm và sp xếp
o http://localhost:3000/api/sensors
Hình 4.6. Test API phân trang dliu tcm biến
o http://localhost:3000/api/sensors?page=2&limit=10
Hình 4.7. Test API phân trang dliu tcm biến
o http://localhost:3000/api/sensors?sort_key=temp&sort_dir=ASC
Hình 4.8. Test API sp xếp dliu c m biến
o http://localhost:3000/api/sensors?search=28.5
Hình 4.9. Test API tìm ki dếm liu cm biến
4.3.2. Ly lch s hot đng:
Method: GET
Endpoint: /api/history
Mô t: Tr v lch s điu khin bt tt các thiết b, có bao gm hô trphân trang,
tìm kiếm và sp xếp.
o http://localhost:3000/api/history
Hình 4.10. Test API tìm ki lếm ch shot đng
o http://localhost:3000/api/history?search_eld=action&search_value=ON
Hình 4.11. Test API tìm ki ếm lch shot đng
o http://localhost:3000/api/history?page=2&limit=2
Hình 4.12. Test API tìm ki ếm lch shot đng
o http://localhost:3000/api/history?sort_key=device&sort_dir=ASC
Hình 4.13. Test API ly lch shot đng
4.3.3. Ly trng thái thiết b gn nht:
Method: GET
Endpoint: /api/device-states
Mô t: Tr v trng thái bt/tt cui cùng được ghi nhn ca các thiết b.
http://localhost:3000/api/device-states
Hình 4.14. Test API ly trng thái thiết b gn nht

Preview text:

HC VIN CNG NGH BU CHNH VIN THNG
BÁO CÁO BÀI TP LN
IOT VÀ NG DNG
Giảng viên hướng dẫn: Nguyễn Quốc Uy
Sinh viên thực hiện: Lê Quang Thắng Mã sinh viên: B22DCCN812 Nhóm lớp: 16 Hà Nội – 2025 LI CẢM ƠN
Để hoàn thiện bài báo cáo bài tập lớn môn học "IoT và Ứng dụng", em xin trân
trọng gửi lời cảm ơn chân thành và sâu sắc nhất tới thầy Nguyn Quc Uy.
Trong suốt quá trình học tập và thực hiện đề tài, em đã nhận được sự hướng dẫn,
chỉ bảo tận tình từ thầy. Những bài giảng tâm huyết và kiến thức chuyên môn quý báu mà
thầy truyền đạt chính là nền tảng vững chắc giúp em vượt qua khó khăn và hoàn thành tốt nhất bài báo cáo này.
Một lần nữa, em xin kính chúc thầy dồi dào sức khỏe, hạnh phúc và luôn thành
công trong sự nghiệp giảng dạy.
Em xin chân thành cảm ơn!
Hà Nội, ngày 27 tháng 9 năm 2025
MC LC
LI CẢM ƠN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
CHƠNG 1: GIỚI THIU BÀI TOÁN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.1. Đặt vấn đề . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
CHƠNG 2: CÁC CHỨC NĂNG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.1. Các chức năng cơ bản . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.2. Các thiết bị được sử dụng . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
CHƠNG 3: GIAO DIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
3.1. Dashboard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
3.2. Data Sensor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
3.3. Active History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.4. Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
CHƠNG 4: THIẾT K H THNG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
4.1. Phần cứng . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
4.1.1. Các thiết bị và thành phần . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
4.1.2. Thiết kế mạch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
4.1.3. Lập trình cho mạch điều khiển ESP32 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
4.2. Backend . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
4.2.1. Thiết kế cơ sở dữ liệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
4.3. Xây dựng API Docs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
4.3.1. Lấy dữ liệu cảm biến . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
4.3.2. Lấy lịch sử hoạt động . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
4.3.3. Lấy trạng thái thiết bị gần nhất . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4.6. Biểu đồ tuần tự . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
4.7. Front-end . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
4.8. Lấy dữ liệu từ server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
CHƠNG 1: GII THIU BÀI TOÁN
1.1. Đặt vấn đề:
Trong bối cảnh của cuộc Cách mạng công nghiệp lần thứ tư, sự phát triển vũ bão
của công nghệ đã tạo ra những bước tiến đột phá, cải thiện sâu sắc chất lượng đời sống.
Giữa làn sóng đổi mới đó, Internet vạn vật (IoT - Internet of Things) đã khẳng định vị thế
là một công nghệ trụ cột, đóng vai trò then chốt trong việc kiến tạo một tương lai thông
minh. Về bản chất, IoT tạo ra một hệ sinh thái nơi các thiết bị vật lý có thể kết nối, thu thập
và trao đổi dữ liệu thông qua mạng Internet, cho phép chúng tương tác và vận hành một
cách tự động mà không đòi hỏi sự can thiệp trực tiếp từ con người.
CHƠNG 2: CÁC CHỨC NĂNG
2.1. Các chức năng cơ bản:
• Giám sát thông tin nhiệt độ, độ ẩm, cường độ ánh sáng theo thời gian thực thông qua các cảm biến.
• Điều khiển bật tắt các thiết bị đèn, quạt và điều hoà thông qua socket và giao thức MQTT.
• Theo dõi lịch sử thông số cảm biến Data Sensor: Tìm kiếm theo các tiêu chí, sắp
xếp theo ID, nhiệt độ, độ ẩm, cường độ ánh sáng và thời gian.
• Theo dõi lịch sử bật tắt thiết bị Active History: Tìm kiếm theo các tiêu chí, sắp xếp
theo ID, thiết bị và thời gian.
2.2. Các thiết b được s dng: • Phần cứng: o ESP32
o Cảm biến đo nhiệt độ, độ ẩm DHT11
o Cảm biến ánh sáng 4 pin o 3 đèn led • Phần mềm: o Front-end: HTML, CSS o Back-end: Nodejs o MQTT broker: Mosquit o
CHƠNG 3: GIAO DIN 3.1. Dashboard:
Trang Dashboard hiển thị trực quan các thông số thu thập từ cảm biến nhiệt độ, độ
ẩm và ánh sáng. Dữ liệu được biểu diễn bằng biểu đồ động cho thấy sự thay đổi giá trị theo
thời gian, đồng thời cung cấp các nút thao tác để người dùng dễ dàng điều khiển thiết bị. Hình 3.1. Trang Dashboard 3.2. Data Sensor:
Trang Data Sensor lưu trữ lại các bản ghi dữ liệu thu được từ các cảm biến theo thời gian thực.
• Bảng dữ liệu cảm biến (Data Sensor) gồm 5 cột chính:
o ID: Số thứ tự bản ghi.
o Nhiệt độ (°C): Giá trị đo từ cảm biến nhiệt độ.
o Độ ẩm (%): Giá trị đo từ cảm biến độ ẩm.
o Độ sáng (lux): Cường độ ánh sáng thu được từ cảm biến.
o Thời gian: Thời điểm ghi nhận dữ liệu.
• Trang Data Sensor có một khung tìm kiếm để người dùng tìm kiếm thông tin theo mong muốn.
• Các nút cho phép sắp xếp các dữ liệu theo hướng tăng hoặc giảm dần.
• Trang Data Sensor được phân trang và mỗi trang chứa tối đa 50 bản ghi dữ liệu.
Hình 3.2. Trang Data Sensor (1)
Hình 3.3. Trang Data Sensor (2) 3.3. Active History:
Trang Active History lưu trữ lại các bản ghi lịch sử hoạt động bật tắt của các thiết bị theo thời gian thực.
• Bảng lịch sử hoạt động (Active History) gồm 4 cột chính:
o ID: Số thứ tự bản ghi.
o Thiết bị: Tên thiết bị được điều khiển (Quạt, Đèn, Điều hoà, …).
o Trạng thái: Trạng thái hiện tại của thiết bị (Bật/Tắt).
o Thời gian: Thời điểm ghi nhận thao tác điều khiển.
• Trang Active History có một khung tìm kiếm để người dùng tìm kiếm thông tin theo mong muốn.
• Các nút cho phép sắp xếp các dữ liệu theo hướng tăng hoặc giảm dần.
• Trang Active History được phân trang và mỗi trang chứa tối đa 20 bản ghi dữ liệu.
Hình 3.4. Trang Active History (1)
Hình 3.5. Trang Active History (2) 3.4. Profile:
Trang Profile hiển thị các thông tin cá nhân và các đường dẫn đến Github, Figma và
tài liệu PDF mô tả dự án. Hình 3.6. Trang Profile
CHƠNG 4: THIT K H THNG
4.1. Phn cng:
4.1.1. Các thiết b và thành phn:
Mạch bao gồm các thành phần: Thành phần Hình ảnh thành phần Mạch điều khiển ESP32
Cảm biến nhiệt độ, độ ẩm DHT11 Cảm biến ánh sáng 4 pin Led 5mm Breadboard Dây nối
4.1.2. Thiết kế mch:
Hình 4.1. Thiết kế mạch
4.1.3. Lp trình cho mạch điều khin ESP32:
Sử dụng IDE Arduino cùng các thư viện PubSub, Wifi với ESP32. ESP32 được cấu
hình để kết nối mạng, trao đổi dữ liệu với các thiết bị và dịch vụ bên ngoài. Chương trình
sử dụng cơ chế callback để xử lý các sự kiện khi có tín hiệu hoặc dữ liệu gửi đến, giúp hệ
thống phản hồi kịp thời mà không làm gián đoạn các tác vụ khác. Nhờ vậy, việc điều khiển
và giám sát trên ESP32 trở nên linh hoạt và hiệu quả hơn.
Hình 4.2. Lập trình điều khiển cho ESP32 (1)
Hình 4.3. Lập trình điều khiển cho ESP32 (2)
Chương trình trên ESP32 được cấu hình để thực hiện cơ chế publish/subscribe với
Mosquit o Broker. Cách tiếp cận này cho phép thiết lập kênh giao tiếp hiệu quả giữa ESP32
và Backend Server thông qua giao thức MQTT – một giao thức nhẹ, tối ưu cho các ứng
dụng IoT và phù hợp với các thiết bị có tài nguyên hạn chế. 4.2. Backend:
4.2.1. Thiết kế cơ sở d liu:
• Cơ sở dữ liệu sẽ gồm có 2 bảng chính: o Data Sensor:
ID (integer(10)): Mỗi bản ghi dữ liệu sẽ có một ID duy nhất, giúp
phân biệt và truy xuất dữ liệu một cách chính xác.
temperature (integer(10)): Lưu trữ giá trị nhiệt độ đo được tại một thời điểm.
humidity (integer(10)): Lưu trữ giá trị độ ẩm đo được.
light (integer(10)): Lưu trữ giá trị cường độ ánh sáng đo được.
datetime (timestamp): Ghi lại mốc thời gian chính xác (ngày và giờ)
khi dữ liệu được cảm biến gửi về. o Active History:
ID (integer(10)): Đảm bảo mỗi hành động được ghi lại là duy nhất.
device (varchar(255)): Lưu tên của thiết bị đã được điều khiển.
action (varchar(255)): Lưu hành động đã thực hiện trên thiết bị.
time (timestamp): Ghi lại mốc thời gian chính xác khi hành động được thực hiện.
Hình 4.4. Biểu đồ ERD
4.3. Xây dng API Docs:
Xây dựng API Docs sử dụng Postman:
Hình 4.5. Giao diện trang chủ Postman
4.3.1. Lấy dữ liệu cảm biến: Method: GET
Endpoint: /api/sensors
• Mô tả: Trả về một danh sách dữ liệu từ các cảm biến, có bao gồm hỗ trợ phân
trang, tìm kiếm và sắp xếp
o ht p:/ localhost:3000/api/sensors
Hình 4.6. Test API phân trang dữ liệu từ cảm biến
o ht p:/ localhost:3000/api/sensors?page=2&limit=10
Hình 4.7. Test API phân trang dữ liệu từ cảm biến
o ht p:/ localhost:3000/api/sensors?sort_key=temp&sort_dir=ASC
Hình 4.8. Test API sắp xếp dữ liệu cảm biến
o ht p:/ localhost:3000/api/sensors?search=28.5
Hình 4.9. Test API tìm kiếm dữ liệu cảm biến
4.3.2. Lấy lịch sử hoạt động: Method: GET
Endpoint: /api/history
• Mô tả: Trả về lịch sử điều khiển bật tắt các thiết bị, có bao gồm hô trợ phân trang,
tìm kiếm và sắp xếp.
o ht p:/ localhost:3000/api/history
Hình 4.10. Test API tìm kiế
m lịch sử hoạt động
o ht p:/ localhost:3000/api/history?search_field=action&search_value=ON
Hình 4.11. Test API tìm kiế m lịch sử hoạt động
o ht p:/ localhost:3000/api/history?page=2&limit=2
Hình 4.12. Test API tìm kiế m lịch sử hoạt động
o ht p:/ localhost:3000/api/history?sort_key=device&sort_dir=ASC
Hình 4.13. Test API lấy lịch sử hoạt động
4.3.3. Lấy trạng thái thiết bị gần nhất: Method: GET
Endpoint: /api/device-states
• Mô tả: Trả về trạng thái bật/tắt cuối cùng được ghi nhận của các thiết bị.
• ht p:/ localhost:3000/api/device-states
Hình 4.14. Test API lấy trạng thái thiết bị gần nhất