Bỏ qua

Đặc tả màn (app) — Tin nhắn

Pair với mockup: ui-mockups/longdo-erp/app-longdo-erp/pace-2/chat.html, .../chat-chi-tiet.html, .../nhom.html Mục đích: nhắn tin 1–1 và nhóm trong app nội bộ Longdo ERP (bản mobile). Quyền xem / thao tác: mọi nhân sự có tài khoản (BR-TN-17). Loại màn: danh sách · hội thoại (chat) · danh sách nhóm.

Bản app mobile (Flutter / Material 3) của phân hệ Tin nhắn. Nghiệp vụ đầy đủ (mã FR-TN / BR-TN) xem tai-lieu-nghiep-vu/tin-nhan.md; trang này chỉ đặc tả giao diện app theo mockup đã dựng. Cặp tài liệu nghiệp vụ app do TASK-13 cập nhật.


A. Màn Danh sách hội thoại (chat.html)

Tab Tin nhắn ở thanh điều hướng dưới. Header: nút Thông báo. Hàng tìm kiếm gồm ô Tìm kiếm và nút (mở thẳng màn Tạo nhóm). Dưới là hàng chip lọc và danh sách hội thoại.

Tham số / Bộ lọc

Thành phần Kiểu Bắt buộc Mặc định Ghi chú
Chip lọc enum Tất cả Tất cả / Chưa đọc / Nhóm (FR-TN-02, BR-TN-01)
Ô tìm kiếm text rỗng lọc theo tên hội thoại & trích đoạn tin cuối (FR-TN-03)
Khối gợi ý “Danh bạ” ẩn Hiện dưới danh sách hội thoại khi đang gõ từ khoá: gợi ý người trong danh bạ chưa có hội thoại với mình (BR-TN-03). Mỗi dòng = avatar + tên + chức vụ; chạm là vào thẳng đoạn chat 1–1 nên không có chip “Nhắn tin” như bản web

Thành phần dữ liệu — mỗi mục hội thoại

Thành phần Kiểu Bắt buộc Nguồn / Tùy chọn Ràng buộc / Định dạng Mặc định
Avatar ảnh hội thoại nếu có, không thì chữ viết tắt tên (nhóm & cá nhân dùng chung một kiểu) vòng tròn 48dp
Tên hội thoại text tên nhóm / tên người in đậm khi còn tin chưa đọc
Cờ 📌 / 🔕 enum trạng thái ghim / tắt thông báo 📌 cạnh tên khi ghim; 🔕 khi tắt TB (BR-TN-05, BR-TN-25)
Trích đoạn tin cuối text tin gần nhất 1 dòng, cắt … ; kèm người gửi (nhóm)
Thời gian text giờ hh:mm / “Hôm qua” / “T4”…
Badge chưa đọc number số tin chưa đọc hiện số tin chưa đọc; ẩn khi = 0. Không liên quan tới cờ tắt thông báo

Hành động

Nút / Thao tác Điều kiện Kết quả
Chạm một mục mở màn Hội thoại (chat-chi-tiet.html) kèm tên/loại/avatar
Chạm “Tin nhắn của tôi” mở hội thoại với chính mình (?loai=self) — xem mục A.1
Nhấn giữ một mục Làm mờ nền, “nhấc” đúng mục đang giữ lên trên nền mờ (mục vẫn ở nguyên vị trí, nổi bật khỏi danh sách), và mở menu thao tác dạng thẻ nổi neo ngay dưới mục (thiếu chỗ thì lật lên trên): Ghim/Bỏ ghim · Tắt thông báo · Chọn nhiều · Xoá. Chạm ra nền để đóng. Riêng “Tin nhắn của tôi” chỉ có Ghim / Bỏ ghim (BR-TN-41)
Nhấn giữ mục → Ghim / Bỏ ghim bật/tắt cờ 📌 (FR-TN-04, BR-TN-05)
Nhấn giữ mục → Tắt / Bật thông báo bật/tắt cờ 🔕 (FR-TN-21, BR-TN-25)
Nhấn giữ mục → Xoá hội thoại xác nhận gỡ khỏi danh sách của riêng người dùng kèm toàn bộ tin nhắn bên trong (FR-TN-05, BR-TN-04)
Nhấn giữ mục → Chọn nhiều bật chế độ chọn nhiều hội thoại: mỗi mục hiện ô chọn, thanh trên có Huỷ chọn · bộ đếm “Đã chọn N” · Chọn tất cả · Xoá (cần xác nhận) để xoá hàng loạt. “Tin nhắn của tôi” không có ô chọn (FR-TN-39, BR-TN-45)
+ (cạnh ô tìm) → Tạo một nhóm chọn ≥2 người mở thẳng màn Tạo nhóm: đặt tên nhóm (≤100 ký tự; trống → “Nhóm chưa đặt tên”), chọn ảnh nhóm (mặc định = chữ viết tắt tên), rồi chọn ≥2 thành viên → tạo nhóm (FR-TN-16)
Nút Thông báo mở màn Thông báo (thong-bao.html)

