Sprint 112 · Teacher

Email báo cáo thời gian học hằng ngày

Mỗi sáng 7:00, giáo viên nhận một email tổng kết trọn ngày hôm trước: học sinh của mình đã học tổng cộng bao nhiêu thời gian trên FLYER — và chọn một nút để xem chi tiết từng học sinh, trên cả máy tính lẫn điện thoại.

Sprint
112
Trạng thái
Đã có bản chạy thử trên dữ liệu thật
Sản phẩm
teacher.flyer.us
Cập nhật
02/09/2026
Đưa giáo viên quay lại ứng dụng mỗi ngày

1Vấn đề & mục tiêu

Giáo viên chỉ biết học sinh có học hay không khi chủ động mở ứng dụng và đi qua nhiều màn báo cáo. Phần lớn giáo viên không thực hiện việc này mỗi ngày, nên học sinh ngừng học 3–5 ngày mới được phát hiện — khi đó thói quen học tập đã gián đoạn. Với trung tâm, câu hỏi "tuần này lớp có học không" hiện không có câu trả lời tức thời nào.

Mục tiêu: đưa con số quan trọng nhất (tổng thời gian học của học sinh do giáo viên phụ trách trong ngày hôm qua) đến hộp thư giáo viên vào 7:00 sáng mỗi ngày, và biến email này thành điểm chạm đưa giáo viên quay lại ứng dụng mỗi ngày.

2Giải pháp một câu

Một email tự động lúc 7:00 sáng hằng ngày, tổng kết trọn ngày hôm trước (00:00–24:00): tổng thời gian học của toàn bộ học sinh, so sánh với ngày liền trước, học sinh nào chuyên cần nhất, học sinh nào chưa hoạt động — kèm nút "Xem chi tiết từng học sinh" mở trang báo cáo đầy đủ (responsive, xem tốt trên điện thoại).

Nguyên tắcEmail trả lời được câu hỏi quan trọng nhất trong 5 giây mà không cần mở ứng dụng; các thông tin sâu hơn nằm sau một lần chọn. Giáo viên không cần cấu hình gì để bắt đầu nhận.
Vì sao 7:00 sáng, không phải 19:00Học sinh học chủ yếu vào buổi tối — gửi 19:00 sẽ cắt mất phần lớn dữ liệu trong ngày. Gửi 7:00 sáng hôm sau, báo cáo trọn vẹn ngày hôm trước và đến tay giáo viên trước giờ lên lớp. (Quyết định 02/09/2026.)

Email này là một mảnh của vòng lặp Bingo AI Co-Teacher — Giao bài tự động: dùng chung nguồn dữ liệu SIS và là điểm chạm hằng ngày kéo giáo viên quay lại duyệt đề xuất.

3Nội dung email (desktop)

  • Con số hero: "Hôm qua học sinh của thầy/cô đã học tổng cộng 4 giờ 35 phút" + chênh lệch so với ngày liền trước.
  • 3 ô thống kê: số học sinh có học / tổng số, số bài hoàn thành, cảnh báo học sinh chưa hoạt động ≥3 ngày.
  • Danh sách học sinh chuyên cần nhất trong ngày, kèm hoạt động cụ thể của từng học sinh.
  • Khung cảnh báo "Cần lưu ý": danh sách học sinh chưa hoạt động và số ngày liên tiếp chưa học.
  • Nút CTA duy nhất → trang chi tiết (deep link kèm ngày).
  • Chân email thao tác một chạm: đổi giờ nhận / gộp theo tuần / tắt thông báo — không cần vào phần Cài đặt.
Phân theo dạng bàiEmail các bản tuần/tháng thêm bảng thời gian theo dạng bài (Tự học, Nói, Viết, Bài thi, Luyện tập) và biểu đồ cột phân bố theo ngày.
Email báo cáo hằng ngày

Email hằng ngày — bản thiết kế đã chốt (Cloud Theme).

4Trang chi tiết — desktop & mobile

