From e49d034b7d1bf42fe021dc8e3e700276089b417e Mon Sep 17 00:00:00 2001 From: Ladebeze66 Date: Thu, 20 Mar 2025 11:51:38 +0100 Subject: [PATCH] first commit --- .obsidian/app.json | 3 + .obsidian/appearance.json | 1 + .obsidian/core-plugins.json | 31 ++ .obsidian/graph.json | 22 + .obsidian/workspace.json | 205 +++++++++ 20 mars Questions pour Karim.md | 16 + Jour 5 notes support traitement ticket dev.md | 59 +++ README.md | 80 ++++ Réunion 13 mars.md | 99 ++++ Scripts requêtes Odoo.md | 89 ++++ T11016.md | 318 +++++++++++++ exemple filtre fil de discussion.md | 434 ++++++++++++++++++ 12 files changed, 1357 insertions(+) create mode 100644 .obsidian/app.json create mode 100644 .obsidian/appearance.json create mode 100644 .obsidian/core-plugins.json create mode 100644 .obsidian/graph.json create mode 100644 .obsidian/workspace.json create mode 100644 20 mars Questions pour Karim.md create mode 100644 Jour 5 notes support traitement ticket dev.md create mode 100644 README.md create mode 100644 Réunion 13 mars.md create mode 100644 Scripts requêtes Odoo.md create mode 100644 T11016.md create mode 100644 exemple filtre fil de discussion.md diff --git a/.obsidian/app.json b/.obsidian/app.json new file mode 100644 index 0000000..f6843da --- /dev/null +++ b/.obsidian/app.json @@ -0,0 +1,3 @@ +{ + "spellcheck": true +} \ No newline at end of file diff --git a/.obsidian/appearance.json b/.obsidian/appearance.json new file mode 100644 index 0000000..9e26dfe --- /dev/null +++ b/.obsidian/appearance.json @@ -0,0 +1 @@ +{} \ No newline at end of file diff --git a/.obsidian/core-plugins.json b/.obsidian/core-plugins.json new file mode 100644 index 0000000..b977c25 --- /dev/null +++ b/.obsidian/core-plugins.json @@ -0,0 +1,31 @@ +{ + "file-explorer": true, + "global-search": true, + "switcher": true, + "graph": true, + "backlink": true, + "canvas": true, + "outgoing-link": true, + "tag-pane": true, + "properties": false, + "page-preview": true, + "daily-notes": true, + "templates": true, + "note-composer": true, + "command-palette": true, + "slash-command": false, + "editor-status": true, + "bookmarks": true, + "markdown-importer": false, + "zk-prefixer": false, + "random-note": false, + "outline": true, + "word-count": true, + "slides": false, + "audio-recorder": false, + "workspaces": false, + "file-recovery": true, + "publish": false, + "sync": true, + "webviewer": false +} \ No newline at end of file diff --git a/.obsidian/graph.json b/.obsidian/graph.json new file mode 100644 index 0000000..42a46ec --- /dev/null +++ b/.obsidian/graph.json @@ -0,0 +1,22 @@ +{ + "collapse-filter": true, + "search": "", + "showTags": false, + "showAttachments": false, + "hideUnresolved": false, + "showOrphans": true, + "collapse-color-groups": true, + "colorGroups": [], + "collapse-display": true, + "showArrow": false, + "textFadeMultiplier": 0, + "nodeSizeMultiplier": 1, + "lineSizeMultiplier": 1, + "collapse-forces": true, + "centerStrength": 0.518713248970312, + "repelStrength": 10, + "linkStrength": 1, + "linkDistance": 250, + "scale": 1, + "close": true +} \ No newline at end of file diff --git a/.obsidian/workspace.json b/.obsidian/workspace.json new file mode 100644 index 0000000..56b9978 --- /dev/null +++ b/.obsidian/workspace.json @@ -0,0 +1,205 @@ +{ + "main": { + "id": "a232e07296939df8", + "type": "split", + "children": [ + { + "id": "c2f4a1753293419f", + "type": "tabs", + "children": [ + { + "id": "68491419da144553", + "type": "leaf", + "state": { + "type": "markdown", + "state": { + "file": "Scripts requêtes Odoo.md", + "mode": "source", + "source": false + }, + "icon": "lucide-file", + "title": "Scripts requêtes Odoo" + } + }, + { + "id": "15f320992faf0688", + "type": "leaf", + "state": { + "type": "graph", + "state": {}, + "icon": "lucide-git-fork", + "title": "Vue graphique" + } + }, + { + "id": "b3459535494873e5", + "type": "leaf", + "state": { + "type": "graph", + "state": {}, + "icon": "lucide-git-fork", + "title": "Vue graphique" + } + } + ], + "currentTab": 1 + } + ], + "direction": "vertical" + }, + "left": { + "id": "b46074aff10aee75", + "type": "split", + "children": [ + { + "id": "01ac3c86f2a32981", + "type": "tabs", + "children": [ + { + "id": "acc0a92b704810a0", + "type": "leaf", + "state": { + "type": "file-explorer", + "state": { + "sortOrder": "alphabetical", + "autoReveal": false + }, + "icon": "lucide-folder-closed", + "title": "Explorateur de fichiers" + } + }, + { + "id": "04cc406b9c45e049", + "type": "leaf", + "state": { + "type": "search", + "state": { + "query": "", + "matchingCase": false, + "explainSearch": false, + "collapseAll": false, + "extraContext": false, + "sortOrder": "alphabetical" + }, + "icon": "lucide-search", + "title": "Rechercher" + } + }, + { + "id": "a36b2f27d27f52f8", + "type": "leaf", + "state": { + "type": "bookmarks", + "state": {}, + "icon": "lucide-bookmark", + "title": "Signet" + } + } + ] + } + ], + "direction": "horizontal", + "width": 300 + }, + "right": { + "id": "ad0ed0087b43302d", + "type": "split", + "children": [ + { + "id": "baabd42cd9e2c9b7", + "type": "tabs", + "children": [ + { + "id": "7c569dc5d2ed201c", + "type": "leaf", + "state": { + "type": "backlink", + "state": { + "collapseAll": false, + "extraContext": false, + "sortOrder": "alphabetical", + "showSearch": false, + "searchQuery": "", + "backlinkCollapsed": false, + "unlinkedCollapsed": true + }, + "icon": "links-coming-in", + "title": "Rétroliens" + } + }, + { + "id": "27515122a45e4f83", + "type": "leaf", + "state": { + "type": "outgoing-link", + "state": { + "linksCollapsed": false, + "unlinkedCollapsed": true + }, + "icon": "links-going-out", + "title": "Liens sortants" + } + }, + { + "id": "be5b50e850b5453d", + "type": "leaf", + "state": { + "type": "tag", + "state": { + "sortOrder": "frequency", + "useHierarchy": true, + "showSearch": false, + "searchQuery": "" + }, + "icon": "lucide-tags", + "title": "Mots-clés" + } + }, + { + "id": "8fc43484e7c77539", + "type": "leaf", + "state": { + "type": "outline", + "state": { + "followCursor": false, + "showSearch": false, + "searchQuery": "" + }, + "icon": "lucide-list", + "title": "Plan" + } + } + ] + } + ], + "direction": "horizontal", + "width": 300, + "collapsed": true + }, + "left-ribbon": { + "hiddenItems": { + "switcher:Ouvrir le sélecteur rapide": false, + "graph:Ouvrir la vue graphique": false, + "canvas:Créer une nouvelle toile": false, + "daily-notes:Ouvrir la note quotidienne": false, + "templates:Insérer le modèle": false, + "command-palette:Ouvrir la palette de commandes": false + } + }, + "active": "15f320992faf0688", + "lastOpenFiles": [ + "Scripts requêtes Odoo.md", + "T11016.md", + "Réunion 13 mars.md", + "Jour 5 notes support traitement ticket dev.md", + "20 mars Questions pour Karim.md", + "exemple filtre fil de discussion.md", + "README.md", + "data/ticket_10995_raw.json", + "data", + "Rédiger un cahier des charges pour récupération données d’Odoo.md", + "ticket_10995_raw.json", + "README 1.md", + "Bienvenue.md" + ] +} \ No newline at end of file diff --git a/20 mars Questions pour Karim.md b/20 mars Questions pour Karim.md new file mode 100644 index 0000000..b6bc09f --- /dev/null +++ b/20 mars Questions pour Karim.md @@ -0,0 +1,16 @@ +- [ ] Validation format JSON +- [ ] Pipeline nodes vs FastAPI +- [ ] Mise en place de scripts + - [ ] argument + script pour execution + - [ ] bibliothèque de scripts bien précis pour la récupération des données + - [ ] Petit script tâche précise + - [ ] scripts 100% autonomes? + - [ ] Plus gros script pour recherche plus large + - [ ] Création d'une base de donnée à partir des tickets récupérer et résolu + - [ ] Déplacement des données receuillis une fois résolu? + - [ ] Création d'un JSON final et suppression des fichiers inutiles +- [ ] Quel LLM dans un premier temps pour l'execution des scripts + - [ ] langchain, ... + - [ ] besoin fine-tuning? + - [ ] Voir efficacité de guider l'utilisateur pour récupérer les informations plus rapidement +- [ ] Mise en place d'une interface locale? (Gradio ou autre) avec enregistrement des conversations pour tests et ajout des conversations au JSON pour regrouper es données concernant la demande \ No newline at end of file diff --git a/Jour 5 notes support traitement ticket dev.md b/Jour 5 notes support traitement ticket dev.md new file mode 100644 index 0000000..f8e125c --- /dev/null +++ b/Jour 5 notes support traitement ticket dev.md @@ -0,0 +1,59 @@ +# Gestion des Demandes et Tickets + +## Arrivée d'une demande de support + +- Adresse support utilisée +- Exemple de message d'erreur +- Assignation à un agent +- Qualification de la demande : + - Si problème technique → Création d'un ticket + - Essai de reproduction de l'erreur sur un serveur de test + - Utilisation de la plateforme démo pour tester des ajustements + - Modification pour la transformation en ticket + - Reprise de l'intitulé de la demande (fenêtre dev) + - Assignation : en attente d'attribution + - Date limite : non définie + +## Classification et Scoring des Tickets + +- **Étiquettes** : `brg-lab` +- **Importance du ticket** : 4 +- **Urgence** : 3 +- **Facilité d'évaluation** : déterminée par le développeur +- **Incidence du ticket** : 2 (groupe échantillométrie et granulats) +- **Total Score du ticket** : calculé selon les critères ci-dessus + +## Traitement des Tickets + +### Réponse au client + +- **Message** + - Destinataire + - Sujet + - Contenu +- **Constatation du problème** : transmission à l'équipe dev pour résolution +- **Cas de transformation en ticket** + - Assignation à Fabien ou Quentin (surtout base de données) + - Passage en attente de résolution ou fusion avec un ticket existant (ex : `T11059`, `T11064`) +- **Notification de changement de statut** : + - Passage d'une catégorie à une autre doit générer un message + +## Suivi des Tickets + +- **En attente d'informations** : clôture automatique après **3 semaines** sans réponse +- **Vérification quotidienne** : chaque matin, les tickets en attente sont vérifiés et clôturés si nécessaire + +## Correction et Publication + +- **Sous le scoring** : Date de correction à renseigner +- **Tests** : + - Souvent réalisés en local sur `BRG_LAB_UPGRADE` + - Attention à la connexion sur la bonne version (`BRG_LAB`) +- **Publication** : + - Une correction passe en statut "À publier" quand Quentin a réglé le problème + +## FAQ + +### Comment récupérer les métadonnées des images des supports clients ? + +- (Ajouter ici des instructions détaillées selon les méthodes disponibles) \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..bd6426a --- /dev/null +++ b/README.md @@ -0,0 +1,80 @@ +# Gestionnaire de Tickets Odoo + +## Description +Ce projet est un gestionnaire de tickets simplifié pour Odoo, permettant de gérer les tickets de manière efficace. Il inclut des fonctionnalités essentielles pour l'exportation, la recherche et l'extraction d'informations détaillées sur les tickets. + +## Fonctionnalités + +1. **Exporter les tickets par projet et/ou étape** : + - Permet d'exporter les tickets en fonction de critères de projet et d'étape, organisés dans des répertoires dédiés. + +2. **Rechercher un ticket par ID** : + - Récupère les détails d'un ticket spécifique en utilisant son ID. + +3. **Rechercher un ticket par code** : + - Permet de trouver un ticket en utilisant son code unique (ex: T102558). + +4. **Afficher la liste des modèles disponibles** : + - Récupère et affiche tous les modèles disponibles dans Odoo. + +5. **Afficher les champs d'un modèle donné** : + - Récupère et affiche les champs d'un modèle spécifique, en filtrant ceux qui ne sont pas exploitables. + +6. **Extraire les pièces jointes, messages et informations détaillées d'un ticket** : + - Récupère toutes les pièces jointes, messages, activités et informations de contact associées à un ticket. + - Les informations sont sauvegardées dans des fichiers JSON organisés par ticket. + +## Structure du projet + +- `main.py` - Point d'entrée principal du programme +- `menu_principal.py` - Gestion du menu principal +- `menu_handlers.py` - Gestionnaires d'actions pour chaque option du menu +- `ticket_manager.py` - Classe principale pour la gestion des tickets et modèles +- `odoo_connection.py` - Gestion de la connexion à l'instance Odoo +- `data_filter.py` - Fonctions pour filtrer et nettoyer les données des tickets //Retiré pour le moment +- `utils.py` - Fonctions utilitaires diverses +- `config.py` - Configuration de l'application (connexion Odoo, chemins d'export, etc.) + +## Prérequis + +- Python 3.6 ou supérieur +- Package `odoorpc` pour la connexion à Odoo +- Package `bs4` (BeautifulSoup) pour le nettoyage des données HTML + +## Installation + +1. Clonez le dépôt : + ```bash + git clone + cd + ``` + +2. Installez les dépendances nécessaires (si applicable). + +3. Configurez votre connexion Odoo dans le fichier `config.py`. + +## Utilisation + +Pour exécuter le gestionnaire de tickets, utilisez la commande suivante : +```bash +python main.py +``` + +Suivez les instructions à l'écran pour naviguer dans le menu et utiliser les différentes fonctionnalités. + +## Exemple d'utilisation + +### Exporter les tickets d'un projet par étape + +1. Sélectionner l'option 4 dans le menu +2. Entrer l'ID du projet (par exemple, "5") +3. Confirmer l'action +4. Les tickets seront exportés dans le répertoire `exported_tickets/project_5_NomDuProjet/`, classés par étape + +## Contributions + +Les contributions sont les bienvenues ! N'hésitez pas à soumettre des demandes de tirage (pull requests) pour ajouter des fonctionnalités ou corriger des bogues. + +## License + +Ce projet est sous licence MIT. Voir le fichier `LICENSE` pour plus de détails. \ No newline at end of file diff --git a/Réunion 13 mars.md b/Réunion 13 mars.md new file mode 100644 index 0000000..cd85a27 --- /dev/null +++ b/Réunion 13 mars.md @@ -0,0 +1,99 @@ +# Objectifs du projet - Réunion du 13 mars + +## Organigramme du traitement des demandes + +- **Séparation et récupération des demandes et des tickets** + - Mode d’entrée : + - Suivi de du support directement par les tickets + - Connexion par API base de donnée Odoo + + - **Organisation:** + - **Cas administratif** : Maryam, Laurent + - **Cas technique** (dysfonctionnement logiciel ...) : Fabien, Romuald + - **Problème Dev :** Quentin, Fabien + - **Client star**: Laurent, Quentin + + - **Évaluation de la demande**: + - Fiche d’évaluation et scoring pour les demandes entrantes + - Vérification du dysfonctionnement + - Récupération de l’organisation actuelle du scoring + - Analyse des dysfonctionnements et suggestions éventuelles + - **Problème niveau développement** : Fabien ou Quentin +[[Jour 5 notes support traitement ticket dev|exemple ticket dev]] +## Changement du Process avec l’IA + +- Rédiger un cahier des charges +- Voir gestion des requêtes et récupération des informations dans Odoo +- Récupération des données existantes + - Tickets, demandes + - Historique des messages importants + - Pièces-jointes (à analyser) +- Analyse des discussions (mails, ...) pour recréer un fil de discussion cohérent (entrée ➡️ final) + +#### **Objectifs à venir** +- Visite guidée sur Webdev IA pour le site d’assistance utilisateur +- Classification des demandes + - Étape 1 : Identification du type de demande + - Étape 2 : Attribution à un agent + - Si catégorisation nécessaire : appel à la base Odoo (facturation, normes techniques…) + +## Intelligence Artificielle (LLM et RAGFLOW) + +- Étudier différents modèles selon les besoins +- Utilisation d’un gros LLM pour tout gérer +- Chat avec **Mistral Large** +- Interprétation des documents réglementaires (AFNOR en HTML) +- Maitriser utilisation **RAGFLOW** + - Conversion **RST ➡️ Markdown** ➡️ **HTML (Sphinx)** + - Mise en place de pipeline entre LLM, RAGFLOW, ... +- Classification des LLM et exécution d’actions (système Crew codé) +- Voir pour utilisation plusieurs LLM (vLLM, MIC) + - Vision pour analyse des images + - **Fine-tuning des modèles** +## Interface & API + +- Page support avec **iframe Webdev REST** + - **Suggestion Gradio interface locale directe avec GPU** (possibilité de l'intégrer en iframe) +- Problème de compatibilité des flux REST ➡️ Recherche d’une solution +- Fonction d’appel API REST via **Visual Studio** ➡️ Enrichissement de la fonction stream API authnet +- Communication entre **le site et Webdev** (via messages et API REST) +- **Iframe & JavaScript** pour récupérer les fiches normes et documents +### Notes : +1. **Conversations Odoo** ➡️ Fil de discussion structuré avant injection dans le RAG +2. **Manuel** ➡️ Document technique de formulation + - Ajout dans l’interface RAGFLOW ou via API + - FAQ du manuel ➡️ Création d’une base de connaissances dynamique +3. **Canal d’entrée support IA** ➡️ Automatisation et tri des demandes +4. **Base de données** : BRG-LAB +5. **Logiciel de supervision** : Étude des interactions avec les acteurs concernés +6. **Scoring des dialogues IA** +7. **Gestion des erreurs et corrections dynamiques** +8. **Fonction commerciale future** +9. **Processus Caliopi** ➡️ Cahier des charges pour les formations + +--- + +## Tâches à accomplir + +- [ ] Rédiger un cahier des charges pour récupération données d’Odoo [[Scripts requêtes Odoo]] +- [ ] Récupérer l’existant (mails, tickets, Odoo) + - [ ] scripts de récupérations (facilement exécutable par LLM) +- [ ] Étudier l’accès et les fonctionnalités du RAGFLOW + - [ ] Mise en place d'une base de donnée (vertorielle? voir selon les cas de figure) + - [ ] Bibliothèque de scripts + - [ ] Préparation des données toutes la documentation technique, normes ... (formatage des données, interprétation des images si besoin pour meilleure compréhension par LLM) +- [ ] Analyser et classifier les demandes des clients +- [ ] Implémenter le scoring des dysfonctionnements +- [ ] Voir les solutions pour API REST et iframe Webdev +- [ ] Automatiser l’intégration du manuel utilisateur + +--- + +### Ressources nécessaires + +- Accès aux bases de données et historiques des tickets +- Documentation technique Odoo +- Support technique interne +- Documentation RAGFLOW +- Référentiel des normes AFNOR +- API Visual Studio / Webdev REST diff --git a/Scripts requêtes Odoo.md b/Scripts requêtes Odoo.md new file mode 100644 index 0000000..25d7bf8 --- /dev/null +++ b/Scripts requêtes Odoo.md @@ -0,0 +1,89 @@ +#### La connexion à Odoo s'effectue par son API +- Les requête sont en python +- Création de scripts en python + +##### **Création d'un programme en python pour récupérer les informations concernant les tickets et demandes** +Modèle de la base de donnée identifié "project.task" qui par son project_id va permettre de récupérer les informations présentes sur Odoo dans le suite d'un ticket ou d'une demande. + +- project_id: + - ID: 11 - Nom: ACHAT ABONNEMENT BRG-LAB + - ID: 23 - Nom: Assistance téléphonique + - ID: 25 - Nom: Bons de commandes + - ID: 22 - Nom: DEVELOPPEMENT SPECIFIQUE + - ID: 3 - Nom: Demandes + - ID: 8 - Nom: Formations + - ID: 9 - Nom: Installations / Migrations + - ID: 26 - Nom: OBTENTION BON DE COMMANDE + - ID: 28 - Nom: Projet SIGIL + - ID: 7 - Nom: R&D + - ID: 27 - Nom: RENOUVELLEMENT OPEN + - ID: 6 - Nom: Suggestions + - ID: 4 - Nom: Tickets +Ensuite autre champ important stage_id qui va nous permettre de récupérer tous les tickets ou demandes par catégorie. + +- stage_id: + - ID: 1 - Nom: Arrivée sur le support + - ID: 5 - Nom: En attente de résolution + - ID: 49 - Nom: A développer + - ID: 63 - Nom: Commande verbale + - ID: 67 - Nom: Attente Date + - ID: 71 - Nom: Attente RDV / Qualif + - ID: 76 - Nom: Demande orale + - ID: 87 - Nom: A récupérer + - ID: 90 - Nom: A TRAITER + - ID: 96 - Nom: DEVIS A REALISER + - ID: 99 - Nom: Ouvert + - ID: 16 - Nom: Suggestion à qualifier + - ID: 18 - Nom: Devis à chiffrer + - ID: 43 - Nom: COMMANDÉ + - ID: 46 - Nom: Tickets existants + - ID: 50 - Nom: En cours de développement + - ID: 55 - Nom: Arrivée depuis BRG-LAB + - ID: 66 - Nom: Attente SEPA + - ID: 69 - Nom: Attente Plateforme + - ID: 72 - Nom: Attente Feuille Inscrip + - ID: 77 - Nom: Attente qualification + - ID: 83 - Nom: Temps restant + - ID: 86 - Nom: En attente de prise en charge + - ID: 88 - Nom: Demande faite + - ID: 91 - Nom: DEMANDE FAITE + - ID: 97 - Nom: ATTENTE RETOUR + - ID: 100 - Nom: En attente d'informations + - ID: 3 - Nom: En souffrance + - ID: 19 - Nom: Moyen terme + - ID: 22 - Nom: En cours + - ID: 32 - Nom: En attente d'infos / retours + - ID: 64 - Nom: Attente SEPA + CONTRAT + - ID: 68 - Nom: Attente Base + - ID: 73 - Nom: Attente Convention + - ID: 78 - Nom: Attente acceptation + - ID: 92 - Nom: RELANCE 1 FAITE + - ID: 101 - Nom: A publier + - ID: 105 - Nom: FACTURE A ENVOYER + - ID: 20 - Nom: Long terme + - ID: 34 - Nom: Attente formation + - ID: 47 - Nom: À planifier + - ID: 52 - Nom: A réceptionner par le client + - ID: 62 - Nom: Workflow Digiforma Ok ? + - ID: 65 - Nom: Attente CONTRAT + - ID: 79 - Nom: Attente début projet + - ID: 85 - Nom: Corrigé + - ID: 89 - Nom: Attente formation + - ID: 95 - Nom: BLOCAGE ADMINISTRATIF + - ID: 102 - Nom: A valider + - ID: 12 - Nom: À planifier +Ce qui va nous permmettre de récupérer tous les tickets par exemple des demandes entrantes et les traités. + +Structure du programme [[README]] + +Celui-ci va nous permettre la récupération d'un ticket donné, d'extaire l'historique de discussion et récupérer les pièces-jointes (récupération dans des répertoires précis). + +Nous allons par la suite lister des actions précices et récupérer ses différentes fonctions et les utiliser (argument + script). + +Il reste un tavail de filtrage des données selon les demandes ce qu'il est nécessaire de conserver, le filtre va synthétiser un JSON final par ordre chronologique des conversation et les pièces jointes dans un sous répertoire en vue d'une analyse. + +Exemples de format JSON récupérés: +- ticket_T11016 récupération de tous les champs exploitables [[T11016]] + - Comme on peut le voir on accès aux id des messages, au scoring, au pièces-jointes, les changement d'état du ticket +- On peut ensuite récupérer ses informations et filtrer les balises html etc ... et classer les fils de discussions, garder la chronologie, voir transformer certaines informations pour éclairssir le parcours du ticket (changement d'état) [[exemple filtre fil de discussion]] + - Adapter le filtre en fonction de la tâche à réaliser \ No newline at end of file diff --git a/T11016.md b/T11016.md new file mode 100644 index 0000000..af4547e --- /dev/null +++ b/T11016.md @@ -0,0 +1,318 @@ +```json +{ + { + +    "id": 10995, + +    "active": true, + +    "name": "cbao_support_technique - Message : VALENTINE BETON Fabrice FONTAN", + +    "description": "