Trạng thái màn

Trạng thái Hiển thị
Rỗng (không kết quả) biểu tượng 💬 + câu theo ngữ cảnh tab / từ khoá tìm
Đã tắt thông báo cờ 🔕 cạnh tên (chỉ báo hội thoại đang tắt thông báo). Badge chưa đọc vẫn hiện số bình thường — hai thứ độc lập, không thay thế nhau

Ghi chú nghiệp vụ

  • Header chỉ có nút Tạo nhóm — chat 1–1 bắt đầu từ gợi ý ô tìm hoặc từ Danh bạ, không có nút tạo chat 1–1 riêng (FR-TN-15).
  • Ghim nhiều hội thoại; ghim/bỏ ghim chỉ đổi thứ tự của riêng người dùng (BR-TN-05).
  • Xoá hội thoại xoá luôn tin nhắn bên trong ở phía mình và không ảnh hưởng người khác (BR-TN-04).

A.1 Mục “Tin nhắn của tôi” (nhắn với chính mình)

Hội thoại hệ thống dựng sẵn cho mỗi tài khoản, dùng để ghi chú / lưu tạm nội dung cho riêng mình (FR-TN-37, BR-TN-41).

Đặc điểm Mô tả
Vị trí Ghim sẵn → nằm đầu danh sách, mang cờ 📌 như hội thoại ghim thường
Avatar Icon bookmark (phân biệt bằng hình, không bằng màu)
Bỏ ghim Được — bỏ ghim thì về thứ tự theo hoạt động gần nhất
Menu nhấn giữ Chỉ Ghim / Bỏ ghim — không Tắt thông báo, không Chọn nhiều, không Xoá
Chọn nhiều Không có ô chọn ở mục này (không xoá được)
Tab Nhóm Không hiện (chỉ có một người, không phải nhóm)
Trong hội thoại Chỉ có tin một phía (bên phải); không nút Gọi; không có Tắt thông báo ở hành động nhanh; menu nhấn giữ tin không có Thu hồi (chỉ mình mình nên “gỡ với mọi người” vô nghĩa — tin cũ chỉ cần Xoá)
Popup xoá tin Rút gọn: “Bạn có chắc muốn xoá mục này?” (xoá nhiều: “Bạn có chắc muốn xoá N mục đã chọn?”) — không nhắc “những người khác vẫn xem được” vì hội thoại chỉ có mình

B. Màn Hội thoại (chat-chi-tiet.html)

Top app bar: nút Quay lại, avatar + tên, nút Gọi thoại, Gọi video, nút Thông tin. Thân là vùng tin cuộn; dưới cùng là thanh soạn tin. Có thanh ghim tin (đầu) và thanh trích dẫn (trên ô soạn) — ẩn mặc định. Chạm avatar + tên hoặc nút Thông tin đều mở thẳng Thông tin hội thoại (mục B.4) — nơi có các hành động nhanh Tắt thông báo · Tìm tin nhắn · Thêm thành viên · Trang cá nhân; nút Gọi mở màn cuộc gọi (mục B.5).

Với “Tin nhắn của tôi” (?loai=self): avatar là icon bookmark, không có dòng phụ dưới tên, không có nút Gọi thoại / Gọi video, không có Tắt thông báo ở hàng hành động nhanh, Thông tin hội thoại không có khối Thành viên lẫn Thông tin liên hệ. Vùng tin chỉ có một phía — mọi tin đều là tin của mình (bên phải), không có bong bóng tin đến bên trái (FR-TN-37, BR-TN-41).

Thành phần dữ liệu

