DTLbb — Guide utilisateur

Connexion prudente à phpBB, publication confirmée et préparation d’annonces depuis Git.

versionv1.0-20date30 juillet 2026publicadministrateurs et rédacteurslangueEnglish

Objet et public

Ce guide explique comment se servir de DTLbb pour contrôler un compte phpBB, choisir une destination autorisée, rédiger puis publier un sujet après confirmation. Il présente également les fonctions techniques de diagnostic et la préparation de brouillons d’annonces à partir des dépôts Git NetDTL.

Pour une description de l’architecture, des responsabilités et des limites du produit, consultez le Manuel de référence.

Rappel : qu’est-ce que DTLbb ?

DTLbb est une application de bureau bilingue qui pilote l’interface web d’un forum phpBB avec Playwright. Elle a été créée pour rendre une publication administrative plus sûre : vérifier l’identité réellement connectée, ne pas confondre statut Admin et droit d’écriture, montrer les destinations autorisées, imposer un aperçu et conserver une confirmation humaine juste avant l’envoi.

DTLbb utilise le forum NetDTL par défaut, mais son adresse reste modifiable. Il ne se connecte jamais directement à MySQL. Sa fonction de préparation Git est indépendante : elle fabrique des brouillons anglais sans ouvrir le forum et sans publier.

À retenir. La mention « Admin » est informative. Seule la colonne d’écriture indique si phpBB présente effectivement le formulaire permettant de publier dans une destination donnée.

Démarrer DTLbb

Depuis l’exécutable Windows

Ouvrez DTLbb.exe. L’assistant graphique apparaît directement ; aucune console n’est nécessaire.

.\dist\DTLbb.exe

Depuis les sources

Le poste doit disposer de Python 3.12 ou d’une version compatible, de Playwright et de Chromium. Depuis le dossier du projet :

py -3.12 -m venv .venv .\.venv\Scripts\Activate.ps1 python -m pip install --upgrade pip python -m pip install -r requirements.txt python -m playwright install chromium python DTLbb.py

La langue initiale est le français. La variable DTL_LANGUAGE=en ouvre directement l’interface en anglais. La variable facultative PHPBB_URL fournit une autre adresse initiale.

Se connecter et contrôler les droits

  1. Vérifiez l’adresse du forum. Une URL complète commençant par http:// ou https:// est requise.
  2. Saisissez votre nom d’utilisateur phpBB.
  3. Saisissez votre mot de passe dans le champ masqué.
  4. Utilisez le bouton English si vous souhaitez changer la langue ; les valeurs déjà saisies sont conservées.
  5. Cliquez sur Valider et attendez la fin de l’inventaire.

DTLbb confirme l’identité du compte, examine en lecture seule l’accès au panneau ACP, extrait les catégories et forums visibles, puis teste séparément le formulaire de publication de chaque destination. La navigation Chromium reste en arrière-plan.

Si le profil persistant contient une session appartenant à un autre compte, DTLbb tente d’abord de la fermer. À la fin du contrôle, il se déconnecte de phpBB avant d’afficher l’écran de rédaction.

Choisir et rédiger

L’écran présente la hiérarchie des catégories et forums à gauche, puis la zone de composition à droite.

  1. Sélectionnez un forum dans l’arborescence ou dans la liste Sous-forum cible.
  2. Vérifiez que l’état affiché est Oui ou autorisé. Une destination interdite ne peut pas être publiée.
  3. Saisissez le Titre du sujet.
  4. Saisissez le Texte du message. Le champ accepte du texte destiné à phpBB, notamment son balisage BBCode.
  5. Cliquez sur Publier le sujet pour ouvrir l’aperçu de confirmation.

Le titre et le message sont obligatoires. Sélectionner une catégorie seule ne désigne pas une destination publiable.

Contrôler l’aperçu

La fenêtre de confirmation rappelle l’identifiant et le nom du sous-forum, le titre et les premiers caractères du message. Relisez particulièrement la destination et le titre.

Effet immédiat. La réponse positive autorise DTLbb à se reconnecter et à soumettre réellement le formulaire phpBB. Il n’existe pas d’étape supplémentaire avant l’envoi.

Lire le résultat

Après l’envoi, DTLbb attend que phpBB confirme un sujet, recharge la liste de la destination et sélectionne le sujet portant le titre envoyé. L’écran affiche le message, l’adresse nettoyée du sujet et la liste des sujets récents.

Ne fermez pas la fenêtre pendant qu’une opération est annoncée comme en cours. DTLbb vide le mot de passe mémorisé lorsqu’il quitte normalement.

