first commit

This commit is contained in:
mrtoine 2025-09-20 13:18:04 +02:00
commit e6c52820cd
227 changed files with 16156 additions and 0 deletions

52
documentation/api.html Normal file
View file

@ -0,0 +1,52 @@
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>SuiteConsultance — Documentation Utilisateur</title>
<link rel="stylesheet" href="assets/style.css" />
</head>
<body>
<div class="navbar">
<div class="inner">
<div class="brand">SuiteConsultance</div>
<span class="badge">v1.0</span>
<div class="navlinks"><a href="index.html">Accueil</a>
<a href="installation.html">Installation</a>
<a href="demarrage.html">Démarrage rapide</a>
<a href="crm.html">CRM</a>
<a href="email.html">Emails & Scraping</a>
<a href="propositions.html">Propositions</a>
<a href="devis.html">Devis</a>
<a href="projets.html">Projets</a>
<a href="taches.html">Tâches & Rappels</a>
<a href="api.html" style="background:orange">API</a>
<a href="donnees.html">Données & Sauvegarde</a>
<a href="build.html">Build Desktop</a>
<a href="depannage.html">Dépannage</a>
<a href="faq.html">FAQ</a></div>
</div>
</div>
<div class="container">
<h2>Endpoints disponibles</h2>
<h3>Recherche prospects</h3>
<pre>GET /api/crm/prospects/search?q=...&name=...&email=...&company=...&status=...&city=...&tags=a,b&date_from=YYYY-MM-DD&date_to=YYYY-MM-DD</pre>
<p>Retourne une liste filtrée par texte ou filtres spécifiques. Les <em>tags</em> sont tous requis sils sont fournis.</p>
<h3>Templates email (lecture)</h3>
<pre>GET /api/email_template/&lt;template_id&gt;</pre>
<h3>Créer des prospects depuis un scraping</h3>
<pre>POST /api/scraping/create_prospects
Content-Type: application/json
[{"name":"...", "email":"...", "company":"..."}]</pre>
<h3>Tester la configuration email</h3>
<pre>POST /api/test_email_config</pre>
</div>
<div class="container footer small">Dernière mise à jour : 24 August 2025 • Ce guide couvre lutilisation de la version actuelle de SuiteConsultance.</div>
</body>
</html>

View file

