# Thư viện tài liệu

> Quản lý tập trung tất cả các file media (video, hình ảnh, tài liệu, audio) được sử dụng trong hệ thống LMS.

**Quyền truy cập:** Admin hoặc người dùng có quyền **Xem danh sách file trong thư viện**, **Tìm kiếm file trong thư viện** **Điều hướng:** `Nội dung LMS > Thư viện` hoặc `/manage/library`

***

## Tổng quan

Thư viện tài liệu là kho lưu trữ tập trung cho tất cả các file media trong hệ thống LMS. Các file được tải lên thư viện có thể được sử dụng trong bài học, kỳ thi, khảo sát và các nội dung đào tạo khác. Thư viện hỗ trợ tổ chức file theo thư mục (folder) và cung cấp các tính năng tìm kiếm, lọc nâng cao.

***

## Giao diện

Giao diện thư viện hiển thị danh sách file với các thông tin:

* **Tên file** -- tên hiển thị của tài liệu
* **Loại file** -- video, hình ảnh, PDF, audio, văn bản, SCORM, JSON
* **Kích thước** -- dung lượng file
* **Định dạng** -- phần mở rộng file (extension)
* **Thư mục** -- thư mục chứa file
* **Trạng thái tải lên** -- Đang chờ / Đang tải lên / Đã tải lên / Thất bại
* **Ngày cập nhật**

***

## Các định dạng file được hỗ trợ

Hệ thống tự động nhận diện loại file dựa trên phần mở rộng:

| Loại     | Mô tả                               | Thuộc tính      |
| -------- | ----------------------------------- | --------------- |
| Video    | File video (MP4, MOV, AVI, v.v.)    | `isVideo: true` |
| Audio    | File âm thanh (MP3, WAV, v.v.)      | `isAudio: true` |
| Hình ảnh | File hình ảnh (JPG, PNG, GIF, v.v.) | `isImage: true` |
| PDF      | Tài liệu PDF                        | `isPDF: true`   |
| Văn bản  | File văn bản (TXT, DOC, v.v.)       | `isText: true`  |
| JSON     | File dữ liệu JSON                   | `isJSON: true`  |
| SCORM    | Gói SCORM tiêu chuẩn                | `isScorm: true` |

***

## Tải file lên

### Các bước

1. Truy cập thư viện tài liệu
2. Nhấn nút **Tải lên** hoặc kéo thả file vào vùng tải
3. Chọn file từ máy tính
4. Chờ file được tải lên và xử lý

Sau khi tải lên, file sẽ có trạng thái **Đang chờ** và chuyển sang **Đã tải lên** khi hoàn tất.

**Đối với file video:**

* Hệ thống tự động chuyển đổi định dạng (convert) sau khi tải lên
* Trạng thái chuyển đổi: **Đang chờ** > **Đang chuyển đổi** > **Thành công** hoặc **Thất bại**
* URL phát video (playURL) và thumbnail được tạo tự động sau khi chuyển đổi thành công
* Hỗ trợ lưu trữ trên S3 hoặc Oracle Object Storage

***

## Quản lý thư mục

Thư viện hỗ trợ tổ chức file theo cấu trúc thư mục phân cấp:

### Tạo thư mục

1. Nhấn **Tạo thư mục**
2. Nhập tên thư mục
3. Chọn thư mục cha (nếu có)
4. Nhấn **Tạo**

| Trường               | Bắt buộc | Mô tả                 |
| -------------------- | -------- | --------------------- |
| Tên thư mục (name)   | Có       | Tên hiển thị          |
| Đường dẫn (slug)     | Không    | URL thân thiện        |
| Thư mục con (groups) | Không    | Danh sách thư mục con |

### Di chuyển file

1. Chọn một hoặc nhiều file cần di chuyển
2. Nhấn **Di chuyển**
3. Chọn thư mục đích
4. Xác nhận di chuyển

***

## Chỉnh sửa file

1. Chọn file cần chỉnh sửa
2. Cập nhật thông tin:

| Trường            | Mô tả             |
| ----------------- | ----------------- |
| Tên file (name)   | Tên hiển thị      |
| Thumbnail (thumb) | Ảnh thu nhỏ       |
| Thư mục (folder)  | Thư mục chứa file |

3. Nhấn **Lưu**

***

## Tải file xuống

1. Chọn file cần tải
2. Nhấn **Tải xuống**

Đối với video lưu trữ trên cloud (S3 Glacier, Oracle Archive), hệ thống cần thời gian khôi phục trước khi tải xuống. Quy trình:

* Gửi yêu cầu khôi phục (jobRequest)
* Chờ hoàn tất khôi phục (jobStatus)
* Nhận đường dẫn tải xuống tạm thời (preSignedUrl) có hạn sử dụng

***

## Xoá file

1. Chọn file cần xoá
2. Nhấn **Xoá**
3. Xác nhận xoá

Quyền xoá file là bắt buộc. Kiểm tra file không đang được sử dụng trong bài học trước khi xoá.

***

## Lưu ý

* File video tự động được chuyển đổi định dạng sau khi tải lên
* Hỗ trợ phát trực tuyến (live streaming) cho video
* Ghi hình lớp học trực tuyến được lưu tự động vào thư viện
* File được tổ chức theo thư mục giúp dễ dàng tìm kiếm và quản lý
* Có thể di chuyển nhiều file cùng lúc sang thư mục khác
* Dung lượng file hiển thị theo bytes, nên kiểm tra trước khi tải lên các file lớn
* File SCORM được hỗ trợ để nhập nội dung từ hệ thống khác

***

## Xem thêm

* [Khoá học](https://docs.noova.vn/hoc-tap-va-dao-tao/04-noi-dung-lms/khoa-hoc) -- Sử dụng file thư viện trong bài học
* [Kỳ thi](https://docs.noova.vn/hoc-tap-va-dao-tao/04-noi-dung-lms/ky-thi) -- Đính kèm media cho kỳ thi
* [Trắc nghiệm](https://docs.noova.vn/hoc-tap-va-dao-tao/04-noi-dung-lms/trac-nghiem) -- Đính kèm media cho câu hỏi
