Loading...

Documentation Technique.
OracleSentinel.

Architecture, modèle de données, API, workflows, agent IA et déploiement. Le guide complet pour maîtriser votre infrastructure.

Introduction

OracleSentinel est un système d'automatisation d'acquisition complet composé de deux briques fondamentales :

Oracle — Le CRM

CRM souverain, auto-hébergeable, modulaire et extensible. Modèle de données flexible avec objets custom illimités, automations natives via workflows, pipeline intelligent avec scoring IA. Conçu pour remplacer les CRM SaaS coûteux tout en offrant plus de flexibilité.

Sentinel — L'Agent IA

Widget conversationnel intelligent déployé sur votre site web. Qualifie les visiteurs 24h/24 via une conversation contextuelle, crée les leads enrichis directement dans Oracle, et score automatiquement chaque opportunité. Multi-modèle IA (OpenAI, Anthropic, Mistral, Gemini).

Ensemble, Oracle et Sentinel forment une infrastructure complète d'acquisition : de la première interaction visiteur jusqu'à la conversion en client qualifié, sans intervention humaine.

🎯 Pour qui ?

  • • PME / ETI qui veulent un CRM puissant sans licence par siège
  • • Startups B2B SaaS qui veulent une infrastructure CRM API-first
  • • Équipes Revenue qui veulent automatiser la qualification
  • • Organisations réglementées qui exigent la souveraineté des données

Architecture Technique

L'architecture OracleSentinel repose sur 4 composants principaux, tous containerisés et orchestrés via Docker Compose :

Backend Server (Port 3000)

Serveur principal : REST/GraphQL API, UI Frontend React, authentification session + API Key, contrôle d'accès RBAC, gestion des objets et métadonnées.

Worker

Jobs asynchrones : synchronisation email (Gmail, Outlook, SMTP), sync calendrier (Google Calendar, CalDAV), exécution des workflows, calcul des tâches planifiées.

PostgreSQL 16

Source de vérité unique. Stocke toutes les données CRM, métadonnées des objets custom, configurations, historique d'activité. Supporte les relations complexes et full-text search.

Redis

Cache haute-performance et file d'attente BullMQ. Gère les sessions, le cache des requêtes fréquentes, et les jobs background avec retry automatique et dead-letter queues.

docker-compose.yml (simplifié)
services:
  server:
    image: oraclesentinel/crm:latest
    ports: ["3000:3000"]
    depends_on: [db, redis]
    environment:
      - DATABASE_URL=postgres://user:pass@db:5432/oracle
      - REDIS_URL=redis://redis:6379

  worker:
    image: oraclesentinel/crm:latest
    command: ["yarn", "worker:prod"]
    depends_on: [db, redis]

  db:
    image: postgres:16
    volumes: [db-data:/var/lib/postgresql/data]

  redis:
    image: redis:7-alpine

Modèle de Données

Le modèle de données Oracle est entièrement flexible et extensible :

Objets Standard

Oracle inclut des objets pré-configurés couvrant les cas d'usage CRM classiques :

People (Contacts)
Companies
Opportunities (Deals)
Tasks
Notes
Emails
Calendar Events
Attachments

Objets Custom

Créez vos propres objets métier avec des champs illimités. Types supportés :

Text
Number
Boolean
Date/DateTime
Select/Multi-Select
Currency
Email
Phone
URL
Relation
Rating
Rich Text

Relations

Système de relations complet : One-to-One, One-to-Many, Many-to-Many, et les nouvelles relations Morph-Many (v1.11) pour les associations polymorphiques. Chaque relation est bidirectionnelle et navigable depuis les deux côtés.

Exemple : Création d'un objet custom via API
POST /api/metadata/objects
Content-Type: application/json
Authorization: Bearer <API_KEY>

{
  "nameSingular": "Product",
  "namePlural": "Products",
  "labelSingular": "Product",
  "labelPlural": "Products",
  "icon": "IconBox",
  "fields": [
    { "name": "name", "type": "TEXT", "label": "Nom" },
    { "name": "price", "type": "CURRENCY", "label": "Prix" },
    { "name": "category", "type": "SELECT", "label": "Catégorie",
      "options": ["SaaS", "Service", "Hardware"] },
    { "name": "company", "type": "RELATION", "label": "Entreprise",
      "relationType": "MANY_TO_ONE", "relatedObject": "company" }
  ]
}

Fonctionnement

Le flux d'acquisition OracleSentinel est un pipeline industriel en 5 étapes :

01

Capture

Le widget Sentinel intercepte le visiteur et engage la conversation contextuelle. Le chatbot utilise le contexte de la page, l'historique de navigation, et les données métier pour personnaliser l'échange.

