Packs de données
Expert
Copiez vos règles de sélection, vos modèles de nommage ou vos vérifications de noms de release d’une installation à une autre.
Un pack de données est un fichier JSON qui ne contient que des données. Il ne peut pas exécuter de code, appeler une adresse, ajouter un titre, modifier un utilisateur, toucher aux fichiers multimédias ni transporter de secrets.
Avant de commencer
Lien vers Avant de commencer- Vous êtes le propriétaire.
- Vous avez une clé API avec la portée
admin. Les clés avechealth_read,readouwritesont refusées. - Vous avez le JSON du pack. Utilisez le pack qu’on vous a donné, ou écrivez-en un d’après la structure décrite dans Pour les experts.
Déplacer un pack
Lien vers Déplacer un packToutes les routes sont sur http://your-server:6262.
- Envoyez le pack à
POST /api/v1/data-packs/validate. Cette route vérifie sans enregistrer. Vous devriez voir"valid": true. - Envoyez le même JSON à
POST /api/v1/data-packs. Le pack est enregistré comme inactif. Rien ne change encore. - Ouvrez
GET /api/v1/data-packspour lister les packs enregistrés.GET /api/v1/data-packs/{id}en exporte un. - Ouvrez
GET /api/v1/data-packs/{id}/previewavec unpick_rule_idpar règle et au plus unnaming_id. Vous recevez unapproval_hash. - Envoyez le même choix et le hash à
POST /api/v1/data-packs/{id}/apply. Vous devriez voir l’identifiant du pack et les identifiants des règles que vous avez choisies.
Prévisualisation :
GET /api/v1/data-packs/home-cinema/preview?pick_rule_id=balanced-web&naming_id=readableCorps de l’application :
{ "pick_rule_ids": ["balanced-web"], "naming_id": "readable", "approval_hash": "the hash returned by preview"}Ce que l’application d’un pack change
Lien vers Ce que l’application d’un pack change- Chaque règle de sélection choisie est créée comme une nouvelle règle. Elle n’est attribuée à aucun titre.
- Un jeu de nommage choisi remplace uniquement ces paramètres :
- Les modèles de fichier et de dossier des films.
- Les modèles de dossier de série, de dossier de saison, de dossier d’épisodes spéciaux, d’épisode, d’épisode quotidien et d’anime.
- Les modèles de dossier d’artiste, de dossier d’album, de dossier de disque, de piste et de piste d’album à plusieurs disques.
- Le format des deux-points et des caractères interdits.
- Le style des épisodes multiples, le style des dates de diffusion et le nombre de chiffres des numéros absolus.
- Le renommage à l’import, le comportement des dossiers, la lecture des tags et les limites d’analyse ne sont jamais dans un pack.
Si ça ne fonctionne pas
Lien vers Si ça ne fonctionne pasSymptôme : L’application du pack indique que la prévisualisation est périmée. Cause : Le pack, un nom de règle de sélection qui entrerait en conflit, ou un paramètre de nommage qu’il remplacerait a changé après la prévisualisation. Rien n’a été appliqué. Solution : Refaites la prévisualisation et envoyez le nouveau hash.
Symptôme : L’import indique que le pack existe déjà. Cause : Les packs ne sont jamais remplacés. Solution : Donnez un autre identifiant au nouveau pack.
Symptôme : Erreur de permission.
Cause : La clé n’est pas une clé admin créée par le propriétaire.
Solution : Créez une clé admin en tant que propriétaire et utilisez-la.
Pour les experts
Lien vers Pour les expertsLimites et refus
| Limite | Valeur |
|---|---|
format |
holyarrs-data-pack |
version |
1 |
| Taille d’un pack ou d’un export | 256 Kio |
| Règles de sélection | 32 |
| Jeux de nommage | 8 |
| Vérifications de noms de release | 256 |
| Identifiants | 1 à 64 caractères : lettres minuscules, chiffres, points, tirets, tirets bas. Une lettre ou un chiffre au début et à la fin |
| Corps de la demande d’application | 16 Kio |
Un pack est refusé pour des champs en double ou inconnus, du JSON en trop après la fin, des noms de qualité ou de critère inconnus, des mots de nommage incorrects, une version autre que 1, ou des valeurs au-delà de ces limites. Chaque vérification de nom de release passe par l’analyseur de HolyArrs et doit retrouver chaque information attendue.
Structure d'un pack
| Champ | Contient |
|---|---|
format, version, id, name |
En-tête obligatoire |
pick_rules |
Chacune a id, name, kinds et rules (paliers, critères, limites de taille, protocole, langue, ordre) |
naming |
Chacun a id, name et patterns (les paramètres de nommage listés plus haut) |
release_tests |
Chacune a id, name, release_name, hints et expected (type, qualité, résolution, source, codec, indicateurs) |
Routes et réponses
| Route | Succès | Refus |
|---|---|---|
POST /api/v1/data-packs/validate |
200 avec valid et un résumé |
400 invalide, 413 trop volumineux |
POST /api/v1/data-packs |
201 avec un résumé, statut inactive |
409 identifiant déjà pris, 400, 413 |
GET /api/v1/data-packs |
200 avec data_packs |
|
GET /api/v1/data-packs/{id} |
200 avec le JSON du pack | 404 |
GET /api/v1/data-packs/{id}/preview |
200 avec approval_hash |
400 pour tout paramètre autre que pick_rule_id et naming_id, 404 |
POST /api/v1/data-packs/{id}/apply |
200 avec pack_id, pick_rule_ids, naming_id |
409 périmé, 400, 404 |
Voir aussi
Lien vers Voir aussiHolyArrs est gratuit. S'il vous a fait gagner du temps, mettez-lui une étoile sur GitHub, sponsorisez-le ou offrez-moi un café.