Thành phần Kiểu Bắt buộc Nguồn / Tùy chọn Ràng buộc / Định dạng Mặc định
Mốc ngày text “Hôm nay” / ngày chip giữa vùng tin
Bong bóng tin đến text tin người khác nền surfaceVariant, avatar + giờ; tên người gửi (nhóm)
Bong bóng tin đi text tin của mình nền brand nhạt (indigo nhạt), chữ tím đậm; giờ + trạng thái ✓✓
Bong bóng tệp đính kèm file tài liệu gửi trong hội thoại thẻ file: icon + tên + dung lượng + Tải xuống · Lưu vào Tài liệu (FR-TN-07, FR-TN-20)
Bong bóng ảnh ảnh ảnh gửi trong hội thoại 1 ảnh hoặc lưới chùm ảnh; chạm → mở Trình xem ảnh (ảnh trải hết chiều rộng màn hình, không hiển thị tên ảnh; chuyển ảnh bằng lướt ngang; đếm N/M + chấm trang, Tải xuống · Chia sẻ · Chuyển tiếp) (FR-TN-07, FR-TN-20)
Thanh tin đã ghim text tin được Ghim đầu hội thoại, có nút bỏ ghim (FR-TN-11) ẩn
Thanh trích dẫn text tin đang trả lời trên ô soạn, có nút huỷ (FR-TN-09) ẩn
Khay đính kèm file/ảnh tệp/ảnh vừa chọn (chưa gửi) trên ô soạn; mỗi mục có nút ✕ bỏ chọn; nhấn Gửi mới gửi (FR-TN-07) ẩn
Ô soạn tin “Nhắn tin…” text nhập tự do có nút biểu tượng cảm xúc (mở bảng emoji) rỗng
Thanh “Nhóm đã giải tán” nhóm bị Trưởng nhóm giải tán Thay ô soạn tin khi mở nhóm đã giải tán (BR-TN-50): dòng chú “Nhóm đã được giải tán. Bạn không gửi tin nhắn hay xem lại nội dung cũ được nữa.” + nút Xoá lịch sử trò chuyện. Vùng tin chỉ còn dòng thông báo; header bỏ nút gọi thoại / gọi video / thông tin ẩn
Bảng @nhắc tên thành viên nhóm chỉ ở hội thoại nhóm: gõ @ mở bảng gợi ý chọn người cần nhắc; tên được nhắc hiển thị nổi bật (@mọi người, @Tên) — FR-TN-34 ẩn
Menu thao tác tin tin được nhấn giữ thẻ nổi lưới 4 cột, mỗi ô = icon + nhãn dưới icon; các mục: Trả lời · Chuyển tiếp · Sao chép · Lưu vào Tài liệu (chỉ tin tệp / ảnh) · Ghim (đổi nhãn thành “Bỏ ghim” khi tin đã ghim) · Chọn nhiều (FR-TN-40) · Thu hồi (chỉ tin của mình; không có ở “Tin nhắn của tôi”) · Xoá. Icon đơn sắc theo token M3; riêng Xoá dùng màu error. Nền mờ (scrim) phía sau ẩn
Thanh Chọn nhiều tin tin đã tích chọn Hiện khi bật Chọn nhiều (FR-TN-40): Huỷ chọn · “Đã chọn N” · Chuyển tiếp · Xoá (hai nút mờ khi chưa chọn tin nào) ẩn
Ô tích chọn tin mọi dòng tin Khi bật Chọn nhiều: mỗi dòng tin (cả tin đến lẫn tin của mình) hiện ô tròn ở lề tráiđặc + dấu ✓ (nền primary) khi đang chọn, rỗng viền outline khi chưa. Tin đang chọn còn được viền (ring primary) quanh bóng tin. Chạm ô tích hoặc chạm bóng tin đều tích / bỏ tích. (Bản web không có ô tích — tin đang chọn được bôi đậm — BR-TN-47.) ẩn
Bottom-sheet chọn nơi lưu tệp/ảnh đang lưu Mở khi chọn Lưu vào Tài liệu (menu tin, nút Lưu trên thẻ tệp, hoặc menu ⋮ ở File đã chia sẻ). Hai lựa chọn: Tài liệu của tôi (“Chỉ mình bạn xem được”) / Tài liệu chung (“Cả công ty xem được”) — FR-TN-12, BR-TN-14 ẩn
Popup xác nhận hành động phá huỷ M3 AlertDialog giữa màn (tiêu đề + nội dung + Huỷ / nút hành động màu error) — dùng cho Thu hồi, Xoá tin (kể cả sau khi chọn phạm vi xoá), Xoá nhiều tin, Xoá thành viên, Xoá lịch sử, Rời nhóm, Xoá hội thoại. Không dùng hộp thoại mặc định của trình duyệt. Nội dung nêu rõ phạm vi: “Tin sẽ bị gỡ khỏi hội thoại ở phía bạn. Những người khác vẫn xem được.” — riêng “Tin nhắn của tôi” rút gọn thành “Bạn có chắc muốn xoá mục này?” (xoá nhiều: “Bạn có chắc muốn xoá N mục đã chọn?”) vì hội thoại không có người khác ẩn

