Beiträge von karsten

    hchristo genau bei dem Thema bin ich auch unterwegs – ich hab mit aikQ.chat ein Omnichannel-Business-Messaging gebaut (WhatsApp, SMS, weitere Kanäle in einem Postfach, DSGVO-konform). SMS ist für mich dabei nur noch *ein* Kanal von vielen, nicht mehr das ganze Ding.

    Reines SMS-Gateway würde ich heute wahrscheinlich nicht mehr als Kern bauen – für OTP, Alerting und garantierte Erreichbarkeit ist SMS aber nach wie vor unschlagbar. Für echten Dialog mit Kunden gehen die Leute halt eher über WhatsApp & Co. Deshalb der Omnichannel-Ansatz.

    Falls dich das Thema interessiert, tausch ich mich da gern mal aus – du kennst die Gateway-Seite ja aus der Praxis.

    Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.

    Diron freut mich, dass du wieder reinschaust! Damit du's richtig einordnest, ganz ehrlich: Mein Ziel ist es als Produktivessystem Grommunio zu nutzen. Ich habe mir ein Integrations-Tool / Import-Tool gebaut, das alle b1gmail Daten vom Superadmin bis zu den User Daten in mein neues System importiert – b1gmail ist bei mir also nicht mehr das Hauptsystem.

    Warum ich es trotzdem weitermache: Ich fühle mich mit b1gmail verbunden und glaube an eine sinnvolle Weiterentwicklung, auch wenn die in eine etwas andere Richtung geht als früher.

    Konkret plane ich einen Fork: Das Grundsystem bleibt offen und für alle nutzbar. Nicht jedes Plugin werde ich kostenlos herausgeben können – die kommerziellen Plugins sind das, was die Weiterentwicklung finanziert und das Projekt am Leben hält. Genau das fehlt, damit es nicht nur an einer Person und ihrer Freizeit hängt.

    Dazu habe ich mir eine Software geschrieben die b1gmail in ei neues System Überführt, bestehend aus grommunio, Nextcloud, HostBill und eigener aikQ Verwaltung)

    Ziel ist es
    "nichts aus b1gmail geht verloren — es wird nur in ein moderneres System überführt"

    0. Die Kernaussage

    Zitat

    Es ist eine Übernahme, kein Neuanfang. Jede Datenkategorie aus b1gmail wird entweder live in das neue System überführt (Kunden, Domains, E-Mail, Cloud, Organizer, Passwörter) oder revisionssicher in ein Legacy-Archiv übernommen (Rechnungen/Bestellungen, alte Systemeinstellungen, Admin-Logs) — und bleibt dort im Portal abrufbar. Nichts wird gelöscht, nichts geht verloren.

    Die b1gmail-Quelldatenbank wird dabei nur gelesen und bleibt unverändert — ein Rückfall ist jederzeit möglich.


    1. Das Prinzip: Extrahieren → Transformieren → Laden → Verifizieren

    Die Übernahme läuft über ein eigenes Migrationswerkzeug (Python-Pipeline + REST-API), das vom aikQ-Portal aus gesteuert wird:

    1. Extrahieren — liest read-only alle bm60_*-Tabellen der b1gmail-MySQL-DB sowie die Maildir-/Webdisk-Dateien. Der Extractor passt sich Spaltenvarianten alter b1gmail-Versionen automatisch an.
    2. Transformieren — bildet die b1gmail-Strukturen auf die Zielsysteme ab (Mapping z. B. b1gmail-Gruppe → Tarif/Produkt).
    3. Laden — schreibt in die jeweils zuständigen Zielsysteme (siehe Abschnitt 2).
    4. Verifizieren — die übernommenen Daten sind anschließend direkt im aikQ-Portal prüfbar (Kunden, Organizer, Rechnungs-/Einstellungs-/Log-Archiv).

    Die Pipeline ist dry-run-fähig (Probelauf ohne Schreiben), resumebar (Fortsetzen nach Abbruch) und superadmin-abgesichert (verschlüsselte Quell-Zugangsdaten, AES-256).


    2. Die Zielsysteme — wer übernimmt was

    b1gmail-BereichZielsystem im neuen Stack
    Kunden / Konten / MandantenaikQ-Portal (users / Mandanten-Hierarchie)
    Domains, Aliase, Postfächer, E-Mailgrommunio (Mailserver, via Admin-API)
    Cloud / Webdisk-DateienNextcloud (via WebDAV + OCS-API)
    Organizer (Kontakte, Kalender, Aufgaben, Notizen, Arbeitsgruppen)aikQ-Portal (eigene Organizer-Module)
    Abrechnung (Produkte, Kunden, künftige Rechnungen)HostBill (führendes Abrechnungssystem)
    Rechnungs-/Bestell-/Zahlungs-HistorieaikQ-Portal Legacy-Archiv (/legacy-archive, /my-invoices)
    Alte Systemeinstellungen + Admin-LogsaikQ-Portal Legacy-Archiv
    PasswörteraikQ-Auth (MD5→bcrypt mit Fallback-Login)

    3. Vollständige Abdeckung — was konkret übernommen wird

    Legende: ✅ live migriert (geht 1:1 ins neue Live-System) · 🗄️ ins Archiv (revisionssicher abrufbar, geht nicht verloren) · ⚠️ live, mit Restabgleich (funktioniert, einzelne Spezialfälle vor dem Echtlauf prüfen).

    3.1 Kunden, Konten & Zugang

    Datenartb1gmail-QuelleZielStatus
    Kunden / Benutzerkontenbm60_usersPortal users + Profile
    Kundenprofile (Name, Firma, Adresse, Telefon …)bm60_users / bm60_userprefsuser_profiles⚠️
    Tarife / Gruppen / Paketebm60_gruppenHostBill-Produkte (per Mapping) + Quotas⚠️
    Passwörterbm60_users.passwd(+Salt)bcrypt, Fallback-Login
    2FA-Secretsbm60_2fa(Archiv; Nutzer reaktivieren 2FA neu)🗄️

    Passwort-Garantie: Alte MD5-/Salted-MD5-Hashes werden übernommen. Beim ersten Login im neuen System wird das Passwort automatisch auf bcrypt aufgewertet — kein Kunde wird ausgesperrt, niemand muss ein neues Passwort setzen.

    3.2 Domains & E-Mail

    Datenartb1gmail-QuelleZielStatus
    Domainsbm60_domainsgrommunio-Domains
    Aliasebm60_aliasegrommunio-Aliase
    Auto-Responder / Abwesenheitbm60_autorespondergrommunio OOF
    Weiterleitungenbm60_users (forward-Felder)grommunio-Forwarding
    E-Mails / Postfächer / Ordnerbm60_mails, Maildirgrommunio-Mailstore (EML-Export → Import)⚠️
    Filter / Regelnbm60_filter*grommunio Sieve⚠️
    Signaturenbm60_signaturenSignatur-Speicher⚠️
    Postfach-Quotasbm60_gruppen.speichergrommunio-Quotas⚠️

    Postfächer werden inkl. Prüfsumme (SHA-256-Manifest) als EML exportiert und in grommunio importiert. Filterregeln werden gelesen und nach Sieve übersetzt; einzelne exotische Aktionen sollten nach der Migration stichprobenartig geprüft werden.

    3.3 Cloud / Webdisk

    Datenartb1gmail-QuelleZielStatus
    Cloud-/Webdisk-Dateienbm60_diskfiles + DateisystemNextcloud (WebDAV-Upload)⚠️
    Speicher-Kontingentebm60_gruppen.webdiskNextcloud-Quota⚠️

    Nutzer werden in Nextcloud angelegt, Kontingente gesetzt und die Dateien per WebDAV hochgeladen.

    3.4 Organizer (Groupware)

    Datenartb1gmail-QuelleZielStatus
    Kontakte (inkl. Foto)bm60_adressenPortal /contacts(VCF)⚠️
    Kontaktgruppenbm60_adressen_gruppen*Portal Gruppen
    Kalender / Termine / Teilnehmerbm60_dates*Portal /calendar⚠️
    Erinnerungenbm60_dates.reminderPortal-Reminder + E-Mail⚠️
    Aufgaben / To-Dosbm60_tasklists, bm60_tasksPortal /tasks⚠️
    Notizen (Priorität, Datum)bm60_notesPortal /notes⚠️
    Arbeitsgruppen + Freigabenbm60_workgroups*Portal-Arbeitsgruppen⚠️

    3.5 Abrechnung — Historie bleibt, Zukunft läuft über HostBill

    Datenartb1gmail-QuelleZielStatus
    Produkte / Kunden (laufend)abgeleitet aus Gruppen/UsernHostBill⚠️
    Rechnungenbm60_invoicesPortal Legacy-Archiv🗄️
    Bestellungenbm60_ordersPortal Legacy-Archiv🗄️
    Zahlungen / Transaktionenbm60_transactionsPortal Legacy-Archiv🗄️
    Zitat

    Wichtig: Die komplette Rechnungs-/Zahlungs-Historie geht nicht verloren — sie wird ins Portal-Archiv übernommen und ist dort pro Kunde abrufbar (/my-invoices, /legacy-archive). NeueRechnungen erzeugt ab Übernahme HostBill als führendes System. Das ist Absicht, kein Datenverlust.

    3.6 Superadmin / System & Logs

    Datenartb1gmail-QuelleZielStatus
    Systemeinstellungen (Sprache, Wartung, Registrierung, SMTP …)bm60_prefsaktiv: system_settings; Rest: Legacy-Archiv⚠️/🗄️
    Benutzereinstellungen (Sprache, Zeitzone, Theme …)bm60_userprefsPortal-Userprofil + Prefs⚠️
    Admin-Kontenbm60_adminsArchiv (Portal hat eigene Admin-/Reseller-Hierarchie)🗄️
    System-Logsbm60_logsPortal Legacy-Archiv (/legacy-archive)🗄️

    Die wichtigsten Superadmin-Einstellungen werden aktiv ins neue System übernommen; alles Übrige wird vollständig archiviert und bleibt einsehbar — auch hier geht nichts verloren.


    4. „Nichts geht verloren” — die drei Garantien

    1. Quelle bleibt unangetastet. Auf b1gmail wird nur lesend zugegriffen. Das Altsystem bleibt während und nach der Migration intakt → jederzeit Rückfall möglich.
    2. Live-Migration + Legacy-Archiv. Aktive Daten gehen 1:1 ins neue Live-System; historische Daten (Rechnungen, Logs, Alteinstellungen) wandern in ein abrufbares Archiv im Portal. Jede Kategorie hat ein Ziel — keine fällt weg.
    3. Niemand wird ausgesperrt. Passwörter werden übernommen, alte Logins funktionieren weiter und werden beim ersten Login transparent auf bcrypt aufgewertet.

    5. Der Ablauf — Schritt für Schritt

    Gesteuert über das aikQ-Portal (Superadmin) bzw. die Migrations-REST-API:

    1. Quelle anlegen — b1gmail-DB + grommunio/HostBill/Nextcloud-Zugänge hinterlegen (verschlüsselt gespeichert).
    2. Verbindungstest (test-connection) — alle Zielsysteme erreichbar?
    3. Schema-Preflight (schema-preflight) — prüft die b1gmail-Tabellen/Spalten vor dem Lauf (fängt exotische Altschemata ab).
    4. Vorschau / Dry-Run (preview, start dry_run=true) — rechnet die Migration durch und schreibt nichts; erzeugt prüfbare JSON-Ausgaben (z. B. hostbill_clients.json, grommunio_users.json, invalid_clients.json).
    5. Selektive Migration — wahlweise nur HostBill, nur grommunio, nur Organizer, nur Billing-Archiv etc. (kontrolliert, in Etappen).
    6. Resume — bei Abbruch an der letzten abgeschlossenen Phase fortsetzen (Statusdatei migration_state.json).
    7. Verifikation im Portal — Kunden, /contacts, /calendar, /tasks, /notes, /my-invoices, /legacy-archive gegenprüfen.
    8. Passwort-Fallback aktiv — Kunden können sich sofort mit ihren alten Passwörtern anmelden.

    Hallo zusammen,

    ich arbeite aktuell an einer eigenen, weiterentwickelten b1gmail-Version und wollte euch kurz zeigen, woran ich gerade sitze. Ziel ist, b1gmail technisch und rechtlich wieder auf einen modernen Stand zu bringen – Schwerpunkte sind Sicherheit, Suche, Compliance und echte Mandantenfähigkeit.

    Ein paar der Punkte, an denen ich arbeite (Auszug):

    • Sicherheit / Passwortspeicherung: ein integrierter, verschlüsselter Passwort- bzw. Zugangsdaten-Speicher (Vault), damit Credentials sicher abgelegt werden statt im Klartext.
    • Volltextsuche mit Elasticsearch: deutlich schnellere und leistungsfähigere Suche über Mails und Ordner als die bisherige DB-Suche.
    • Erweiterte Protokollierung: detaillierteres Logging / Audit-Trail für Nachvollziehbarkeit und Betrieb.
    • TKÜV-/RKG-Fähigkeit: Anpassungen, um b1gmail für die Anforderungen nach TKÜV (und RKG) fit zu machen, sodass es auch im providernahen Einsatz rechtskonform betrieben werden kann.
    • Rollenmanagement / Mandantenfähigkeit: Reseller- und Domainkunden-Fähigkeit, damit b1gmail sauber mehrstufig (Reseller → Kunde → Nutzer) betrieben werden kann.
    • DynDNS-Integration: dynamische DNS-Anbindung für flexiblere Deployments.

    …und das ist nur ein Auszug – es kommt noch einiges mehr dazu.

    Das entsteht parallel zu meinen anderen Projekten im DACH-/MSP-Umfeld. Ich halte euch hier gern auf dem Laufenden und freue mich über Feedback, Erfahrungen oder Interesse an einem Austausch.