資料包
進階
把挑選規則、命名格式或發行版名稱檢查,從一個安裝複製到另一個安裝。
資料包是一個只含資料的 JSON 檔案。它不能執行程式碼、不能擷取位址、不能新增作品、不能變更使用者、不能動到媒體檔案,也不能攜帶機密資料。
開始之前
連結到「開始之前」- 你是擁有者。
- 你有一把具有
admin範圍的 API 金鑰。具有health_read、read或write的金鑰會被拒絕。 - 你有資料包的 JSON。使用別人給你的資料包,或依照給進階使用者下方的格式自己寫一個。
搬移資料包
連結到「搬移資料包」所有路由都在 http://your-server:6262 上。
- 把資料包送到
POST /api/v1/data-packs/validate。它只檢查,不儲存。你應該會看到"valid": true。 - 把同一份 JSON 送到
POST /api/v1/data-packs。它會把資料包儲存為未啟用。目前什麼都不會改變。 - 開啟
GET /api/v1/data-packs列出已儲存的資料包。GET /api/v1/data-packs/{id}會匯出其中一個。 - 開啟
GET /api/v1/data-packs/{id}/preview,每條規則帶一個pick_rule_id,最多再帶一個naming_id。你會得到一個approval_hash。 - 把同樣的選擇和 hash 送到
POST /api/v1/data-packs/{id}/apply。你應該會看到資料包的 id 和你選擇的規則 id。
預覽:
GET /api/v1/data-packs/home-cinema/preview?pick_rule_id=balanced-web&naming_id=readable套用的 body:
{ "pick_rule_ids": ["balanced-web"], "naming_id": "readable", "approval_hash": "the hash returned by preview"}套用後會變更什麼
連結到「套用後會變更什麼」- 你選擇的每條挑選規則都會新建一條。它不會指派給任何作品。
- 你選擇的命名組合只會取代這些設定:
- 電影檔案與資料夾格式。
- 影集資料夾、季資料夾、特別篇資料夾、集、每日和動畫格式。
- 藝人資料夾、專輯資料夾、光碟資料夾、曲目和多光碟曲目格式。
- 冒號與非法字元的處理格式。
- 多集格式、播出日期格式和絕對編號的位數。
- 匯入時重新命名、資料夾行為、標籤讀取和掃描限制,絕不會放在資料包裡。
如果沒有成功
連結到「如果沒有成功」症狀: 套用時顯示預覽已過期。 原因: 預覽之後,資料包、會發生衝突的挑選規則名稱,或是它要取代的命名設定有了變更。沒有任何東西被套用。 解決方式: 重新預覽,並送出新的 hash。
症狀: 匯入時顯示資料包已存在。 原因: 資料包絕不會被取代。 解決方式: 給新的資料包另一個 id。
症狀: 權限錯誤。
原因: 這把金鑰不是由擁有者建立的 admin 金鑰。
解決方式: 以擁有者身分建立一把 admin 金鑰並使用它。
給進階使用者
連結到「給進階使用者」限制與拒絕的情況
| 限制 | 值 |
|---|---|
format |
holyarrs-data-pack |
version |
1 |
| 資料包或匯出檔的大小 | 256 KiB |
| 挑選規則 | 32 |
| 命名組合 | 8 |
| 發行版名稱檢查 | 256 |
| Id | 1 到 64 個字元:小寫字母、數字、點、連字號、底線。開頭和結尾必須是字母或數字 |
| 套用請求的 body | 16 KiB |
資料包在下列情況會被拒絕:欄位重複或未知、JSON 結尾之後還有多餘內容、品質或特徵名稱未知、命名用字不正確、版本不是 1,或是數值超過這些限制。每個發行版名稱檢查都會經過 HolyArrs 的解析器,而且必須符合它預期的每一項事實。
資料包格式
| 欄位 | 內容 |
|---|---|
format、version、id、name |
必要的標頭 |
pick_rules |
每條都有 id、name、kinds 和 rules(階段、特徵、大小限制、protocol、語言、順序) |
naming |
每個都有 id、name 和 patterns(上面列出的命名設定) |
release_tests |
每個都有 id、name、release_name、hints 和 expected(kind、quality、resolution、source、codec、flags) |
路由與回應
| 路由 | 成功 | 拒絕 |
|---|---|---|
POST /api/v1/data-packs/validate |
200,附上 valid 和摘要 |
400 無效、413 太大 |
POST /api/v1/data-packs |
201,附上摘要,狀態為 inactive |
409 id 已存在、400、413 |
GET /api/v1/data-packs |
200,附上 data_packs |
|
GET /api/v1/data-packs/{id} |
200,附上資料包 JSON | 404 |
GET /api/v1/data-packs/{id}/preview |
200,附上 approval_hash |
400(查詢參數不是 pick_rule_id 和 naming_id)、404 |
POST /api/v1/data-packs/{id}/apply |
200,附上 pack_id、pick_rule_ids、naming_id |
409 已過期、400、404 |
相關頁面
連結到「相關頁面」HolyArrs 是免費的。如果它幫你省下了時間,歡迎在 GitHub 上給顆星、贊助專案,或請我喝杯咖啡。