Hành động

Nút / Thao tác Điều kiện Kết quả
Nhấn giữ một bong bóng tin Làm mờ nền và “nhấc” chính bong bóng đó lên trên nền mờ (tin sáng nổi bật cùng menu), rồi mở menu thao tác tin — thẻ nổi dạng lưới 4 cột (icon + nhãn), neo ngay cạnh tin: ưu tiên dưới tin, không đủ chỗ thì lật lên trên; canh theo phía tin (tin của mình dạt phải, tin đến dạt trái). Chạm ra nền để đóng. Chạm thường không mở menu (tránh mở nhầm khi cuộn)
Thao tác → Chọn nhiều bật chế độ chọn nhiều tin (FR-TN-40, BR-TN-46): mọi dòng tin hiện ô tích tròn ở lề trái (BR-TN-47), tin vừa nhấn giữ được tích sẵn; thanh trên có Huỷ chọn · “Đã chọn N” · Chuyển tiếp · Xoá. Chạm ô tích hoặc chạm tin để tích/bỏ tích — mọi tin, không phân biệt người gửi. Trong lúc chọn, chạm tin không mở menu hay xem ảnh. Xoá chỉ gỡ ở phía mình (có xác nhận); Chuyển tiếp mở màn Chuyển tiếp cho các tin đã chọn
Thao tác → Trả lời hiện thanh trích dẫn, gắn tin trả lời với tin gốc (FR-TN-09)
Thao tác → Chuyển tiếp mở màn Chuyển tiếp → chọn nơi nhận: “Tin nhắn của tôi” (luôn ở đầu danh sách, không chọn sẵn — BR-TN-42), nhóm, hoặc thành viên công ty; có thể kèm lời nhắn (FR-TN-10)
Thao tác → Sao chép chép nội dung tin vào bộ nhớ tạm (toast “Đã sao chép”) (FR-TN-35)
Chạm một bong bóng ảnh mở Trình xem ảnh toàn màn (lướt ngang để sang ảnh khác; không hiện tên ảnh; Tải xuống · Chia sẻ · Chuyển tiếp)
Thao tác → Ghim tin nhắn tin lên thanh ghim đầu hội thoại (FR-TN-11, BR-TN-10)
Thao tác → Lưu vào Tài liệu tin là tệp / ảnh mở bottom-sheet chọn nơi lưu: Tài liệu của tôi / Tài liệu chung (FR-TN-12, BR-TN-14)
Thao tác → Thu hồi chỉ tin của mình (hiện với mọi tin của mình, kể cả tin cũ); không có ở “Tin nhắn của tôi” tin còn trong 24 giờ: xác nhận → gỡ nội dung với mọi người, để lại “Tin nhắn đã được thu hồi”. Tin quá 24 giờ: toast “Chỉ có thể thu hồi tin nhắn trong vòng 24 giờ sau khi gửi.”, không đổi tin (FR-TN-14, BR-TN-08, BR-TN-11, BR-TN-12)
Thao tác → Xoá gỡ tin ở phía mình, không giới hạn thời gian; có xác nhận (FR-TN-13)
Thao tác → Xoá (Trưởng nhóm, tin của thành viên khác, trong 24 giờ) mở bottom-sheet chọn phạm vi xoá: Xoá ở phía tôi / Xoá với mọi người. Chọn phạm vi chưa xoá ngay — bottom-sheet chạm-là-chọn nên hệ thống mở thêm popup xác nhận rồi mới thực hiện (BR-TN-48); chọn “với mọi người” thì gỡ nội dung với cả nhóm, để lại dấu vết “<Tên trưởng nhóm> đã xóa tin nhắn này” (FR-TN-36, BR-TN-39, BR-TN-40)
+ (đính kèm) bottom-sheet: Tài liệu (mở trình chọn tệp trong máy) · Hình ảnh (mở thư viện ảnh, chọn nhiều) · Chụp ảnh · Vị trí. Tệp/ảnh chọn xong vào khay đính kèm — chưa gửi (FR-TN-07)
Gửi có nội dung / có khay đẩy khay đính kèm (tệp/ảnh) rồi tới text vào hội thoại; trạng thái “Đã gửi” ✓✓ (FR-TN-06, BR-TN-06)
Chạm avatar + tên / nút Thông tin mở Thông tin hội thoại (mục B.4) — FR-TN-19
Thông tin → Tìm tin nhắn mở thanh tìm trong hội thoại (đếm kết quả, trước/kế) — FR-TN-22
Thông tin → Tắt thông báo menu thời lượng 1 giờ / 4 giờ / 8 giờ / đến khi bật lại — FR-TN-21, BR-TN-25
Gọi thoại / Gọi video liên hệ có tài khoản mở màn cuộc gọi (mục B.5) — FR-TN-17, FR-TN-18