", + +    "sequence": 10, + +    "stage_id": [ + +        32, + +        "En attente d'infos / retours" + +    ], + +    "kanban_state": "normal", + +    "create_date": "2025-03-06 12:57:12", + +    "write_date": "2025-03-06 15:48:22", + +    "date_start": "2025-03-06 12:57:15", + +    "date_end": false, + +    "date_assign": "2025-03-06 13:13:25", + +    "date_deadline": "2025-03-21", + +    "date_last_stage_update": "2025-03-06 15:48:22", + +    "project_id": [ + +        3, + +        "Demandes" + +    ], + +    "notes": false, + +    "planned_hours": 0.0, + +    "user_id": [ + +        32, + +        "Romuald GRUSON" + +    ], + +    "partner_id": [ + +        6716, + +        "VALENTINE BETON, Fabrice FONTAN" + +    ], + +    "company_id": [ + +        1, + +        "CBAO S.A.R.L." + +    ], + +    "color": 0, + +    "displayed_image_id": false, + +    "parent_id": false, + +    "child_ids": [], + +    "email_from": "laboratoire@tissinie.fr", + +    "email_cc": "support@cbao.fr", + +    "working_hours_open": 0.0, + +    "working_hours_close": 0.0, + +    "working_days_open": 0.0, + +    "working_days_close": 0.0, + +    "website_message_ids": [ + +        226954, + +        226909, + +        226873, + +        226868 + +    ], + +    "remaining_hours": 0.0, + +    "effective_hours": 0.0, + +    "total_hours_spent": 0.0, + +    "progress": 0.0, + +    "subtask_effective_hours": 0.0, + +    "timesheet_ids": [], + +    "priority": "0", + +    "code": "T11016", + +    "milestone_id": false, + +    "sale_line_id": false, + +    "sale_order_id": false, + +    "billable_type": "no", + +    "activity_ids": [], + +    "message_follower_ids": [ + +        89096, + +        89097, + +        89098, + +        89099 + +    ], + +    "message_ids": [ + +        226955, + +        226954, + +        226913, + +        226909, + +        226875, + +        226874, + +        226873, + +        226870, + +        226869, + +        226868, + +        226867 + +    ], + +    "message_main_attachment_id": false, + +    "failed_message_ids": [], + +    "rating_ids": [], + +    "rating_last_value": 0.0, + +    "access_token": "e668cd42-f0e4-4c04-b993-b2a5c9bc29b0", + +    "create_uid": [ + +        1, + +        "OdooBot" + +    ], + +    "write_uid": [ + +        32, + +        "Romuald GRUSON" + +    ], + +    "x_CBAO_windows_maj_ID": false, + +    "x_CBAO_version_signalement": false, + +    "x_CBAO_version_correction": false, + +    "x_CBAO_DateCorrection": false, + +    "x_CBAO_Scoring_Facilite": 0, + +    "x_CBAO_Scoring_Importance": 0, + +    "x_CBAO_Scoring_Urgence": 0, + +    "x_CBAO_Scoring_Incidence": 0, + +    "x_CBAO_Scoring_Resultat": 0, + +    "x_CBAO_InformationsSup": false, + +    "kanban_state_label": "En cours", + +    "subtask_planned_hours": 0.0, + +    "manager_id": [ + +        22, + +        "Fabien LAFAY" + +    ], + +    "user_email": "romuald@mail.cbao.fr", + +    "attachment_ids": [], + +    "legend_blocked": "Bloqué", + +    "legend_done": "Prêt pour la prochaine étape", + +    "legend_normal": "En cours", + +    "subtask_project_id": [ + +        3, + +        "Demandes" + +    ], + +    "subtask_count": 0, + +    "analytic_account_active": true, + +    "allow_timesheets": true, + +    "use_milestones": false, + +    "show_time_control": "start", + +    "is_project_map_empty": true, + +    "activity_state": false, + +    "activity_user_id": false, + +    "activity_type_id": false, + +    "activity_date_deadline": false, + +    "activity_summary": false, + +    "message_is_follower": false, + +    "message_unread": false, + +    "message_unread_counter": 0, + +    "message_needaction": false, + +    "message_needaction_counter": 0, + +    "message_has_error": false, + +    "message_has_error_counter": 0, + +    "message_attachment_count": 0, + +    "rating_last_feedback": false, + +    "rating_last_image": false, + +    "rating_count": 0, + +    "access_url": "/my/task/10995", + +    "access_warning": "", + +    "display_name": "[T11016] cbao_support_technique - Message : VALENTINE BETON Fabrice FONTAN", + +    "__last_update": "2025-03-06 15:48:22", + +    "stage_id_value": "En attente d'infos / retours", + +    "project_id_value": "Demandes", + +    "user_id_value": "Romuald GRUSON", + +    "partner_id_value": "VALENTINE BETON, Fabrice FONTAN", + +    "manager_id_value": "Fabien LAFAY", + +    "company_id_value": "CBAO S.A.R.L.", + +    "subtask_project_id_value": "Demandes", + +    "create_uid_value": "OdooBot", + +    "write_uid_value": "Romuald GRUSON" + +} +} diff --git a/exemple filtre fil de discussion.md b/exemple filtre fil de discussion.md new file mode 100644 index 0000000..c3ef2ee --- /dev/null +++ b/exemple filtre fil de discussion.md @@ -0,0 +1,434 @@ +```json +{ +    "226867": { + +        "main_message": null, + +        "replies": [ + +            { + +                "id": 226955, + +                "body": "", + +                "date": "2025-03-06 15:48:22", + +                "author_id": [ + +                    32165, + +                    "Romuald GRUSON" + +                ], + +                "email_from": "\"Romuald GRUSON\" ", + +                "subject": false, + +                "parent_id": [ + +                    226867, + +                    "[T11016] cbao_support_technique - Message : VALENTINE BETON Fabrice FONTAN" + +                ], + +                "message_type": "notification", + +                "subtype_id": [ + +                    19, + +                    "Stage Changed" + +                ], + +                "attachment_ids": [] + +            }, + +            { + +                "id": 226954, + +                "body": "Romuald explication par téléphone => ok", + +                "date": "2025-03-06 15:48:20", + +                "author_id": [ + +                    32165, + +                    "Romuald GRUSON" + +                ], + +                "email_from": "\"Romuald GRUSON\" ", + +                "subject": false, + +                "parent_id": [ + +                    226867, + +                    "[T11016] cbao_support_technique - Message : VALENTINE BETON Fabrice FONTAN" + +                ], + +                "message_type": "comment", + +                "subtype_id": [ + +                    2, + +                    "Note" + +                ], + +                "attachment_ids": [] + +            }, + +            { + +                "id": 226913, + +                "body": "", + +                "date": "2025-03-06 14:13:52", + +                "author_id": [ + +                    32165, + +                    "Romuald GRUSON" + +                ], + +                "email_from": "\"Romuald GRUSON\" ", + +                "subject": false, + +                "parent_id": [ + +                    226867, + +                    "[T11016] cbao_support_technique - Message : VALENTINE BETON Fabrice FONTAN" + +                ], + +                "message_type": "notification", + +                "subtype_id": [ + +                    16, + +                    "Task Created" + +                ], + +                "attachment_ids": [] + +            }, + +            { + +                "id": 226909, + +                "body": "Bonjour, Il y a plusieurs problèmes merci de nous appeler dès que possible, (Logo, masses volumiques et verrouillage des fichiers PDF), Merci", + +                "date": "2025-03-06 14:05:36", + +                "author_id": [ + +                    6716, + +                    "VALENTINE BETON, Fabrice FONTAN" + +                ], + +                "email_from": "\"Fabrice FONTAN\" ", + +                "subject": "Re: [T11016] cbao_support_technique - Message : VALENTINE BETON Fabrice FONTAN", + +                "parent_id": [ + +                    226867, + +                    "[T11016] cbao_support_technique - Message : VALENTINE BETON Fabrice FONTAN" + +                ], + +                "message_type": "comment", + +                "subtype_id": [ + +                    1, + +                    "Discussions" + +                ], + +                "attachment_ids": [] + +            }, + +            { + +                "id": 226875, + +                "body": "", + +                "date": "2025-03-06 13:17:24", + +                "author_id": [ + +                    32165, + +                    "Romuald GRUSON" + +                ], + +                "email_from": "\"Romuald GRUSON\" ", + +                "subject": false, + +                "parent_id": [ + +                    226867, + +                    "[T11016] cbao_support_technique - Message : VALENTINE BETON Fabrice FONTAN" + +                ], + +                "message_type": "notification", + +                "subtype_id": [ + +                    19, + +                    "Stage Changed" + +                ], + +                "attachment_ids": [] + +            }, + +            { + +                "id": 226873, + +                "body": "Bonjour , Toutes vos données sont bien enregistrées et accessibles dans le logiciel. Je reste à votre entière disposition pour toute information complémentaire. Cordialement, --- Support technique Afin d'assurer une meilleure traçabilité et vous garantir une prise en charge optimale, nous vous invitons à envoyer vos demandes d'assistance technique à support@cbao.fr L'objectif du Support Technique est de vous aider : si vous rencontrez une difficulté, ou pour nous soumettre une ou des suggestions d'amélioration de nos logiciels ou de nos méthodes. Notre service est ouvert du lundi au vendredi de 9h à 12h et de 14h à 18h. Dès réception, un technicien prendra en charge votre demande et au besoin vous rappellera. Confidentialité : Ce courriel contient des informations confidentielles exclusivement réservées au destinataire mentionné. Si vous deviez recevoir cet e-mail par erreur, merci d’en avertir immédiatement l’expéditeur et de le supprimer de votre système informatique. Au cas où vous ne seriez pas destinataire de ce message, veuillez noter que sa divulgation, sa copie ou tout acte en rapport avec la communication du contenu des informations est strictement interdit.", + +                "date": "2025-03-06 13:17:22", + +                "author_id": [ + +                    32165, + +                    "Romuald GRUSON" + +                ], + +                "email_from": "support@cbao.fr", + +                "subject": "Re: [T11016] - cbao_support_technique - Message : VALENTINE BETON Fabrice FONTAN", + +                "parent_id": [ + +                    226867, + +                    "[T11016] cbao_support_technique - Message : VALENTINE BETON Fabrice FONTAN" + +                ], + +                "message_type": "comment", + +                "subtype_id": [ + +                    1, + +                    "Discussions" + +                ], + +                "attachment_ids": [] + +            }, + +            { + +                "id": 226868, + +                "body": "Veuillez trouver ci-dessous le suivi de vos appels. Message : le 06/03/2025 à 13:51 Nom VALENTINE BETON Prénom Fabrice FONTAN Adresse mail oui Panne savoir si vous avez retrouvé les anciens essaie beton Rv message répondeur Ticket non Message Message pour : support Technique / support-- Bonjour, MR FONTAN demande si vous avez retrouvé les anciens essais de résistance beton suite à la migration Marlène Adresse - 31800 VALENTINE Tél 05-61-89-18-07 E-mail laboratoire@tissinie.fr Vos appels sur Flux RSS : Cliquez ici Cordialement Agenda5", + +                "date": "2025-03-06 12:54:49", + +                "author_id": [ + +                    31768, + +                    "vocalia" + +                ], + +                "email_from": "vocalia@a5serv.fr", + +                "subject": "cbao_support_technique - Message : VALENTINE BETON Fabrice FONTAN", + +                "parent_id": [ + +                    226867, + +                    "[T11016] cbao_support_technique - Message : VALENTINE BETON Fabrice FONTAN" + +                ], + +                "message_type": "email", + +                "subtype_id": [ + +                    1, + +                    "Discussions" + +                ], + +                "attachment_ids": [] + +            } + +        ] + +    }, + +    "226874": { + +        "main_message": { + +            "id": 226874, + +            "body": "", + +            "date": "2025-03-06 13:17:24", + +            "author_id": [ + +                32165, + +                "Romuald GRUSON" + +            ], + +            "email_from": "\"Romuald GRUSON\" ", + +            "subject": false, + +            "parent_id": false, + +            "message_type": "notification", + +            "subtype_id": [ + +                2, + +                "Note" + +            ], + +            "attachment_ids": [] + +        }, + +        "replies": [] + +    }, + +    "226870": { + +        "main_message": { + +            "id": 226870, + +            "body": "", + +            "date": "2025-03-06 13:13:25", + +            "author_id": [ + +                32165, + +                "Romuald GRUSON" + +            ], + +            "email_from": "\"Romuald GRUSON\" ", + +            "subject": false, + +            "parent_id": false, + +            "message_type": "notification", + +            "subtype_id": [ + +                2, + +                "Note" + +            ], + +            "attachment_ids": [] + +        }, + +        "replies": [] + +    }, + +    "226869": { + +        "main_message": { + +            "id": 226869, + +            "body": "", + +            "date": "2025-03-06 12:57:15", + +            "author_id": [ + +                2, + +                "OdooBot" + +            ], + +            "email_from": "\"OdooBot\" ", + +            "subject": false, + +            "parent_id": false, + +            "message_type": "notification", + +            "subtype_id": [ + +                2, + +                "Note" + +            ], + +            "attachment_ids": [] + +        }, + +        "replies": [] + +    } + +} +``` \ No newline at end of file