@ -0,0 +1,141 @@
/* Wiki layout & design for documentation */
:root{
--wiki-bg:#f7f7f9;
--wiki-surface:#ffffff;
--wiki-border:#e5e7eb;
--wiki-text:#1f2937;
--wiki-muted:#6b7280;
--wiki-accent:#2563eb;
--wiki-accent-strong:#1d4ed8;
--wiki-link:#1f6feb;
--shadow-sm:0 1px 2px rgba(0,0,0,.04);
--shadow-md:0 4px 16px rgba(0,0,0,.06);
}
/* Base */
html,body{height:100%}
*{box-sizing:border-box}
body{
margin:0;
color:var(--wiki-text);
background:var(--wiki-bg);
font:400 16px/1.55 system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji";
text-rendering:optimizeLegibility;
-webkit-font-smoothing:antialiased;
-moz-osx-font-smoothing:grayscale;
}
a{color:var(--wiki-link);text-decoration:none}
a:hover{text-decoration:underline}
code,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}
/* Sidebar (transforme la navbar en barre latérale wiki) */
.navbar{
position:fixed;left:0;top:0;bottom:0;width:280px;
background:var(--wiki-surface);
border-right:1px solid var(--wiki-border);
box-shadow:var(--shadow-sm);
overflow:auto;
z-index:100;
}
.navbar .inner{display:flex;flex-direction:column;gap:12px;padding:16px}
.brand{
font-weight:700;font-size:18px;letter-spacing:.2px;
}
.badge{
align-self:flex-start;
background:rgba(37,99,235,.1);
color:var(--wiki-accent-strong);
border:1px solid rgba(37,99,235,.25);
padding:2px 8px;border-radius:999px;
font-size:12px;font-weight:600;
}
.search{margin-top:4px}
.search input[type="search"]{
width:100%;padding:10px 12px;border:1px solid var(--wiki-border);
border-radius:8px;background:#fff;color:var(--wiki-text);
outline:none;box-shadow:none;
}
.search input[type="search"]::placeholder{color:var(--wiki-muted)}
.search input[type="search"]:focus{border-color:var(--wiki-accent);box-shadow:0 0 0 3px rgba(37,99,235,.12)}
.navlinks{
display:flex;flex-direction:column;gap:4px;margin-top:4px
}
.navlinks a{
display:block;padding:8px 10px;border-radius:8px;
color:var(--wiki-text);text-decoration:none;
border:1px solid transparent;
}
.navlinks a:hover{
background:#f3f4f6;border-color:#e5e7eb;text-decoration:none
}
/* Neutraliser l'ancien surlignage inline et définir l'état actif */
.navlinks a[style]{background:unset !important}
.navlinks a[style*="#141727"]{
background:var(--wiki-accent);color:#fff !important;
border-color:var(--wiki-accent);
font-weight:600;
}
/* Mise en page du contenu */
body{margin-left:280px}
.container{max-width:1040px;margin:0 auto;padding:0 24px}
.hero{
background:transparent;margin:0;border-bottom:1px solid var(--wiki-border)
}
.hero .container{padding:28px 24px}
.hero h1{margin:0 0 4px 0;font-size:28px;line-height:1.2}
.hero p{margin:6px 0 0 0;color:var(--wiki-muted)}
/* Cartes en style wiki (simples blocs) */
.grid{
display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
gap:14px
}
.card{
background:var(--wiki-surface);
border:1px solid var(--wiki-border);
border-radius:10px;
padding:14px 14px;
box-shadow:var(--shadow-sm);
}
.card h3{margin:0 0 6px 0;font-size:16px}
.card p{margin:0;color:#374151}
/* Tables et code */
.table-wrap{overflow:auto;border:1px solid var(--wiki-border);border-radius:8px;background:#fff}
table{border-collapse:collapse;width:100%}
th,td{padding:10px 12px;border-bottom:1px solid var(--wiki-border);text-align:left}
th{background:#f8fafc;font-weight:700}
pre{background:#0b1020;color:#e7e7e7;padding:14px;border-radius:10px;overflow:auto}
code{background:#f3f4f6;border:1px solid #e5e7eb;color:#111827;padding:2px 6px;border-radius:6px}
/* Footer */
.footer.small{
color:var(--wiki-muted);
border-top:1px solid var(--wiki-border);
padding:16px 24px;
margin-top:24px;
background:linear-gradient(#fff,#fff)
}
/* Responsive */
@media (max-width: 1200px){
.grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 1024px){
body{margin-left:0}
.navbar{
position:sticky;top:0;width:100%;height:auto;max-height:unset;
border-right:none;border-bottom:1px solid var(--wiki-border)
}
.navbar .inner{gap:10px}
.navlinks{flex-direction:row;flex-wrap:wrap;gap:6px}
.navlinks a{padding:6px 10px}
.container{padding:0 16px}
.hero .container{padding:16px}
}
@media (max-width: 640px){
.grid{grid-template-columns:1fr}
.search input[type="search"]{padding:8px 10px}
}

View file

@ -0,0 +1,141 @@
/* Wiki layout & design for documentation */
:root{
--wiki-bg:#f7f7f9;
--wiki-surface:#ffffff;
--wiki-border:#e5e7eb;
--wiki-text:#1f2937;
--wiki-muted:#6b7280;
--wiki-accent:#2563eb;
--wiki-accent-strong:#1d4ed8;
--wiki-link:#1f6feb;
--shadow-sm:0 1px 2px rgba(0,0,0,.04);
--shadow-md:0 4px 16px rgba(0,0,0,.06);
}
/* Base */
html,body{height:100%}
*{box-sizing:border-box}
body{
margin:0;
color:var(--wiki-text);
background:var(--wiki-bg);
font:400 16px/1.55 system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji";
text-rendering:optimizeLegibility;
-webkit-font-smoothing:antialiased;
-moz-osx-font-smoothing:grayscale;
}
a{color:var(--wiki-link);text-decoration:none}
a:hover{text-decoration:underline}
code,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}
/* Sidebar (transforme la navbar en barre latérale wiki) */
.navbar{
position:fixed;left:0;top:0;bottom:0;width:280px;
background:var(--wiki-surface);
border-right:1px solid var(--wiki-border);
box-shadow:var(--shadow-sm);
overflow:auto;
z-index:100;
}
.navbar .inner{display:flex;flex-direction:column;gap:12px;padding:16px}
.brand{
font-weight:700;font-size:18px;letter-spacing:.2px;
}
.badge{
align-self:flex-start;
background:rgba(37,99,235,.1);
color:var(--wiki-accent-strong);
border:1px solid rgba(37,99,235,.25);
padding:2px 8px;border-radius:999px;
font-size:12px;font-weight:600;
}
.search{margin-top:4px}
.search input[type="search"]{
width:100%;padding:10px 12px;border:1px solid var(--wiki-border);
border-radius:8px;background:#fff;color:var(--wiki-text);
outline:none;box-shadow:none;
}
.search input[type="search"]::placeholder{color:var(--wiki-muted)}
.search input[type="search"]:focus{border-color:var(--wiki-accent);box-shadow:0 0 0 3px rgba(37,99,235,.12)}
.navlinks{
display:flex;flex-direction:column;gap:4px;margin-top:4px
}
.navlinks a{
display:block;padding:8px 10px;border-radius:8px;
color:var(--wiki-text);text-decoration:none;
border:1px solid transparent;
}
.navlinks a:hover{
background:#f3f4f6;border-color:#e5e7eb;text-decoration:none
}
/* Neutraliser l'ancien surlignage inline et définir l'état actif */
.navlinks a[style]{background:unset !important}
.navlinks a[style*="#141727"]{
background:var(--wiki-accent);color:#fff !important;
border-color:var(--wiki-accent);
font-weight:600;
}
/* Mise en page du contenu */
body{margin-left:280px}
.container{max-width:1040px;margin:0 auto;padding:0 24px}
.hero{
background:transparent;margin:0;border-bottom:1px solid var(--wiki-border)
}
.hero .container{padding:28px 24px}
.hero h1{margin:0 0 4px 0;font-size:28px;line-height:1.2}
.hero p{margin:6px 0 0 0;color:var(--wiki-muted)}
/* Cartes en style wiki (simples blocs) */
.grid{
display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
gap:14px
}
.card{
background:var(--wiki-surface);
border:1px solid var(--wiki-border);
border-radius:10px;
padding:14px 14px;
box-shadow:var(--shadow-sm);
}
.card h3{margin:0 0 6px 0;font-size:16px}
.card p{margin:0;color:#374151}
/* Tables et code */
.table-wrap{overflow:auto;border:1px solid var(--wiki-border);border-radius:8px;background:#fff}
table{border-collapse:collapse;width:100%}
th,td{padding:10px 12px;border-bottom:1px solid var(--wiki-border);text-align:left}
th{background:#f8fafc;font-weight:700}
pre{background:#0b1020;color:#e7e7e7;padding:14px;border-radius:10px;overflow:auto}
code{background:#f3f4f6;border:1px solid #e5e7eb;color:#111827;padding:2px 6px;border-radius:6px}
/* Footer */
.footer.small{
color:var(--wiki-muted);
border-top:1px solid var(--wiki-border);
padding:16px 24px;
margin-top:24px;
background:linear-gradient(#fff,#fff)
}
/* Responsive */
@media (max-width: 1200px){
.grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 1024px){
body{margin-left:0}
.navbar{
position:sticky;top:0;width:100%;height:auto;max-height:unset;
border-right:none;border-bottom:1px solid var(--wiki-border)
}
.navbar .inner{gap:10px}
.navlinks{flex-direction:row;flex-wrap:wrap;gap:6px}
.navlinks a{padding:6px 10px}
.container{padding:0 16px}
.hero .container{padding:16px}
}
@media (max-width: 640px){
.grid{grid-template-columns:1fr}
.search input[type="search"]{padding:8px 10px}
}

67
documentation/build.html Normal file
View file

@ -0,0 +1,67 @@
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>SuiteConsultance — Documentation Utilisateur</title>
<link rel="stylesheet" href="assets/style.css" />
<link rel="stylesheet" href="assets/wiki.css" />
</head>
<body>
<div class="navbar">
<div class="inner">
<div class="brand">SuiteConsultance</div>
<span class="badge">v1.0</span>
<div class="search"><input type="search" placeholder="Rechercher dans la doc…" aria-label="Recherche" /></div>
<div class="navlinks"><a href="index.html">Accueil</a>
<a href="installation.html">Installation</a>
<a href="demarrage.html">Démarrage rapide</a>
<a href="crm.html">CRM</a>
<a href="email.html">Emails & Scraping</a>
<a href="propositions.html">Propositions</a>
<a href="devis.html">Devis</a>
<a href="projets.html">Projets</a>
<a href="taches.html">Tâches & Rappels</a>
<a href="api.html">API</a>
<a href="donnees.html">Données & Sauvegarde</a>
<a href="build.html" style="background:orange">Build Desktop</a>
<a href="depannage.html">Dépannage</a>
<a href="faq.html">FAQ</a></div>
</div>
</div>
<div class="container">
<h2>Construire lapplication desktop (macOS)</h2>
<ol>
<li>Préparer licône à partir de <code>icon.png</code> :<br/>
<pre># Générer le .iconset (macOS)
mkdir -p icon.iconset
sips -z 16 16 icon.png --out icon.iconset/icon_16x16.png
sips -z 32 32 icon.png --out icon.iconset/icon_16x16@2x.png
sips -z 32 32 icon.png --out icon.iconset/icon_32x32.png
sips -z 64 64 icon.png --out icon.iconset/icon_32x32@2x.png
sips -z 128 128 icon.png --out icon.iconset/icon_128x128.png
sips -z 256 256 icon.png --out icon.iconset/icon_128x128@2x.png
sips -z 256 256 icon.png --out icon.iconset/icon_256x256.png
sips -z 512 512 icon.png --out icon.iconset/icon_256x256@2x.png
sips -z 512 512 icon.png --out icon.iconset/icon_512x512.png
sips -z 1024 1024 icon.png --out icon.iconset/icon_512x512@2x.png
iconutil -c icns icon.iconset -o icon.icns</pre>
</li>
<li>Lancer le build :<br/>
<pre>pyinstaller SuiteConsultance.spec
# ou
pyinstaller "Suivi Consultance.spec"</pre>
</li>
<li>Tester lapp signée : doublecliquez lapp. Si rien ne souvre, testez en CLI :<br/>
<pre>python run.py --webview</pre>
</li>
</ol>
<h3>Windows / Linux</h3>
<p>Adaptez la commande PyInstaller (icônes au format .ico/.png). Vérifiez la présence de <strong>pywebview</strong> et des dépendances WebKit/Edge selon la plateforme.</p>
</div>
<div class="container footer small">Dernière mise à jour : 24 August 2025 • Ce guide couvre lutilisation de la version actuelle de SuiteConsultance.</div>
</body>
</html>

59
documentation/crm.html Normal file
View file

@ -0,0 +1,59 @@
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>SuiteConsultance — Documentation Utilisateur</title>
<link rel="stylesheet" href="assets/style.css" />
<link rel="stylesheet" href="assets/wiki.css" />
</head>
<body>
<div class="navbar">
<div class="inner">
<div class="brand">SuiteConsultance</div>
<span class="badge">v1.0</span>
<div class="search"><input type="search" placeholder="Rechercher dans la doc…" aria-label="Recherche" /></div>
<div class="navlinks"><a href="index.html">Accueil</a>
<a href="installation.html">Installation</a>
<a href="demarrage.html">Démarrage rapide</a>
<a href="crm.html" style="background:orange">CRM</a>
<a href="email.html">Emails & Scraping</a>
<a href="propositions.html">Propositions</a>
<a href="devis.html">Devis</a>
<a href="projets.html">Projets</a>
<a href="taches.html">Tâches & Rappels</a>
<a href="api.html">API</a>
<a href="donnees.html">Données & Sauvegarde</a>
<a href="build.html">Build Desktop</a>
<a href="depannage.html">Dépannage</a>
<a href="faq.html">FAQ</a></div>
</div>
</div>
<div class="container">
<h2>Vue CRM</h2>
<p>La page CRM regroupe deux onglets : <strong>Prospects</strong> et <strong>Clients</strong>. Les fiches sont stockées en JSON dans <code>Data/prospects</code> et <code>Data/clients</code>.</p>
<h3>Prospects</h3>
<ul>
<li><strong>Statut</strong> : Nouveau, Contacté, Qualifié, Proposition, Non intéressé.</li>
<li><strong>Scoring</strong> : score numérique → catégories Froid / Tiède / Chaud.</li>
<li><strong>Champs clés</strong> : nom, société, email, téléphone, source, notes, tags, dernière prise de contact, prochaine action.</li>
<li><strong>Recherche & filtres</strong> (API <code>/api/crm/prospects/search</code>) : filtrez par nom/email/société/ville/tags/période.</li>
</ul>
<h3>Actions fréquentes</h3>
<ul>
<li><em>Ajouter</em> : bouton “Ajouter un prospect”.</li>
<li><em>Modifier</em> : via la fiche.</li>
<li><em>Convertir en client</em> : bouton “Convertir”.</li>
<li><em>Envoyer un email</em> : depuis la fiche (historique accessible).</li>
</ul>
<h3>Clients</h3>
<p>Les clients héritent dun modèle proche (coordonnées, tags, notes, documents liés) et peuvent recevoir des <strong>projets</strong> liés.</p>
</div>
<div class="container footer small">Dernière mise à jour : 24 August 2025 • Ce guide couvre lutilisation de la version actuelle de SuiteConsultance.</div>
</body>
</html>

View file

@ -0,0 +1,53 @@
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>SuiteConsultance — Documentation Utilisateur</title>
<link rel="stylesheet" href="assets/style.css" />
<link rel="stylesheet" href="assets/wiki.css" />
</head>
<body>
<div class="navbar">
<div class="inner">
<div class="brand">SuiteConsultance</div>
<span class="badge">v1.0</span>
<div class="search"><input type="search" placeholder="Rechercher dans la doc…" aria-label="Recherche" /></div>
<div class="navlinks"><a href="index.html">Accueil</a>
<a href="installation.html">Installation</a>
<a href="demarrage.html" style="background:orange">Démarrage rapide</a>
<a href="crm.html">CRM</a>
<a href="email.html">Emails & Scraping</a>
<a href="propositions.html">Propositions</a>
<a href="devis.html">Devis</a>
<a href="projets.html">Projets</a>
<a href="taches.html">Tâches & Rappels</a>
<a href="api.html">API</a>
<a href="donnees.html">Données & Sauvegarde</a>
<a href="build.html">Build Desktop</a>
<a href="depannage.html">Dépannage</a>
<a href="faq.html">FAQ</a></div>
</div>
</div>
<div class="container">
<h2>Objectif : être opérationnel en 5 minutes</h2>
<ol>
<li><strong>Ajouter un prospect</strong> : menu <em>CRM → Prospects → Ajouter</em>. Renseignez nom, société, email, statut (Nouveau/Contacté/Qualifié/Proposition/Non intéressé) et les <em>tags</em>.</li>
<li><strong>Planifier laction suivante</strong> : dans la fiche prospect, définissez <em>Prochaine action</em> (ex. relance jeudi 14h).</li>
<li><strong>Envoyer un email</strong> : configurez le SMTP (menu <em>Email → Configuration</em>), créez un template puis utilisez <em>Email → Envoi</em> ou depuis la fiche prospect.</li>
<li><strong>Convertir en client</strong> : depuis un prospect qualifié, utilisez <em>Convertir en client</em>.</li>
<li><strong>Créer une proposition ou un devis</strong> : rubrique <em>Propositions</em> ou <em>Devis</em>, remplissez le formulaire et générez le PDF.</li>
</ol>
<h2>Conseils rapides</h2>
<ul>
<li>Utilisez des <strong>tags</strong> pour vos segments (ex. “restauration”, “TPE”, “chaud”).</li>
<li>Le <strong>score</strong> de prospect évolue via les interactions (ouverture/clic/réponse). Catégories : Froid, Tiède, Chaud.</li>
<li>Le <strong>job quotidien</strong> peut générer des <em>brouillons demails du jour</em> pour vos relances (voir <a href="taches.html">Tâches & Rappels</a>).</li>
</ul>
</div>
<div class="container footer small">Dernière mise à jour : 24 August 2025 • Ce guide couvre lutilisation de la version actuelle de SuiteConsultance.</div>
</body>
</html>

View file

@ -0,0 +1,65 @@
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>SuiteConsultance — Documentation Utilisateur</title>
<link rel="stylesheet" href="assets/style.css" />
</head>
<body>
<div class="navbar">
<div class="inner">
<div class="brand">SuiteConsultance</div>
<span class="badge">v1.0</span>
<div class="navlinks"><a href="index.html">Accueil</a>
<a href="installation.html">Installation</a>
<a href="demarrage.html">Démarrage rapide</a>
<a href="crm.html">CRM</a>
<a href="email.html">Emails & Scraping</a>
<a href="propositions.html">Propositions</a>
<a href="devis.html">Devis</a>
<a href="projets.html">Projets</a>
<a href="taches.html">Tâches & Rappels</a>
<a href="api.html">API</a>
<a href="donnees.html">Données & Sauvegarde</a>
<a href="build.html">Build Desktop</a>
<a href="depannage.html" style="background:orange">Dépannage</a>
<a href="faq.html">FAQ</a></div>
</div>
</div>
<div class="container">
<h2>Problèmes fréquents</h2>
<h3>Pillow / lxml : erreurs de compilation</h3>
<div class="note">
<p>Mettez à jour les outils de build et réinstallez :</p>
<pre>python -m pip install --upgrade pip setuptools wheel
pip install --no-cache-dir --force-reinstall pillow lxml</pre>
</div>
<h3>NumPy: <em>dtype size changed</em></h3>
<div class="note">
<p>Incompatibilité binaire. Supprimez le cache et forcez la réinstallation :</p>
<pre>pip uninstall -y numpy
pip install --no-cache-dir numpy</pre>
</div>
<h3>PyInstaller : lapp ne se lance pas</h3>
<ul>
<li>Testez dabord : <code>python run.py --webview</code>.</li>
<li>Vérifiez les <strong>spécifications</strong> <code>SuiteConsultance.spec</code> et les <strong>icônes</strong>.</li>
<li>Regardez les logs en lançant lexécutable depuis un terminal.</li>
</ul>
<h3>“Le répertoire nexiste pas”</h3>
<p>Exécutez <code>python install.py</code> pour créer <code>Data/</code> et <code>output/</code>.</p>
<h3>Dépendances manquantes</h3>
<p>Le lanceur vérifie <em>fpdf, dateutil, pillow, packaging, pywebview</em>. Installez ce qui manque :</p>
<pre>pip install -r requirements.txt</pre>
</div>
<div class="container footer small">Dernière mise à jour : 24 August 2025 • Ce guide couvre lutilisation de la version actuelle de SuiteConsultance.</div>
</body>
</html>

47
documentation/devis.html Normal file
View file

@ -0,0 +1,47 @@
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>SuiteConsultance — Documentation Utilisateur</title>
<link rel="stylesheet" href="assets/style.css" />
<link rel="stylesheet" href="assets/wiki.css" />
</head>
<body>
<div class="navbar">
<div class="inner">
<div class="brand">SuiteConsultance</div>
<span class="badge">v1.0</span>
<div class="search"><input type="search" placeholder="Rechercher dans la doc…" aria-label="Recherche" /></div>
<div class="navlinks"><a href="index.html">Accueil</a>
<a href="installation.html">Installation</a>
<a href="demarrage.html">Démarrage rapide</a>
<a href="crm.html">CRM</a>
<a href="email.html">Emails & Scraping</a>
<a href="propositions.html">Propositions</a>
<a href="devis.html" style="background:orange">Devis</a>
<a href="projets.html">Projets</a>
<a href="taches.html">Tâches & Rappels</a>
<a href="api.html">API</a>
<a href="donnees.html">Données & Sauvegarde</a>
<a href="build.html">Build Desktop</a>
<a href="depannage.html">Dépannage</a>
<a href="faq.html">FAQ</a></div>
</div>
</div>
<div class="container">
<h2>Devis</h2>
<p>Allez dans <em>Devis → Nouveau devis</em>. Saisissez les lignes (description, quantité, prix) et générez le PDF (stocké dans <code>output/devis/</code>).</p>
<h3>Conseils</h3>
<ul>
<li>Numérotez vos devis (<code>SC2025001</code>).</li>
<li>Indiquez les conditions de paiement et la durée de validité.</li>
<li>Reliez le devis à un client pour le retrouver facilement.</li>
</ul>
</div>
<div class="container footer small">Dernière mise à jour : 24 August 2025 • Ce guide couvre lutilisation de la version actuelle de SuiteConsultance.</div>
</body>
</html>

View file

@ -0,0 +1,54 @@
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>SuiteConsultance — Documentation Utilisateur</title>
<link rel="stylesheet" href="assets/style.css" />
<link rel="stylesheet" href="assets/wiki.css" />
</head>
<body>
<div class="navbar">
<div class="inner">
<div class="brand">SuiteConsultance</div>
<span class="badge">v1.0</span>
<div class="search"><input type="search" placeholder="Rechercher dans la doc…" aria-label="Recherche" /></div>
<div class="navlinks"><a href="index.html">Accueil</a>
<a href="installation.html">Installation</a>
<a href="demarrage.html">Démarrage rapide</a>
<a href="crm.html">CRM</a>
<a href="email.html">Emails & Scraping</a>
<a href="propositions.html">Propositions</a>
<a href="devis.html">Devis</a>
<a href="projets.html">Projets</a>
<a href="taches.html">Tâches & Rappels</a>
<a href="api.html">API</a>
<a href="donnees.html" style="background:orange">Données & Sauvegarde</a>
<a href="build.html">Build Desktop</a>
<a href="depannage.html">Dépannage</a>
<a href="faq.html">FAQ</a></div>
</div>
</div>
<div class="container">
<h2>Arborescence des données</h2>
<pre>Data/
clients/ # JSON clients
prospects/ # JSON prospects
email_templates/ # modèles demails
email_history/ # historique des envois
scraping/ # résultats scraping
output/
devis/ # PDF devis
propositions/ # PDF propositions</pre>
<h2>Export / Sauvegarde</h2>
<ul>
<li>Sauvegardez <code>Data/</code> et <code>output/</code> régulièrement.</li>
<li>Pour migrer : copiez ces dossiers vers la nouvelle machine et réinstallez les dépendances.</li>
</ul>
</div>
<div class="container footer small">Dernière mise à jour : 24 August 2025 • Ce guide couvre lutilisation de la version actuelle de SuiteConsultance.</div>
</body>
</html>

59
documentation/email.html Normal file
View file

@ -0,0 +1,59 @@
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>SuiteConsultance — Documentation Utilisateur</title>
<link rel="stylesheet" href="assets/style.css" />
<link rel="stylesheet" href="assets/wiki.css" />
</head>
<body>
<div class="navbar">
<div class="inner">
<div class="brand">SuiteConsultance</div>
<span class="badge">v1.0</span>
<div class="search"><input type="search" placeholder="Rechercher dans la doc…" aria-label="Recherche" /></div>
<div class="navlinks"><a href="index.html">Accueil</a>
<a href="installation.html">Installation</a>
<a href="demarrage.html">Démarrage rapide</a>
<a href="crm.html">CRM</a>
<a href="email.html" style="background:orange">Emails & Scraping</a>
<a href="propositions.html">Propositions</a>
<a href="devis.html">Devis</a>
<a href="projets.html">Projets</a>
<a href="taches.html">Tâches & Rappels</a>
<a href="api.html">API</a>
<a href="donnees.html">Données & Sauvegarde</a>
<a href="build.html">Build Desktop</a>
<a href="depannage.html">Dépannage</a>
<a href="faq.html">FAQ</a></div>
</div>
</div>
<div class="container">
<h2>Configuration SMTP</h2>
<p>Allez dans <em>Email → Configuration</em> et renseignez :</p>
<ul>
<li>Serveur (host) et port</li>
<li>Adresse expéditrice et mot de passe (ou mot de passe application)</li>
<li>Option TLS/SSL</li>
</ul>
<div class="note">Un bouton de test permet de valider vos paramètres.</div>
<h2>Templates</h2>
<p>Créez/modifiez des modèles réutilisables (stockés dans <code>Data/email_templates</code>). Variables supportées : <code>{{name}}</code>, <code>{{company}}</code>, etc.</p>
<h2>Envoi</h2>
<ul>
<li><strong>Depuis une fiche</strong> prospect : envoi individuel + historique.</li>
<li><strong>Envoi groupé</strong> (bulk) : sélectionnez une liste filtrée de prospects et un template.</li>
</ul>
<h2>Scraping demails</h2>
<p>Dans <em>Email → Scraper</em>, indiquez une URL dentreprise. Le scraper parcourt les pages (pagination incluse) et récupère emails / numéros de téléphone.</p>
<div class="warn note">Respectez le RGPD et les règles antispam. Limitez la fréquence, privilégiez le <em>optin</em> et conservez une base de preuve si nécessaire.</div>
</div>
<div class="container footer small">Dernière mise à jour : 24 August 2025 • Ce guide couvre lutilisation de la version actuelle de SuiteConsultance.</div>
</body>
</html>

51
documentation/faq.html Normal file
View file

@ -0,0 +1,51 @@
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>SuiteConsultance — Documentation Utilisateur</title>
<link rel="stylesheet" href="assets/style.css" />
</head>
<body>
<div class="navbar">
<div class="inner">
<div class="brand">SuiteConsultance</div>
<span class="badge">v1.0</span>
<div class="navlinks"><a href="index.html">Accueil</a>
<a href="installation.html">Installation</a>
<a href="demarrage.html">Démarrage rapide</a>
<a href="crm.html">CRM</a>
<a href="email.html">Emails & Scraping</a>
<a href="propositions.html">Propositions</a>
<a href="devis.html">Devis</a>
<a href="projets.html">Projets</a>
<a href="taches.html">Tâches & Rappels</a>
<a href="api.html">API</a>
<a href="donnees.html">Données & Sauvegarde</a>
<a href="build.html">Build Desktop</a>
<a href="depannage.html">Dépannage</a>
<a href="faq.html" style="background:orange">FAQ</a></div>
</div>
</div>
<div class="container">
<h2>FAQ</h2>
<h3>Où sont les PDF générés ?</h3>
<p>Dans <code>output/propositions</code> et <code>output/devis</code>.</p>
<h3>Puis-je personnaliser les templates PDF ?</h3>
<p>Oui, ajustez les fichiers dans <code>Templates/propositions</code> et <code>Templates/devis</code>. Faites une copie avant modification.</p>
<h3>Comment filtrer rapidement mes prospects “chauds” ?</h3>
<p>Utilisez la recherche avec un filtre de <strong>score</strong> élevé ou un tag dédié.</p>
<h3>Le scraping est-il légal ?</h3>
<p>Il dépend du contexte et de la juridiction. Respectez le RGPD, vérifiez les mentions légales et privilégiez loptin.</p>
<h3>Comment sauvegarder / migrer ?</h3>
<p>Copiez simplement <code>Data/</code> et <code>output/</code> vers la nouvelle machine.</p>
</div>
<div class="container footer small">Dernière mise à jour : 24 August 2025 • Ce guide couvre lutilisation de la version actuelle de SuiteConsultance.</div>
</body>
</html>

79
documentation/index.html Normal file
View file

@ -0,0 +1,79 @@
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>SuiteConsultance — Documentation Utilisateur</title>
<link rel="stylesheet" href="assets/style.css" />
<link rel="stylesheet" href="assets/wiki.css" />
</head>
<body>
<div class="navbar">
<div class="inner">
<div class="brand">SuiteConsultance</div>
<span class="badge">v1.0</span>
<div class="search"><input type="search" placeholder="Rechercher dans la doc…" aria-label="Recherche" /></div>
<div class="navlinks"><a href="index.html" style="background:orange">Accueil</a>
<a href="installation.html">Installation</a>
<a href="demarrage.html">Démarrage rapide</a>
<a href="crm.html">CRM</a>
<a href="scoring.html">Scoring & Tracking</a>
<a href="email.html">Emails & Scraping</a>
<a href="propositions.html">Propositions</a>
<a href="devis.html">Devis</a>
<a href="projets.html">Projets</a>
<a href="taches.html">Tâches & Rappels</a>
<a href="api.html">API</a>
<a href="donnees.html">Données & Sauvegarde</a>
<a href="build.html">Build Desktop</a>
<a href="depannage.html">Dépannage</a>
<a href="faq.html">FAQ</a></div>
</div>
</div>
<section class="hero">
<div class="container">
<h1>Documentation utilisateur</h1>
<p>Un guide clair et complet pour bien démarrer, maîtriser les modules, et gagner du temps au quotidien.</p>
<div style="margin-top:10px">
<a class="cta" href="demarrage.html">Commencer en 5 minutes</a>
&nbsp;&nbsp;<a href="installation.html">Installer lapplication</a>
</div>
</div>
</section>
<div class="container">
<div class="grid" style="margin-top: 18px;">
<div class="card">
<h3>CRM</h3>
<p>Gérez vos <strong>prospects</strong> (pipeline, scoring Froid/Tiède/Chaud), convertissez en <strong>clients</strong>, archivez les interactions, planifiez la prochaine action.</p>
</div>
<div class="card">
<h3>Emails & modèles</h3>
<p>Configurez lenvoi SMTP, créez des <strong>templates</strong>, envoyez des campagnes <em>onetoone</em> ou en <strong>bulk</strong>, suivez lhistorique.</p>
</div>
<div class="card">
<h3>Scraping</h3>
<p>Récupérez automatiquement <strong>emails/téléphones</strong> depuis des sites dentreprises et générez des fiches prospects (RGPD : utilisez avec parcimonie).</p>
</div>
<div class="card">
<h3>Propositions & Devis</h3>
<p>Générez des <strong>PDF</strong> propres depuis des formulaires guidés. Les documents sont stockés dans <code>output/</code>.</p>
</div>
<div class="card">
<h3>Projets</h3>
<p>Reliez des projets à chaque client, suivez lavancement, les échéances et le contexte.</p>
</div>
<div class="card">
<h3>Tâches & Rappels</h3>
<p>Créez des <strong>todo</strong> liées à des prospects/clients et générez des <em>brouillons demails du jour</em> via un job quotidien.</p>
</div>
<div class="card">
<h3>Scoring & Tracking</h3>
<p>Comprenez et paramétrez le <strong>scoring Froid/Tiède/Chaud</strong>, suivez les <strong>événements</strong> (emails, web, appels) et pilotez vos priorités.</p>
</div>
</div>
</div>
<div class="container footer small">Dernière mise à jour : 24 August 2025 • Ce guide couvre lutilisation de la version actuelle de SuiteConsultance.</div>
</body>
</html>

View file

@ -0,0 +1,75 @@
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>SuiteConsultance — Documentation Utilisateur</title>
<link rel="stylesheet" href="assets/style.css" />
<link rel="stylesheet" href="assets/wiki.css" />
</head>
<body>
<div class="navbar">
<div class="inner">
<div class="brand">SuiteConsultance</div>
<span class="badge">v1.0</span>
<div class="search"><input type="search" placeholder="Rechercher dans la doc…" aria-label="Recherche" /></div>
<div class="navlinks"><a href="index.html">Accueil</a>
<a href="installation.html" style="background:orange">Installation</a>
<a href="demarrage.html">Démarrage rapide</a>
<a href="crm.html">CRM</a>
<a href="email.html">Emails & Scraping</a>
<a href="propositions.html">Propositions</a>
<a href="devis.html">Devis</a>
<a href="projets.html">Projets</a>
<a href="taches.html">Tâches & Rappels</a>
<a href="api.html">API</a>
<a href="donnees.html">Données & Sauvegarde</a>
<a href="build.html">Build Desktop</a>
<a href="depannage.html">Dépannage</a>
<a href="faq.html">FAQ</a></div>
</div>
</div>
<div class="container">
<h2>Prérequis</h2>
<ul class="checklist">
<li>Python 3.8+ (recommandé : 3.10/3.11)</li>
<li>macOS, Linux ou Windows</li>
<li>Accès internet (pour les dépendances pip)</li>
</ul>
<h2>Étapes dinstallation</h2>
<ol>
<li>Ouvrir un terminal dans le dossier du projet <span class="kbd">SuiteConsultance</span>.</li>
<li>Créer un environnement virtuel :<br/>
<pre>python -m venv .venv
source .venv/bin/activate # macOS/Linux
.venv\Scripts\activate # Windows</pre>
</li>
<li>Installer les dépendances :<br/>
<pre>pip install -r requirements.txt</pre>
<div class="note">Si une erreur <em>Pillow</em> ou <em>lxml</em> survient, consultez <a href="depannage.html">Dépannage</a>.</div>
</li>
<li>Initialiser larborescence des dossiers :<br/>
<pre>python install.py</pre>
</li>
</ol>
<h2>Lancer lapplication</h2>
<p>Deux modes sont possibles :</p>
<ul>
<li><strong>Mode application desktop</strong> (fenêtre WebView) :<br/>
<pre>python run.py --webview</pre>
</li>
<li><strong>Mode navigateur</strong> (serveur Flask) :<br/>
<pre>python run.py --browser
# puis ouvrir http://127.0.0.1:8080</pre>
</li>
</ul>
<div class="note">Par défaut, le serveur écoute sur le port <strong>8080</strong>. Si le port est occupé, libérezle ou modifiez la commande de lancement.</div>
</div>
<div class="container footer small">Dernière mise à jour : 24 August 2025 • Ce guide couvre lutilisation de la version actuelle de SuiteConsultance.</div>
</body>
</html>

View file

@ -0,0 +1,49 @@
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>SuiteConsultance — Documentation Utilisateur</title>
<link rel="stylesheet" href="assets/style.css" />
<link rel="stylesheet" href="assets/wiki.css" />
</head>
<body>
<div class="navbar">
<div class="inner">
<div class="brand">SuiteConsultance</div>
<span class="badge">v1.0</span>
<div class="search"><input type="search" placeholder="Rechercher dans la doc…" aria-label="Recherche" /></div>
<div class="navlinks"><a href="index.html">Accueil</a>
<a href="installation.html">Installation</a>
<a href="demarrage.html">Démarrage rapide</a>
<a href="crm.html">CRM</a>
<a href="email.html">Emails & Scraping</a>
<a href="propositions.html">Propositions</a>
<a href="devis.html">Devis</a>
<a href="projets.html" style="background:orange">Projets</a>
<a href="taches.html">Tâches & Rappels</a>
<a href="api.html">API</a>
<a href="donnees.html">Données & Sauvegarde</a>
<a href="build.html">Build Desktop</a>
<a href="depannage.html">Dépannage</a>
<a href="faq.html">FAQ</a></div>
</div>
</div>
<div class="container">
<h2>Projets liés aux clients</h2>
<p>Depuis une fiche client, ouvrez longlet <strong>Projets</strong>. Vous pouvez créer, éditer, clôturer ou supprimer des projets.</p>
<table class="table">
<tr><th>Champ</th><th>Description</th></tr>
<tr><td>Nom du projet</td><td>Identifiant clair (ex. “Refonte site vitrine”)</td></tr>
<tr><td>Type</td><td>Catégorie (web, logiciel, audit…)</td></tr>
<tr><td>Échéance</td><td>Date cible</td></tr>
<tr><td>Description</td><td>Contexte, objectifs, contraintes</td></tr>
<tr><td>Budget</td><td>Budget estimé/contrat</td></tr>
<tr><td>Modalités</td><td>Paiement, livrables, propriété</td></tr>
</table>
</div>
<div class="container footer small">Dernière mise à jour : 24 August 2025 • Ce guide couvre lutilisation de la version actuelle de SuiteConsultance.</div>
</body>
</html>

View file

@ -0,0 +1,48 @@
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>SuiteConsultance — Documentation Utilisateur</title>
<link rel="stylesheet" href="assets/style.css" />
<link rel="stylesheet" href="assets/wiki.css" />
</head>
<body>
<div class="navbar">
<div class="inner">
<div class="brand">SuiteConsultance</div>
<span class="badge">v1.0</span>
<div class="search"><input type="search" placeholder="Rechercher dans la doc…" aria-label="Recherche" /></div>
<div class="navlinks"><a href="index.html">Accueil</a>
<a href="installation.html">Installation</a>
<a href="demarrage.html">Démarrage rapide</a>
<a href="crm.html">CRM</a>
<a href="email.html">Emails & Scraping</a>
<a href="propositions.html" style="background:orange">Propositions</a>
<a href="devis.html">Devis</a>
<a href="projets.html">Projets</a>
<a href="taches.html">Tâches & Rappels</a>
<a href="api.html">API</a>
<a href="donnees.html">Données & Sauvegarde</a>
<a href="build.html">Build Desktop</a>
<a href="depannage.html">Dépannage</a>
<a href="faq.html">FAQ</a></div>
</div>
</div>
<div class="container">
<h2>Propositions commerciales</h2>
<p>Créez une proposition via <em>Propositions → Nouvelle proposition</em>. Renseignez les champs métiers (titre, contexte, livrables, prix, conditions). Le PDF est généré dans <code>output/propositions/</code>.</p>
<p>Les champs par défaut sont définis dans <code>modules/proposition/fields.py</code> et le rendu HTML dans <code>Templates/propositions/</code>.</p>
<h3>Bonnes pratiques</h3>
<ul>
<li>Préremplissez les <strong>features</strong> du client (ex. “landing page + CRM léger”).</li>
<li>Incluez des <strong>options</strong> modulaires (Option A/B/C) et des délais réalistes.</li>
<li>Gardez un historique des versions dans le nom de fichier (ex. <code>ClientX_proposition_v2.pdf</code>).</li>
</ul>
</div>
<div class="container footer small">Dernière mise à jour : 24 August 2025 • Ce guide couvre lutilisation de la version actuelle de SuiteConsultance.</div>
</body>
</html>

155
documentation/scoring.html Normal file
View file

@ -0,0 +1,155 @@
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>SuiteConsultance — Scoring & Tracking</title>
<link rel="stylesheet" href="assets/style.css" />
<link rel="stylesheet" href="assets/wiki.css" />
</head>
<body>
<div class="navbar">
<div class="inner">
<div class="brand">SuiteConsultance</div>
<span class="badge">v1.0</span>
<div class="search"><input type="search" placeholder="Rechercher dans la doc…" aria-label="Recherche" /></div>
<div class="navlinks"><a href="index.html">Accueil</a>
<a href="installation.html">Installation</a>
<a href="demarrage.html">Démarrage rapide</a>
<a href="crm.html">CRM</a>
<a href="scoring.html" style="background:orange">Scoring & Tracking</a>
<a href="email.html">Emails & Scraping</a>
<a href="propositions.html">Propositions</a>
<a href="devis.html">Devis</a>
<a href="projets.html">Projets</a>
<a href="taches.html">Tâches & Rappels</a>
<a href="api.html">API</a>
<a href="donnees.html">Données & Sauvegarde</a>
<a href="build.html">Build Desktop</a>
<a href="depannage.html">Dépannage</a>
<a href="faq.html">FAQ</a></div>
</div>
</div>
<section class="hero">
<div class="container">
<h1>Scoring & Tracking</h1>
<p>Mesurez lintérêt réel de vos prospects, suivez leurs interactions (emails, web, appels) et priorisez vos actions commerciales grâce à un scoring simple et actionnable.</p>
</div>
</section>
<div class="container">
<h2 id="overview">1. Vue densemble</h2>
<p>Le scoring consolide toutes les interactions dun contact en un score unique et lisible: Froid, Tiède ou Chaud. Il sappuie sur des <em>événements</em> suivis automatiquement (ouverture/clic demail, visites web) et des <em>activités</em> saisies par léquipe (appels, réunions, tâches). Le score évolue dans le temps avec une <strong>décroissance</strong> pour refléter la fraîcheur de lintérêt.</p>
<h2 id="scale">2. Échelle et statuts</h2>
<ul>
<li>Échelle de 0 à 100 (arrondie à lentier).</li>
<li>Seuils par défaut:
<ul>
<li>Froid: 029</li>
<li>Tiède: 3069</li>
<li>Chaud: 70100</li>
</ul>
</li>
</ul>
<p>Les seuils sont des recommandations; adaptez-les à votre cycle de vente et à votre volume dinteractions.</p>
<h2 id="events">3. Événements suivis et pondérations</h2>
<p>Chaque événement ajoute ou retire des points. Voici une grille de référence équilibrée, pensée pour refléter lintention réelle:</p>
<div class="table-wrap">
<table>
<thead>
<tr>
<th>Événement</th>
<th>Condition</th>
<th>Score</th>
<th>Notes</th>
</tr>
</thead>
<tbody>
<tr><td>Ouverture demail</td><td>Unique par campagne</td><td>+3</td><td>Ignorer les doublons</td></tr>
<tr><td>Clic dans un email</td><td>Par lien unique</td><td>+8</td><td>Max +16 par email</td></tr>
<tr><td>Réponse à un email</td><td>Fil de discussion</td><td>+25</td><td>Fort signal dintention</td></tr>
<tr><td>Bounce (NPAI)</td><td>Hard bounce</td><td>-20</td><td>Nettoyer la base</td></tr>
<tr><td>Désabonnement</td><td>Opt-out</td><td>-50</td><td>Stopper les relances</td></tr>
<tr><td>Visite site</td><td>Session identifiée</td><td>+5</td><td>Basé sur cookie/ID</td></tr>
<tr><td>Visites multiples</td><td>2+ pages vues</td><td>+10</td><td>Intérêt confirmé</td></tr>
<tr><td>Téléchargement</td><td>PDF/ressource</td><td>+12</td><td>Contenu avancé</td></tr>
<tr><td>Demande de démo</td><td>Formulaire</td><td>+30</td><td>Lead chaud</td></tr>
<tr><td>Appel passé</td><td>Log manuel</td><td>+5</td><td>Contact établi</td></tr>
<tr><td>Appel qualifié</td><td>Ok décisionnaire</td><td>+12</td><td>Qualification</td></tr>
<tr><td>Réunion tenue</td><td>RDV confirmé</td><td>+20</td><td>Étape clé</td></tr>
<tr><td>Tâche complétée</td><td>Follow-up</td><td>+2</td><td>Rappels utiles</td></tr>
<tr><td>Inactivité</td><td>Voir décroissance</td><td>-</td><td>Automatique</td></tr>
</tbody>
</table>
</div>
<h2 id="decay">4. Décroissance dans le temps</h2>
<p>Pour éviter que danciens signaux gonflent artificiellement le score, une décote sapplique automatiquement:</p>
<ul>
<li>-0,5 point par jour sans nouvelle interaction (jusquà un minimum de 0).</li>
<li>Réinitialisation de la décote à chaque nouvel événement significatif (clic, réponse, visite).</li>
</ul>
<p>Exemple: un prospect à 72 retombe à 61 après ~22 jours sans activité, repasse “Tiède” et sort des priorités quotidiennes.</p>
<h2 id="prioritization">5. Priorisation et règles dusage</h2>
<ul>
<li>Le tableau “Aujourdhui” met en avant les “Chauds” récents (score ≥ 70, activité ≤ 7 jours).</li>
<li>Un passage “Chaud” déclenche une suggestion de conversion en opportunité/affaire.</li>
<li>Le statut redevient “Tiède” si le score repasse sous 70 ou en cas dinactivité prolongée.</li>
</ul>
<h2 id="sources">6. Sources de tracking</h2>
<ul>
<li>Emails: ouvertures, clics, réponses, désinscriptions, bounces.</li>
<li>Web: pages vues, événements (téléchargements, formulaires), sessions.</li>
<li>Activités CRM: appels, réunions, tâches, notes.</li>
<li>Import/Tags: qualification manuelle (ex. “Hot lead”).</li>
</ul>
<h2 id="setup">7. Configuration rapide</h2>
<h3>7.1. Tracking emails</h3>
<ol>
<li>Configurer lenvoi SMTP et activer le suivi douvertures/clics.</li>
<li>Vérifier le domaine denvoi (SPF/DKIM/DMARC) pour une délivrabilité optimale.</li>
<li>Respecter lopt-in et fournir un lien de désabonnement fonctionnel.</li>
</ol>
<h3>7.2. Tracking web</h3>
<p>Ajoutez le script de suivi sur votre site (dans le head):</p>
<pre><code>&lt;script src="https://votre-domaine.example/tracker.js" data-site="VOTRE_SITE_ID" defer&gt;&lt;/script&gt;</code></pre>
<p>Associez un visiteur à un contact connu après un clic demail ou une soumission de formulaire.</p>
<h3>7.3. Pondérations et seuils</h3>
<ul>
<li>Ajustez les points par événement selon votre cycle de vente.</li>
<li>Modifiez les seuils Froid/Tiède/Chaud si nécessaire (ex. marché longues décisions).</li>
</ul>
<h2 id="reports">8. Rapports & KPI</h2>
<ul>
<li>Distribution des scores (Froid/Tiède/Chaud).</li>
<li>Taux de chauffe (leads devenus “Chaud” par période).</li>
<li>Temps moyen pour passer de Froid à Chaud.</li>
<li>Top événements contribuant aux conversions.</li>
</ul>
<h2 id="rgpd">9. RGPD & Conformité</h2>
<ul>
<li>Collecter uniquement les données nécessaires (minimisation).</li>
<li>Informer des finalités de traitement (transparence) et permettre lopposition.</li>
<li>Honorer immédiatement le droit dopposition: désabonnement = arrêt des campagnes.</li>
<li>Documenter la base légale (consentement/intérêt légitime) et la durée de conservation.</li>
</ul>
<h2 id="examples">10. Exemples pratiques</h2>
<p>Exemple A: Ouverture (+3) + 2 clics (+16) + visite (+5) = 24 → reste “Froid”, planifier un appel de découverte.</p>
<p>Exemple B: Clic (+8) + réponse email (+25) + réunion (+20) = 53 → “Tiède”, passer en opportunité si qualification ok.</p>
<p>Exemple C: Demande de démo (+30) + appels (+5) + téléchargement (+12) = 47 → avec visites répétées (+10) passe “Tiède/haut”.</p>
</div>
<div class="container footer small">Dernière mise à jour : 24 August 2025 • Cette page décrit le fonctionnement du scoring & tracking.</div>
</body>
</html>

48
documentation/taches.html Normal file
View file

@ -0,0 +1,48 @@
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>SuiteConsultance — Documentation Utilisateur</title>
<link rel="stylesheet" href="assets/style.css" />
<link rel="stylesheet" href="assets/wiki.css" />
</head>
<body>
<div class="navbar">
<div class="inner">
<div class="brand">SuiteConsultance</div>
<span class="badge">v1.0</span>
<div class="search"><input type="search" placeholder="Rechercher dans la doc…" aria-label="Recherche" /></div>
<div class="navlinks"><a href="index.html">Accueil</a>
<a href="installation.html">Installation</a>
<a href="demarrage.html">Démarrage rapide</a>
<a href="crm.html">CRM</a>
<a href="email.html">Emails & Scraping</a>
<a href="propositions.html">Propositions</a>
<a href="devis.html">Devis</a>
<a href="projets.html">Projets</a>
<a href="taches.html" style="background:orange">Tâches & Rappels</a>
<a href="api.html">API</a>
<a href="donnees.html">Données & Sauvegarde</a>
<a href="build.html">Build Desktop</a>
<a href="depannage.html">Dépannage</a>
<a href="faq.html">FAQ</a></div>
</div>
</div>
<div class="container">
<h2>Tâches & Rappels</h2>
<p>La vue <em>Tâches</em> permet de centraliser vos actions : relances, appels, RDV… Chaque tâche peut être liée à un <strong>prospect</strong> ou un <strong>client</strong>.</p>
<h3>Brouillons demails du jour</h3>
<p>Le job <code>jobs/daily_reminder_job.py</code> crée des <strong>brouillons</strong> pour les tâches du jour, fondés sur un <em>template</em> choisi.</p>
<pre>0 8 * * * /usr/bin/python3 /chemin/vers/le/projet/jobs/daily_reminder_job.py >> /var/log/reminder_job.log 2>&1</pre>
<div class="note">Les brouillons sont listés dans <em>Tâches → Brouillons</em>. Relisez et envoyezles manuellement.</div>
<h3>Macros</h3>
<p>Créez des macros pour générer rapidement des tâches récurrentes (ex. “J+2 : relancer”, “J+7 : second rappel”).</p>
</div>
<div class="container footer small">Dernière mise à jour : 24 August 2025 • Ce guide couvre lutilisation de la version actuelle de SuiteConsultance.</div>
</body>
</html>