Trạng thái màn

Trạng thái Hiển thị
Tin của mình bong bóng nền brand nhạt, ✓✓ “Đã gửi”
Tin đã thu hồi “Tin nhắn đã được thu hồi” (in nghiêng, mờ) — mọi người đều thấy (BR-TN-12)
Tin bị Trưởng nhóm xoá “<Tên trưởng nhóm> đã xóa tin nhắn này” (in nghiêng, mờ) — mọi người đều thấy; phân biệt với tin tự thu hồi (BR-TN-40)
Đang trả lời thanh trích dẫn hiện trên ô soạn
Có tin ghim thanh ghim hiện đầu hội thoại

Ghi chú nghiệp vụ

  • Thu hồi chỉ với tin của mình và chỉ trong 24 giờ (BR-TN-11). Lựa chọn Thu hồi vẫn hiện với mọi tin của mình — quá 24 giờ thì chạm vào sẽ báo lý do, không ẩn nút để người dùng khỏi thắc mắc vì sao mất lựa chọn. Xoá thì không giới hạn thời gian, chỉ gỡ ở phía mình (FR-TN-13). Không có sửa nội dung tin đã gửi (BR-TN-13).
  • Trưởng nhóm xoá được tin của thành viên khác trong 24 giờ, có lưu vết tên người xoá (FR-TN-36, BR-TN-39, BR-TN-40). Thành viên thường không có thao tác này.
  • Người rời nhóm / bị xoá khỏi nhóm: tin nhắn họ đã gửi vẫn giữ nguyên trong hội thoại, vẫn hiện đúng tên + avatar — không xoá, không ẩn danh (BR-TN-44).
  • Hệ thống không có trạng thái “đã xem” theo từng người (BR-TN-06).
  • Ngoài phạm vi app: “Chụp màn hình” (FR-TN-08 — chọn vùng → chú thích → chèn vào khay đính kèm) chỉ có ở bản web. Khay + của app chỉ có Tài liệu · Hình ảnh · Chụp ảnh · Vị trí (máy điện thoại đã có sẵn chức năng chụp màn hình của hệ điều hành).

B.4 Thông tin hội thoại (overlay trong chat-chi-tiet.html)

Mở khi chạm avatar + tên hoặc nút Thông tin trên top app bar. Đầu là khối nhận diện (avatar lớn, tên, số thành viên / trạng thái) — nhóm có nút đổi tên/ảnh. Kế đó là hàng hành động nhanh, rồi phần thân đổi theo loại hội thoại, cuối là hành động hội thoại.

