Salta ai contenuti

Pacchetti di dati

Esperto

Copia le tue Regole di scelta, gli schemi di denominazione o i controlli sui nomi delle release da un’installazione a un’altra.

Un pacchetto di dati è un file JSON con soli dati. Non può eseguire codice, aprire un indirizzo, aggiungere un titolo, cambiare un utente, toccare file multimediali o contenere segreti.

Prima di iniziare

Link a Prima di iniziare
  • Sei il proprietario.
  • Hai una chiave API con l’ambito admin. Le chiavi con health_read, read o write vengono rifiutate.
  • Hai il JSON del pacchetto. Usa il pacchetto che ti hanno dato, oppure scrivine uno dalla struttura sotto Per esperti.

Spostare un pacchetto

Link a Spostare un pacchetto

Tutte le route sono su http://your-server:6262.

  1. Manda il pacchetto a POST /api/v1/data-packs/validate. Controlla senza salvare. Dovresti vedere "valid": true.
  2. Manda lo stesso JSON a POST /api/v1/data-packs. Salva il pacchetto come inattivo. Per ora non cambia niente.
  3. Apri GET /api/v1/data-packs per elencare i pacchetti salvati. GET /api/v1/data-packs/{id} ne esporta uno.
  4. Apri GET /api/v1/data-packs/{id}/preview con un pick_rule_id per ogni regola e al massimo un naming_id. Ottieni un approval_hash.
  5. Manda la stessa scelta e l’hash a POST /api/v1/data-packs/{id}/apply. Dovresti vedere l’id del pacchetto e gli id delle regole che hai scelto.

Anteprima:

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

Corpo della richiesta di applicazione:

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

Cosa cambia quando applichi un pacchetto

Link a Cosa cambia quando applichi un pacchetto
  • Ogni Regola di scelta che indichi viene creata nuova. Non è assegnata a nessun titolo.
  • Un insieme di denominazione scelto sostituisce solo queste impostazioni:
    • Schemi di file e cartella dei film.
    • Schemi di cartella della serie, cartella della stagione, cartella degli speciali, episodio, giornaliero e anime.
    • Schemi di cartella dell’artista, cartella dell’album, cartella del disco, traccia e traccia multidisco.
    • Formattazione dei due punti e dei caratteri non consentiti.
    • Stile multi-episodio, stile della data di trasmissione e cifre del numero assoluto.
  • Rinomina all’importazione, comportamento delle cartelle, lettura dei tag e limiti di scansione non sono mai in un pacchetto.

Se non funziona

Link a Se non funziona

Sintomo: la richiesta di applicazione dice che l’anteprima è obsoleta. Causa: dopo l’anteprima è cambiato il pacchetto, il nome di una Regola di scelta che andrebbe in conflitto o un’impostazione di denominazione che sostituirebbe. Non è stato applicato niente. Soluzione: rifai l’anteprima e manda il nuovo hash.

Sintomo: l’importazione dice che il pacchetto esiste già. Causa: i pacchetti non vengono mai sostituiti. Soluzione: dai al nuovo pacchetto un altro id.

Sintomo: errore di permesso. Causa: la chiave non è una chiave admin creata dal proprietario. Soluzione: crea una chiave admin come proprietario e usala.

Limiti e rifiuti
Limite Valore
format holyarrs-data-pack
version 1
Dimensione di un pacchetto o di un’esportazione 256 KiB
Regole di scelta 32
Insiemi di denominazione 8
Controlli sui nomi delle release 256
Id Da 1 a 64 caratteri: lettere minuscole, cifre, punti, trattini, trattini bassi. Iniziano e finiscono con una lettera o una cifra
Corpo della richiesta di applicazione 16 KiB

Un pacchetto viene rifiutato per campi duplicati o sconosciuti, JSON in più dopo la fine, nomi di qualità o di tratti sconosciuti, parole di denominazione errate, una versione diversa da 1 o valori oltre questi limiti. Ogni controllo sul nome di una release passa dal parser di HolyArrs e deve corrispondere a ogni dato che si aspetta.

Struttura del pacchetto
Campo Contiene
format, version, id, name Intestazione obbligatoria
pick_rules Ognuna ha id, name, kinds e rules (fasce, tratti, limiti di dimensione, protocollo, lingua, ordine)
naming Ognuna ha id, name e patterns (le impostazioni di denominazione elencate sopra)
release_tests Ognuna ha id, name, release_name, hints e expected (tipo, qualità, risoluzione, origine, codec, flag)
Route e risposte
Route Successo Rifiuto
POST /api/v1/data-packs/validate 200 con valid e un riepilogo 400 non valido, 413 troppo grande
POST /api/v1/data-packs 201 con un riepilogo, stato inactive 409 id esistente, 400, 413
GET /api/v1/data-packs 200 con data_packs
GET /api/v1/data-packs/{id} 200 con il JSON del pacchetto 404
GET /api/v1/data-packs/{id}/preview 200 con approval_hash 400 per qualsiasi query diversa da pick_rule_id e naming_id, 404
POST /api/v1/data-packs/{id}/apply 200 con pack_id, pick_rule_ids, naming_id 409 obsoleto, 400, 404

HolyArrs è gratis. Se ti ha fatto risparmiare tempo, metti una stella su GitHub, sostienilo o offrimi un caffè.