Bỏ qua để đến nội dung

Gói dữ liệu

Nâng cao

Sao chép quy tắc chọn, mẫu đặt tên hoặc các phép kiểm tra tên bản phát hành từ một bản cài sang bản cài khác.

Gói dữ liệu là một tệp JSON chỉ chứa dữ liệu. Nó không thể chạy mã, tải một địa chỉ, thêm một mục, đổi một người dùng, đụng vào tệp media hay mang theo thông tin bí mật.

  • Bạn là chủ sở hữu.
  • Bạn có một khóa API với phạm vi admin. Các khóa có health_read, read hoặc write đều bị từ chối.
  • Bạn có JSON của gói. Dùng gói bạn được đưa, hoặc tự viết một gói theo cấu trúc ở phần Dành cho người dùng nâng cao.

Mọi route đều ở http://your-server:6262.

  1. Gửi gói tới POST /api/v1/data-packs/validate. Nó kiểm tra mà không lưu. Bạn sẽ thấy "valid": true.
  2. Gửi cùng JSON đó tới POST /api/v1/data-packs. Nó lưu gói ở trạng thái không hoạt động. Chưa có gì thay đổi.
  3. Mở GET /api/v1/data-packs để liệt kê các gói đã lưu. GET /api/v1/data-packs/{id} xuất một gói.
  4. Mở GET /api/v1/data-packs/{id}/preview với một pick_rule_id cho mỗi quy tắc và tối đa một naming_id. Bạn nhận được một approval_hash.
  5. Gửi cùng lựa chọn đó kèm hash tới POST /api/v1/data-packs/{id}/apply. Bạn sẽ thấy id của gói và các id quy tắc bạn đã chọn.

Preview:

GET /api/v1/data-packs/home-cinema/preview?pick_rule_id=balanced-web&naming_id=readable

Apply body:

{
"pick_rule_ids": ["balanced-web"],
"naming_id": "readable",
"approval_hash": "the hash returned by preview"
}

Việc áp dụng thay đổi những gì

Liên kết tới Việc áp dụng thay đổi những gì
  • Mỗi quy tắc chọn bạn chọn được tạo mới. Nó không được gán cho mục nào.
  • Một bộ đặt tên bạn chọn chỉ thay thế các tùy chọn này:
    • Mẫu tệp và thư mục của phim lẻ.
    • Mẫu thư mục phim bộ, thư mục mùa, thư mục tập đặc biệt, tập, theo ngày và anime.
    • Mẫu thư mục nghệ sĩ, thư mục album, thư mục đĩa, bài hát và bài hát nhiều đĩa.
    • Cách định dạng dấu hai chấm và ký tự không hợp lệ.
    • Kiểu nhiều tập, kiểu ngày phát sóng và số chữ số của số tuyệt đối.
  • Đổi tên khi nhập, cách xử lý thư mục, đọc thẻ và giới hạn quét không bao giờ nằm trong một gói.

Triệu chứng: Apply báo bản xem trước đã cũ. Nguyên nhân: Gói, tên một quy tắc chọn sẽ bị trùng, hoặc một tùy chọn đặt tên sẽ bị thay thế đã thay đổi sau lần xem trước. Chưa có gì được áp dụng. Cách khắc phục: Xem trước lại và gửi hash mới.

Triệu chứng: Nhập báo gói đã tồn tại. Nguyên nhân: Các gói không bao giờ bị thay thế. Cách khắc phục: Đặt cho gói mới một id khác.

Triệu chứng: Lỗi quyền. Nguyên nhân: Khóa không phải là khóa admin do chủ sở hữu tạo. Cách khắc phục: Tạo một khóa admin bằng tài khoản chủ sở hữu và dùng nó.

Giới hạn và các trường hợp từ chối
Giới hạn Giá trị
format holyarrs-data-pack
version 1
Kích thước của một gói hoặc một bản xuất 256 KiB
Quy tắc chọn 32
Bộ đặt tên 8
Phép kiểm tra tên bản phát hành 256
Id 1 đến 64 ký tự: chữ thường, chữ số, dấu chấm, dấu gạch ngang, dấu gạch dưới. Bắt đầu và kết thúc bằng chữ cái hoặc chữ số
Nội dung yêu cầu apply 16 KiB

Một gói bị từ chối nếu có trường trùng hoặc không rõ, có JSON thừa sau phần kết thúc, có tên chất lượng hoặc đặc điểm không rõ, có từ đặt tên sai, có version khác 1, hoặc có giá trị vượt các giới hạn này. Mỗi phép kiểm tra tên bản phát hành chạy qua trình phân tích của HolyArrs và phải khớp mọi thông tin nó mong đợi.

Cấu trúc của gói
Trường Chứa
format, version, id, name Phần đầu bắt buộc
pick_rules Mỗi phần tử có id, name, kinds và rules (các bậc, đặc điểm, giới hạn kích thước, giao thức, ngôn ngữ, thứ tự)
naming Mỗi phần tử có id, name và patterns (các tùy chọn đặt tên liệt kê ở trên)
release_tests Mỗi phần tử có id, name, release_name, hints và expected (kind, quality, resolution, source, codec, flags)
Các route và phản hồi
Route Thành công Từ chối
POST /api/v1/data-packs/validate 200 kèm valid và một bản tóm tắt 400 không hợp lệ, 413 quá lớn
POST /api/v1/data-packs 201 kèm một bản tóm tắt, trạng thái inactive 409 id đã tồn tại, 400, 413
GET /api/v1/data-packs 200 kèm data_packs
GET /api/v1/data-packs/{id} 200 kèm JSON của gói 404
GET /api/v1/data-packs/{id}/preview 200 kèm approval_hash 400 với mọi query ngoài pick_rule_id và naming_id, 404
POST /api/v1/data-packs/{id}/apply 200 kèm pack_id, pick_rule_ids, naming_id 409 đã cũ, 400, 404

HolyArrs miễn phí. Nếu nó giúp bạn tiết kiệm thời gian, hãy gắn sao trên GitHub, tài trợ dự án hoặc mời tôi một ly cà phê.