Thành phần Nhóm 1–1 Tin nhắn của tôi Ghi chú (FR/BR)
Khối nhận diện + đổi tên/ảnh ✔ (sửa được) ✔ (chỉ xem) ✔ (chỉ xem) mọi thành viên đổi tên/ảnh nhóm — FR-TN-27, BR-TN-30
Tắt thông báo (nhanh) menu thời lượng — FR-TN-21, BR-TN-25
Tìm tin nhắn mở thanh tìm trong hội thoại; chỉ tìm trong các tin còn giữ ở phía mình — FR-TN-22, BR-TN-26
Thêm thành viên bộ chọn nhiều người — FR-TN-23, BR-TN-29
Trang cá nhân mở trang cá nhân đối phương — FR-TN-19
Danh sách Thành viên (vai trò, Trưởng nhóm, nút xoá) Chạm một thành viên → mở chat 1–1 với người đó; chỉ Trưởng nhóm thấy nút ✕ xoá thành viên (không xoá chính mình) — FR-TN-19/24, BR-TN-30/31. Tin cũ của người bị xoá vẫn giữ nguyên (BR-TN-44)
Thông tin liên hệ (chức vụ, phòng ban, điện thoại) FR-TN-19
Kho Ảnh/Video + File đã chia sẻ lưới ảnh + danh sách tệp, mỗi khối có Xem tất cả (mở màn danh sách đầy đủ); chạm ảnh → Trình xem media (Tải xuống · Chia sẻ · Chuyển tiếp); chạm trên dòng tệp → bottom-sheet tuỳ chọn (Tải xuống · Lưu vào Tài liệu · Chuyển tiếp · Chia sẻ); chạm thẳng vào dòng tệp là Tải xuống — FR-TN-20, BR-TN-33
Cài đặt nhóm → “Lịch sử trò chuyện cho thành viên mới” Đặt ngay dưới khối File đã chia sẻ. Hiện giá trị đang áp dụng (“Hiện · xem được toàn bộ tin cũ” / “Ẩn · chỉ xem 100 tin gần nhất”); chỉ Trưởng nhóm chạm mở được bottom-sheet chọn Hiện / Ẩn, thành viên khác chỉ xem kèm dòng chú “Chỉ Trưởng nhóm đổi được cài đặt này” — FR-TN-38, BR-TN-35, BR-TN-38
Xoá lịch sử trò chuyện xác nhận; chỉ gỡ phía mình, hội thoại về trống — Tìm tin nhắn chỉ tìm trong tin từ thời điểm xoá trở đi — FR-TN-25, BR-TN-36
Giải tán nhóm ✔ (chỉ Trưởng nhóm) Nhãn đỏ, đặt trên Rời nhóm; chỉ Trưởng nhóm thấy — thành viên thường không có. Bấm → popup “Giải tán nhóm?” (“Toàn bộ thành viên bị gỡ khỏi nhóm; không ai nhắn tin hay xem lại nội dung cũ được nữa. Không thể khôi phục.”) → xác nhận thì gỡ hết thành viên + đóng hội thoại, Trưởng nhóm quay về danh sách chat (hội thoại biến mất). Thành viên mở hội thoại thấy trạng thái đã giải tán: thanh nhập tin thay bằng dòng chú + nút Xoá lịch sử trò chuyện, nội dung cũ không xem lại được (FR-TN-41, BR-TN-50)
Rời nhóm Thành viên thường: popup xác nhận → rời. Trưởng nhóm: mở bottom-sheet “Chọn Trưởng nhóm mới” (dòng phụ “Bạn đang là Trưởng nhóm — chọn người thay thế trước khi rời nhóm”; danh sách các thành viên còn lại, mỗi dòng avatar + tên + chức vụ) → chọn một người → popup “Chuyển quyền và rời nhóm?” → chuyển quyền rồi rời (FR-TN-26, BR-TN-32). Thành viên cuối cùng: popup “Rời và giải tán nhóm?” (nêu rõ hội thoại và nội dung bị xoá, không khôi phục được) → rời và xoá nhóm (BR-TN-49). Khi bắt đầu rời, màn Thông tin đóng lại và nút bị khoá để tránh bấm lần hai

B.5 Màn cuộc gọi thoại / video (overlay trong chat-chi-tiet.html)

Mở từ nút Gọi ở top app bar. Nền tối, thẻ giữa màn (avatar/tên/trạng thái → thời lượng).

