# Extracteur de Tickets Odoo Ce script permet d'extraire et de filtrer les données d'un ticket Odoo par son code. Il est complètement autonome et ne dépend pas d'autres fichiers du projet. ## Fonctionnalités - Extraction des données d'un ticket par son code - Filtrage des messages système et OdooBot - Nettoyage du HTML dans les messages - Conservation des images importantes - Extraction des pièces jointes - Organisation structurée des données exportées ## Prérequis - Python 3.6 ou supérieur - Accès à une instance Odoo via son API XML-RPC ## Installation 1. Clonez ce dépôt ou téléchargez les fichiers 2. Installez les dépendances : ```bash pip install -r requirements.txt ``` ## Configuration Le script utilise les variables d'environnement suivantes pour la connexion à Odoo : - `ODOO_HOST` : L'hôte de l'instance Odoo (par défaut : odoo.cbao.fr) - `ODOO_DB` : Le nom de la base de données (par défaut : production_cbao) - `ODOO_USER` : Le nom d'utilisateur (par défaut : fernand@cbao.fr) - `ODOO_PASSWORD` : Le mot de passe Vous pouvez soit : 1. Modifier ces valeurs directement dans le script 2. Définir ces variables d'environnement avant d'exécuter le script ## Utilisation Le script s'utilise en ligne de commande en spécifiant le code du ticket comme argument : ```bash python ticket_extractor.py T12546 ``` Où `T12546` est le code du ticket à extraire. ### Format du code de ticket - Le code doit commencer par la lettre 'T' - Suivi de chiffres uniquement - Exemple : T12546, T102558, etc. ### Aide en ligne Pour voir l'aide du script : ```bash python ticket_extractor.py --help ``` ## Structure des données exportées Les données seront extraites dans le dossier `exported_tickets` avec la structure suivante : ``` exported_tickets/ └── ticket_[ID]_[NOM]/ ├── ticket_info.json ├── contact_info.json ├── activities.json ├── messages/ │ └── message_[ID]_[DATE].json ├── followers.json ├── attachments_info.json ├── attachments/ │ └── [ID]_[NOM] └── timesheets.json ``` ## Structure des données ### Messages - Les messages système et OdooBot sont filtrés - Le HTML est nettoyé tout en préservant le texte - Les images importantes sont conservées avec leur description - Les pièces jointes mentionnées sont identifiées ### Pièces jointes - Toutes les pièces jointes sont extraites - Les métadonnées sont sauvegardées dans `attachments_info.json` - Les fichiers sont stockés dans le dossier `attachments` ### Informations de contact - Détails du contact principal - Coordonnées et adresse ### Activités - Historique des activités - Dates et utilisateurs ### Timesheets - Historique des temps passés - Utilisateurs et départements ## Notes - Le script crée automatiquement les dossiers nécessaires - Les erreurs sont gérées et affichées clairement - Les données sont sauvegardées au format JSON pour une meilleure lisibilité