Nút trong email mở trang Thời gian học: mỗi học sinh một hàng — số phút học của ngày hôm qua, các hoạt động đã thực hiện, biểu đồ 7 ngày, thời điểm hoạt động gần nhất, và hành động theo ngữ cảnh ("Xem bài đã làm" với học sinh có học, "Nhắc qua Zalo" với học sinh chưa học).

Bản desktop

Trang chi tiết thời gian học - desktop

Desktop: bảng đầy đủ, điều hướng theo ngày, lọc theo lớp.

Bản mobile

  • Giáo viên chủ yếu mở email trên điện thoại, nên trang chi tiết tự chuyển thành dạng thẻ xếp dọc: tên học sinh và số phút hiển thị nổi bật, dòng phụ ghi hoạt động đã thực hiện và thời điểm hoạt động gần nhất, dải cột diễn biến được thu gọn.
  • Ô tổng thời gian giữ nguyên vị trí đầu trang; các ô thống kê được sắp xếp lại thành lưới 2 cột.
  • Học sinh chưa học hiển thị nút "Nhắc Zalo" ngay trên thẻ — một chạm từ email đến tin nhắn nhắc học.
Trang chi tiết thời gian học - mobile

Mobile: mở từ email trên điện thoại.

5Nhịp gửi & các bản mở rộng

Cùng một khung nội dung, 5 nhịp — mỗi nhịp so sánh với kỳ liền trước:

BảnCửa sổ dữ liệuLịch gửiĐiểm thêm riêng
Hằng ngàyTrọn ngày hôm qua (00:00–24:00)7:00 sáng hôm sauCảnh báo học sinh chưa hoạt động ≥3 ngày
Hằng tuần7 ngày (kết thúc Chủ nhật)Thứ 2 · 7:00Biểu đồ cột theo ngày, phân theo dạng bài
Hằng tháng30 ngàyNgày 1 · 7:00Nhóm tiến bộ / giảm sút so với tháng trước
Hằng quý91 ngày1/1 · 1/4 · 1/7 · 1/10Phân bố theo tuần
Hằng năm365 ngày1/1Tổng thời gian học toàn thời gian trên FLYER

6Quy tắc gửi

7Dữ liệu & kỹ thuật

Đã kiểm chứng bằng bản chạy thử trên dữ liệu production (read replica) — không cần tracking mới:

Thành phầnNguồnGhi chú đã kiểm chứng
Thời gian họcuser_attempts.execution_time (interval)Có cho mọi dạng bài; cộng theo cửa sổ là ra tổng
Học sinh của giáo viênschool_students theo school_idTrường của giáo viên qua school_teacher_profiles
Dạng bàiuser_attempts.type_attemptSTUDY / speaking / writing / exam / practice…
Hoạt động cuốimax(created_at) per học sinhNguồn của cảnh báo im lặng
Bản chạy thửĐã dựng pipeline sinh đủ 5 nhịp email + trang chi tiết (desktop/mobile) từ dữ liệu thật của một trường pilot 25 học sinh; trang chi tiết deploy lên Cloudflare Pages. Job chạy 7:00 sáng hằng ngày, tự biết lịch tuần/tháng/quý/năm.
Lưu ý dữ liệuLoại bài mẫu của giáo viên khỏi mọi phép tính khi mở rộng sang bài giao (is_sample=false); dùng teacher_profile_id, không dùng teacher_id.

8Lộ trình

Giai đoạnPhạm viĐiều kiện lên tiếp
P1 — Pilot đang chạyBản hằng ngày + tuần cho nhóm giáo viên nội bộ, dữ liệu thậtOpen rate ≥40%, click qua trang chi tiết ≥15%
P2 — Opt-out mặc địnhBật cho toàn bộ giáo viên có ≥5 học sinh; đủ 5 nhịpTỷ lệ tắt <10% sau 4 tuần
P3 — Cá nhân hoáNội dung theo quy mô (giáo viên nhỏ: theo từng học sinh; trung tâm: theo lớp/chi nhánh); bản sao cho phụ huynh

9Chỉ số thành công

10Câu hỏi mở