Thành phần / Nút Ở màn Kết quả (FR/BR)
Avatar + tên + trạng thái thoại & video “Đang gọi… / Đang kết nối…” → bộ đếm thời lượng — BR-TN-20
Micro (tắt/bật) thoại & video đổi trạng thái nút — FR-TN-28
Loa (tắt/bật) thoại bật/tắt loa ngoài — FR-TN-28
Chuyển sang gọi video thoại mở camera, nâng lên gọi video — FR-TN-29, BR-TN-19
Camera (tắt/bật) video self-view “Bạn” góc dưới phải — FR-TN-29
Thành viên nhóm danh sách Trong cuộc gọi (có dòng “Bạn” + trạng thái mic) / Chưa tham gia — mỗi người chưa vào cuộc mang trạng thái “Đang đổ chuông…” hoặc “Đã từ chối” (nhãn màu error) — FR-TN-30, BR-TN-21
Thu nhỏ thoại & video về thanh cuộc gọi nổi (đồng hồ chạy tiếp) — FR-TN-32, BR-TN-22
Kết thúc (đỏ) thoại & video ngắt cuộc gọi, ghi dòng nhật ký vào chat. Nhóm mà sau khi mình rời vẫn còn ≥2 người → cuộc gọi tiếp diễn, nhật ký ghi “📞 Bạn đã rời cuộc gọi thoại/video · thời lượng”; còn <2 người (hoặc chat 1–1) → cuộc gọi kết thúc hẳn, nhật ký ghi “📞 Cuộc gọi thoại/video đã kết thúc · thời lượng” — FR-TN-31/33, BR-TN-24

Cuộc gọi 1–1 không có danh sách thành viên (BR-TN-21). Chỉ nút đỏ mới kết thúc; thu nhỏ giữ cuộc gọi tiếp diễn (BR-TN-22).


C. Màn Nhóm (nhom.html)

Tab phụ Nhóm trong khối Danh bạ (Thành viên · Nhóm · Đối tác) — trình bày giống danh bạ Thành viên: danh sách các nhóm hội thoại (nhóm chat, dùng chung với màn Tin nhắn — BA Longdo ERP, Dự án Longdo ERP, Phòng Kế toán, Toàn công ty…) gộp theo chữ cái đầu tên nhóm (A–Z), kèm thanh chỉ mục A–Z ở mép phải để nhảy nhanh. Đầu danh sách có dòng “Nhóm đang tham gia (N)”. Mỗi dòng nhóm gồm avatar nhóm, tên nhóm, hàng avatar vài thành viên đầu (+N)số thành viên; chạm để mở đoạn chat nhóm. Đây là danh bạ nên không hiển thị tin nhắn cuốikhông có mũi tên › ở cuối dòng.

Thành phần dữ liệu — mỗi dòng nhóm

Thành phần Kiểu Bắt buộc Nguồn / Tùy chọn Ràng buộc / Định dạng Mặc định
Avatar nhóm ảnh nhóm hoặc chữ viết tắt tròn
Tên nhóm text tên nhóm 1 dòng, cắt …
Hàng avatar thành viên vài thành viên đầu + “+N” chồng nhau, cỡ nhỏ
Số thành viên text “N thành viên” cỡ nhỏ, cạnh hàng avatar

Hành động

Nút / Thao tác Điều kiện Kết quả
Chạm dòng nhóm mở đoạn chat nhóm đó (chat-chi-tiet.html?loai=nhom&ten=…)
+ (cạnh ô tìm) Tạo nhóm mới (mở màn Tạo nhóm dùng chung với Tin nhắn)
Ô tìm “Tìm kiếm” lọc nhóm theo tên; ẩn mục chữ cái rỗng; có trạng thái rỗng; số ở “Nhóm đang tham gia (N)” cập nhật theo kết quả
Thanh chỉ mục A–Z (mép phải) chạm chữ cái → cuộn tới nhóm có tên bắt đầu bằng chữ cái đó

Trạng thái màn

Trạng thái Hiển thị
Rỗng khi tìm không ra kết quả biểu tượng 👥 + “Không tìm thấy nhóm khớp từ khoá.”; ẩn các mục chữ cái rỗng

Ghi chú nghiệp vụ

  • Nhóm tối thiểu 3 thành viên (BR-TN-16); mọi thành viên xem được toàn bộ lịch sử tin nhắn của nhóm (BR-TN-35).
  • Thao tác quản trị nhóm (thêm/xoá thành viên, đổi tên/ảnh nhóm, rời nhóm) nằm ở tab Thông tin hội thoại — xem tai-lieu-nghiep-vu/tin-nhan.md mục 1.6.