OpenWatchParty : Visionnage synchronisé pour Jellyfin

Qu’est-ce qu’OpenWatchParty ? OpenWatchParty est un plugin Jellyfin qui permet la lecture synchronisée de médias sur plusieurs clients. Regardez des films et séries avec vos amis, peu importe où ils se trouvent. Contrairement au SyncPlay intégré de Jellyfin, OpenWatchParty utilise un serveur de session externe dédié, offrant une synchronisation plus fiable et une meilleure gestion de la latence. Architecture Le système se compose de trois composants : Composant Technologie Rôle Plugin Jellyfin C# Fournit le JavaScript client et l’interface de config Serveur de Session Rust Gère les salons, relaie les messages via WebSocket Client Web JavaScript Intégré à l’UI Jellyfin, coordonne la lecture flowchart LR A[Client A] <-->|WebSocket| S[Serveur Session<br/>Rust] B[Client B] <-->|WebSocket| S C[Client C] <-->|WebSocket| S Fonctionnalités Synchronisation Temps Réel : La lecture reste synchronisée entre tous les participants Gestion par Salons : Créez et rejoignez des salons de visionnage Contrôle par l’Hôte : Le créateur contrôle la lecture (play, pause, seek) Monitoring de Latence : Mesure et affichage du RTT (Round-Trip Time) Correction de Dérive : Ajustement automatique de la vitesse pour maintenir la sync Support HLS : Fonctionne avec le contenu transcodé via HTTP Live Streaming Authentification JWT : Vérification sécurisée de l’identité des utilisateurs Installation 1. Déployer le Serveur de Session docker run -d \ -p 3000:3000 \ -e ALLOWED_ORIGINS=https://votre-domaine-jellyfin.com \ ghcr.io/mhbxyz/openwatchparty-session-server:latest 2. Ajouter le Dépôt de Plugins Dans le Dashboard Jellyfin : ...

janvier 19, 2026 · 2 min · Manoah B.

Automatisation de la génération de clés SSH avec ssh-keybuild

Introduction La gestion manuelle de vos clés SSH peut vite devenir laborieuse, surtout lorsque l’on travaille sur plusieurs projets ou hôtes distants. Avec ssh-keybuild, j’ai voulu créer un outil simple, robuste et polyvalent pour : Générer des clés ed25519 ou rsa en un clin d’œil Ajouter automatiquement la clé à un agent SSH Copier la clé publique dans le presse-papier Mettre à jour votre ~/.ssh/config sans duplications Dans cet article, nous décortiquons les principales fonctionnalités du script et comment l’adopter en quelques minutes. ...

avril 19, 2025 · 2 min · Manoah B.

DictDB : Une base de données en mémoire légère pour Python

Pourquoi DictDB ? Lors du prototypage ou de l’écriture de tests, vous avez besoin d’un stockage aussi agile que votre code. SQLite semble lourd ; les dictionnaires simples manquent de structure et de requêtage. DictDB comble ce fossé : une base en mémoire, basée sur les dictionnaires, avec du CRUD façon SQL, des schémas optionnels, de l’indexation et de la persistance. Pas besoin de serveur. Fonctionnalités Zéro Configuration : Importez et utilisez. Pas de serveur, pas de setup. DSL de Requêtes : Interface fluide avec opérateurs Python (table.age >= 18). Indexation : Index hash pour des lookups O(1), index triés pour les plages. Schémas Optionnels : Validation de types quand nécessaire. Persistance : Sauvegarde/chargement en JSON ou Pickle (sync et async). Sauvegardes Automatiques : Support des backups périodiques et incrémentaux. Thread Safety : Verrous lecteur-écrivain pour les accès concurrents. Dépendances Minimales : Seul sortedcontainers est requis. Installation pip install dctdb Note : Le package PyPI est dctdb, mais l’import est dictdb. ...

avril 19, 2025 · 2 min · Manoah B.