Commandes techniques

Les commandes en ligne utilisent PHPBB_USERNAME et PHPBB_PASSWORD. Dans la version actuelle, les commandes de diagnostic ciblent le forum NetDTL défini par défaut ; PHPBB_URL ne change que l’adresse initiale de l’interface graphique.

$env:PHPBB_USERNAME = 'mon_compte' $env:PHPBB_PASSWORD = 'mon_mot_de_passe'

Diagnostic du compte

diagnose se connecte, confirme l’identité et l’accès ACP, puis se déconnecte sans modifier le forum.

python DTLbb.py diagnose

Inventaire visible

list-forums affiche les catégories, forums et sous-forums visibles sans publication.

python DTLbb.py --headless list-forums
Option globaleRôle
--headlessMasque la fenêtre Chromium.
--profile-dirDésigne le profil Playwright persistant.
--log-fileDésigne le journal détaillé.
--timeoutFixe le délai Playwright en millisecondes.
--verboseAffiche les messages de diagnostic dans la console.
--versionAffiche la version de DTLbb.

Préparer les brouillons Git

La commande prepare-updates analyse les 19 dépôts associés aux sous-forums NetDTL 2 à 20. Elle ne lance pas Chromium et ne contacte pas phpBB.

python DTLbb.py prepare-updates ` --forum-url https://netdtl.com/forum/index.php ` --repos-root "D:\Documents\Mes sites Web\Secours catholique\outils"

L’exécutable autonome accepte la même commande :

.\dist\DTLbb.exe prepare-updates ` --repos-root "D:\Documents\Mes sites Web\Secours catholique\outils"

Le dossier update-drafts\ reçoit un fichier Markdown anglais par projet comportant des changements et un fichier manifest.json. Relisez et corrigez chaque brouillon avant de le copier dans DTLbb pour publication.

OptionRôle
--forum-urlAdresse inscrite dans le manifeste ; aucune connexion n’est réalisée.
--repos-rootDossier parent contenant les dépôts des outils NetDTL.
--state-fileFichier JSON facultatif indiquant les dernières références déjà annoncées.
--output-dirDossier de destination des brouillons et du manifeste.
--max-filesNombre maximal de fichiers détaillés dans chaque brouillon ; la valeur doit être positive.

La base de comparaison est choisie dans cet ordre : last_published_ref, dernier tag Git antérieur à HEAD, puis commit précédent. Les modifications non validées ne sont jamais incorporées.

Fichier d’état facultatif

Le fichier d’état permet de désigner, pour chaque projet, la référence correspondant à la dernière annonce effectivement publiée :

{ "DTLarchive": { "last_published_ref": "v2.2-5" }, "GitHubMenu": { "last_published_ref": "v1.0.8" } }

DTLbb lit ce fichier mais ne le crée pas et ne le modifie pas. Une référence inconnue provoque un avertissement pour le projet concerné. Le champ publishing_performed du manifeste demeure à false.

Bonnes pratiques de sécurité

Dépannage

SymptômeContrôle conseillé
Adresse invalideUtilisez une URL complète avec protocole et nom d’hôte. DTLbb ramène une page phpBB à son dossier de base.
Connexion refuséeVérifiez les identifiants, l’accessibilité HTTPS, une éventuelle temporisation phpBB et le journal.
Compte inattenduSupprimez ou isolez le profil persistant si la session d’un autre compte ne peut pas être fermée.
Admin : NONCe résultat n’empêche pas nécessairement de publier ; consultez les permissions destination par destination.
Écriture : NonLe formulaire de nouveau sujet n’est pas disponible pour ce compte dans cette destination.
Publication non confirméeConsultez le message phpBB et logs\dtlbb.log. Vérifiez ensuite le forum avant toute nouvelle tentative.
Playwright absentInstallez les dépendances Python puis le navigateur Chromium de Playwright.
Dépôt ignoréVérifiez le chemin parent, la présence de .git, l’historique et la référence d’état indiquée.

Codes de sortie : 0 succès, 1 erreur inattendue, 2 configuration, 3 authentification, 4 accès ACP refusé, 5 déconnexion échouée et 6 publication interdite.

Aide-mémoire des fichiers

Application

DTLbb.pydtlbb_i18n.py

Interface, automatisation phpBB, analyse Git et messages bilingues.

Données locales

logs\dtlbb.log.dtlbb-profile\

Journal détaillé et profil Chromium persistant.

Préparation des annonces

update-drafts\updates_state.json

Brouillons et manifeste générés ; état de référence facultatif lu sans modification.