02

Qualification

L'IA analyse l'intention, le profil et le potentiel business en temps réel. Un score de qualification est calculé dynamiquement basé sur les réponses, le comportement, et les critères métier définis.

03

Routage

Le lead qualifié est automatiquement créé dans Oracle avec toutes ses données enrichies : informations de contact, historique de conversation, score de qualification, tags, et source d'acquisition.

04

Nurturing

Les workflows automatisés prennent le relais : séquences email personnalisées, relances intelligentes basées sur le comportement, assignation au bon commercial selon les critères de routage.

05

Conversion

Le commercial reçoit un lead chaud, pré-qualifié, avec l'historique complet de toutes les interactions, le score de priorité, et les notes de qualification IA.

Composants

OracleSentinel se compose de modules indépendants et combinables :

Gestion Contacts & Companies

Registre centralisé avec champs custom illimités, déduplication automatique, historique d'activité complet, timeline des interactions, import/export CSV/XLSX.

Pipeline & Deals

Suivi commercial avec vues Kanban drag & drop, étapes personnalisables, calcul automatique des montants, probabilités de closing, et vues filtrées.

Workflows Engine

Moteur d'automatisation complet : triggers (event/scheduled/manual), conditions, itérateurs, actions CRUD, email, HTTP, code custom, agents IA.

Agent IA Sentinel

Widget conversationnel embeddable avec accès aux données CRM, qualification IA multi-modèle, scoring automatique, et création de leads enrichis.

Email Sync

Synchronisation bidirectionnelle Gmail/Outlook/SMTP. Lecture, envoi, et association automatique des emails aux contacts. Sync par dossier granulaire (v1.12).

Calendrier

Sync Google Calendar/Microsoft Calendar/CalDAV. Création automatique de contacts à partir des événements. Vue calendrier native pour les objets (v1.10).

Dashboards

Tableaux de bord en temps réel : bar charts, pie charts, line charts, compteurs, agrégats, iFrame, rich text. Widgets drag & drop personnalisables.

Recherche Globale

Recherche full-text instantanée sur tous les objets et champs. Filtres composites, vues sauvegardées, tri multi-critères, et vues non-listées (v1.11).

Workflows & Automations

Le moteur de workflows Oracle permet de créer des automatisations complexes sans code :

Types de Triggers

Database Event

Créé, modifié, supprimé, upsert (v1.7)

Scheduled

Cron expression, récurrence configurable

Manual

Déclenchement via UI ou API

Types d'Actions

CRUD Operations
Envoyer Email
Requête HTTP
Code Custom (JS)
Agent IA
Formulaire
Itérateur (v1.8)
Sélection en masse (v1.8)
Condition / Branch
Exemple : Workflow de qualification automatique
Trigger: Record Created (type: "Lead")
  ↓
Condition: lead.source === "sentinel_widget"
  ├─ TRUE:
  │   ↓ Action: Agent IA → Analyse qualification
  │   ↓ Action: Update Record → score = IA_result.score
  │   ↓ Condition: score >= 70
  │     ├─ TRUE: Action: Send Email → "Nouveau lead qualifié"
  │     │         Action: Assign → commercial_zone[lead.region]
  │     └─ FALSE: Action: Add to nurturing sequence
  └─ FALSE:
      ↓ Action: Enrich → lookup company data
      ↓ Action: Update Record → enriched = true

Agent IA Sentinel

Sentinel est un widget conversationnel intelligent qui s'intègre sur n'importe quel site web :

Modèles IA Supportés

OpenAIGPT-4o, GPT-4o-mini, o1
AnthropicClaude 3.5 Sonnet, Claude 3 Haiku
Mistral AIMistral Large, Mistral Medium
GoogleGemini Pro, Gemini Flash

Capacités

  • • Conversation contextuelle multi-tour
  • • Formulaire de qualification intégré
  • • Création de lead CRM automatique
  • • Scoring IA en temps réel
  • • Personnalisation du prompt système
  • • Historique persistant par visiteur
  • • Mode desktop et mobile responsive
Intégration Widget (iframe)
<!-- Ajouter avant </body> -->
<script>
  (function() {
    var iframe = document.createElement('iframe');
    iframe.src = 'https://your-sentinel.com/widget?token=YOUR_TOKEN';
    iframe.style.cssText = 'position:fixed;bottom:20px;right:20px;' +
      'width:400px;height:600px;border:none;z-index:9999;border-radius:16px;' +
      'box-shadow:0 8px 32px rgba(0,0,0,0.12);';
    document.body.appendChild(iframe);
  })();
</script>

API Reference

