From 5a478cbf4e55e091185113e028ec3f07e74293a0 Mon Sep 17 00:00:00 2001 From: admin-valentin Date: Sun, 2 Aug 2026 17:16:27 +0000 Subject: [PATCH] feat(CC-082): add CRM & Communication integration (WhatsApp/n8n/webhook channels) --- src/app/dashboard/integrations/crm/page.tsx | 64 +++++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 src/app/dashboard/integrations/crm/page.tsx diff --git a/src/app/dashboard/integrations/crm/page.tsx b/src/app/dashboard/integrations/crm/page.tsx new file mode 100644 index 0000000..1077a79 --- /dev/null +++ b/src/app/dashboard/integrations/crm/page.tsx @@ -0,0 +1,64 @@ +'use client'; + +import { useState } from 'react'; +import Link from 'next/link'; + +const CHANNELS = [ + { id: 'whatsapp', name: 'WhatsApp', icon: '📱', desc: 'Import conversații selectiv prin API WhatsApp Business. Necesită număr Business.' }, + { id: 'n8n', name: 'n8n Workflows', icon: '⚙️', desc: 'Automatizări CRM prin n8n: lead routing, follow-up automat, notificări.' }, + { id: 'typeform', name: 'Formulare (Typeform / Tally)', icon: '📋', desc: 'Importă leaduri din formulare direct în CEO OS Contacts.' }, + { id: 'zapier', name: 'Zapier / Make', icon: '🔄', desc: 'Conectori generici prin Zapier sau Make.com la orice CRM extern.' }, + { id: 'webhook', name: 'Webhook CRM', icon: '🔗', desc: 'Orice CRM extern poate trimite date prin webhook semnat.' }, + { id: 'linkedin', name: 'LinkedIn (manual)', icon: '💼', desc: 'Export manual CSV din LinkedIn importat în Contacts. API LinkedIn nu este suportat (ToS).' }, +]; + +export default function CRMIntegrationPage() { + const [active, setActive] = useState(null); + + return ( +
+
+

CRM & Comunicare

+

Canale de comunicare și CRM extern conectate la CEO OS Contacts.

+
+ +
+

Principii CRM CEO OS

+
+

• Contactele aparțin utilizatorului, nu platformei. Export complet disponibil oricând.

+

• Comunicările sunt importate selectiv — nu există full-sync autonom fără confirmare.

+

• Redactarea AI a mesajelor necesită aprobare înainte de trimitere.

+

• Fiecare canal are consimțământ GDPR separat pentru datele importate.

+
+
+ +
+ {CHANNELS.map((ch) => ( + + ))} +
+ + ← Toate integrările +
+ ); +}