Oracle expose une API complète via deux protocoles :

REST API

CRUD complet sur toutes les entités. Batch operations (jusqu'à 60 records par requête). Endpoints standardisés :

GET /api/objects/:name

POST /api/objects/:name

PATCH /api/objects/:name/:id

DELETE /api/objects/:name/:id

POST /api/objects/:name/batch

GraphQL API

Accès flexible avec queries et mutations. Playground intégré dans l'interface admin. Supporte :

  • • Queries avec filtres composites
  • • Mutations create / update / delete
  • • Subscriptions temps réel (WebSocket)
  • • Introspection du schéma
  • • Relations nested en une seule requête

Authentification API

Deux méthodes supportées :

Bearer Token — API Key générée depuis Settings → API Keys. Révocable à tout moment.

Session Cookie — Authentification via login endpoint pour les applications frontend.

Exemple : Query GraphQL
query GetCompaniesWithDeals {
  companies(
    filter: { annualRecurringRevenue: { gte: 100000 } }
    orderBy: { createdAt: DESC }
    limit: 10
  ) {
    edges {
      node {
        name
        domainName
        annualRecurringRevenue
        opportunities { name, amount, stage, probability }
        people { firstName, lastName, email, jobTitle }
      }
    }
  }
}

Flux de Données

Le flux de données traverse les composants de manière structurée et traçable :

// Pipeline d'acquisition OracleSentinel

1. Visiteur → Widget Sentinel (capture contextuelle)

2. Sentinel → IA Engine (qualification + scoring)

3. IA Engine → Oracle CRM (création lead enrichi)

4. Oracle CRM → Workflows (nurturing automatisé)

5. Workflows → Sales Team (notification + contexte)

6. Sales Team → Oracle CRM (mise à jour deal)

7. Oracle CRM → Dashboards (analytics temps réel)

Batch Operations

Jusqu'à 60 enregistrements par requête (create, update, delete, upsert). Authentification via API Key Bearer Token, gérable depuis les Settings. Les batch operations supportent le mode transactionnel (all-or-nothing) ou partiel (best-effort).

Intégrations

OracleSentinel s'intègre nativement avec votre écosystème existant :

Email

  • Gmail (OAuth2)
  • Outlook / Microsoft 365
  • SMTP / IMAP compatible
  • Sync par dossier (v1.12)

Calendrier

  • Google Calendar
  • Microsoft Calendar
  • CalDAV
  • Création contacts auto

Authentification SSO

  • SAML 2.0
  • OIDC (OpenID Connect)
  • Google Workspace
  • Microsoft Entra ID

Stockage & Infra

  • S3 compatible (AWS, Minio)
  • Volume persistant local
  • Docker / Docker Compose
  • Traefik reverse proxy

Webhooks & API Ouverte

L'API REST + GraphQL offre un accès complet et non restrictif à toutes les données. Un playground API intégré permet de tester vos requêtes en temps réel. Les webhooks sortants permettent de notifier des systèmes externes à chaque événement CRM.

Déploiement

OracleSentinel se déploie en moins de 30 minutes via Docker :

Déploiement rapide
# 1. Cloner le repository
$ git clone https://github.com/oraclesentinel/crm.git
$ cd crm

# 2. Configurer l'environnement
$ cp .env.example .env
$ nano .env  # éditer les variables

# 3. Démarrer les services
$ docker compose up -d

# 4. Vérifier le statut
$ docker compose ps
# → server    ✓  :3000
# → worker    ✓
# → db        ✓  :5432
# → redis     ✓  :6379

< 30 min

Déploiement Docker

< 1 sem

Configuration métier

< 2 sem

Premier pipeline live

Prérequis Serveur

Minimum : 2 vCPU, 4 GB RAM, 20 GB SSD
Recommandé : 4 vCPU, 8 GB RAM, 50 GB SSD
OS : Ubuntu 22.04+, Debian 12+
Docker : 24.0+ avec Compose v2

Configuration

Les variables d'environnement essentielles :

.env (variables principales)
# ─── Database ───
DATABASE_URL=postgres://user:password@localhost:5432/oracle_crm

# ─── Redis ───
REDIS_URL=redis://localhost:6379

# ─── Auth ───
APP_SECRET=your-random-32-char-secret
ACCESS_TOKEN_EXPIRES_IN=30m
REFRESH_TOKEN_EXPIRES_IN=90d

# ─── Email Sync ───
EMAIL_DRIVER=gmail        # gmail | outlook | smtp
GMAIL_CLIENT_ID=xxx
GMAIL_CLIENT_SECRET=xxx

# ─── Calendar Sync ───
CALENDAR_PROVIDER=google  # google | microsoft | caldav

# ─── SSO (optionnel) ───
AUTH_SSO_ENABLED=true
AUTH_SSO_TYPE=oidc         # saml | oidc
OIDC_ISSUER_URL=https://accounts.google.com

# ─── Storage ───
STORAGE_TYPE=local         # local | s3
STORAGE_LOCAL_PATH=./uploads

# ─── Multi-tenant ───  
IS_MULTI_WORKSPACE_ENABLED=true
DEFAULT_SUBDOMAIN=app

Sécurité & RBAC

La sécurité est au cœur de l'architecture OracleSentinel :

TLS/HTTPS obligatoire en production

Chiffrement de bout en bout via Traefik avec certificats Let's Encrypt auto-renouvelés.

Authentification session + API Key

Sessions sécurisées avec refresh tokens. API Keys avec scopes et date d'expiration.

RBAC granulaire

Contrôle d'accès basé sur les rôles : Admin, Member, Guest. Permissions par objet et par champ.

SSO Enterprise

SAML 2.0, OIDC, Google Workspace, Microsoft Entra ID. Provisioning automatique des utilisateurs.

Isolation par workspace

Chaque workspace est un tenant isolé avec sa propre base de données logique.

App Secret unique

Chaque instance a un secret unique pour le chiffrement des tokens et des données sensibles.

User Impersonation (v1.7)

Les admins peuvent impersonner un utilisateur pour le support, avec audit trail complet.

Import/Export sécurisé

CSV, XLSX, XLS avec validation des données et rate limiting.

Cas d'Usage

PME / ETI en croissance

CRM personnalisable sans les coûts Salesforce. Pipeline intelligent, automations incluses, scoring IA pour prioriser les efforts commerciaux.

→ Réduction de 60% du temps admin, +40% de leads qualifiés.

Startups B2B SaaS

Infrastructure CRM flexible, API-first, auto-hébergeable. Intégration rapide dans le stack existant via REST/GraphQL.

→ Déploiement en 1 jour, intégration complète en 1 semaine.

Équipes Sales / Revenue

Gestion pipeline visuelle, qualification automatique IA, sync email native, scoring prédictif.

→ +30% de conversion, pipeline toujours à jour.

Organisations réglementées

Souveraineté des données (on-premise), conformité RGPD, audit trail, isolation workspace.

→ 100% des données sous contrôle, conformité garantie.

Roadmap

Les prochaines évolutions majeures d'OracleSentinel :

Q1 2025

Scoring prédictif multi-modèle

Templates de workflows marketplace

Plugin système extensible

Q2 2025

Mobile app native (iOS / Android)

Reporting avancé avec export PDF

Intégration Slack / Teams

Q3 2025

Self-service onboarding wizard

Marketplace de connecteurs

Multi-langue (i18n) complet

Q4 2025

Agent IA autonome (actions CRM)

Prediction pipeline ML

White-label complet

FAQ

Puis-je héberger OracleSentinel sur mes propres serveurs ?

Oui. OracleSentinel est conçu pour être auto-hébergé via Docker. Vous gardez 100% de la propriété de vos données. Compatible VPS, cloud privé, et bare-metal.

Quel est le coût par utilisateur ?

En mode self-hosted : 0€ par utilisateur. Vous ne payez que l'infrastructure serveur (à partir de ~15€/mois pour une VPS). Pas de licence par siège, pas de tier premium.

L'IA est-elle incluse ?

Oui, intégrée nativement. Le chatbot Sentinel, les agents IA workflows, et le scoring prédictif sont inclus. Vous fournissez vos propres clés API pour les modèles IA (OpenAI, Anthropic, etc.).

Puis-je migrer depuis Salesforce / HubSpot ?

Oui. Import CSV/XLSX natif pour les contacts, companies et deals. API complète pour les migrations programmatiques. Mapping des champs custom disponible.

Multi-workspace est supporté ?

Oui. Chaque workspace est isolé avec ses propres données, utilisateurs et configurations. Idéal pour les agences ou les organisations multi-entités. Sous-domaines automatiques.

Combien de temps pour être opérationnel ?

Déploiement Docker en < 30 minutes. Configuration métier (objets, champs, workflows) en < 1 semaine. Premier pipeline commercial opérationnel en < 2 semaines.

Y a-t-il un support ?

Documentation complète, communauté GitHub, et support premium disponible pour les déploiements enterprise. Audit IA gratuit disponible pour évaluer vos besoins.

Prêt à déployer ?

Découvrez comment OracleSentinel peut transformer votre acquisition avec un audit personnalisé.

Audit IA Gratuit