11 KiB
Update-Anleitung: KeyHelp Manager v1.x → v2.0.0
Diese Anleitung führt Sie durch das Update von KeyHelp Manager Version 1.x auf 2.0.0.
🎉 Was ist neu in Version 2.0.0?
Hauptverbesserungen
-
Zentralisierte API-Konfiguration
- API-Keys und Server-Einstellungen nur noch einmal in WHMCS konfigurieren
- Keine redundante Eingabe mehr bei jedem Produkt
- Einfachere Verwaltung bei mehreren KeyHelp-Servern
-
Template/Vorlagen-System
- Automatische Synchronisation von KeyHelp-Plänen
- Dropdown-Auswahl bei Produktkonfiguration
- Template-basierte Domain-Erstellung
-
Verbesserter Client Area
- Anzeige des verwendeten Templates
- Direkter Link zum Admin-Panel
- Übersichtlichere Darstellung
📋 Voraussetzungen
- WHMCS 8.13 oder höher
- PHP 8.3 oder höher
- KeyHelp mit API v2
- Zugriff auf WHMCS Admin-Panel
- Backup Ihrer aktuellen Installation
🔄 Update-Schritte
Schritt 1: Backup erstellen
# Backup des Modul-Ordners
cp -r /pfad/zu/whmcs/modules/servers/keyhelpmanager /pfad/zu/backup/keyhelpmanager_v1_backup
# Backup der Datenbank (optional, aber empfohlen)
mysqldump -u [username] -p [database_name] > whmcs_backup_$(date +%Y%m%d).sql
Schritt 2: Alte Konfiguration dokumentieren
Notieren Sie sich für jedes Produkt mit KeyHelp Manager:
- Hostname/IP des KeyHelp-Servers
- API-Key
- SSL-Einstellungen
- Verwendete Plan-Namen (falls konfiguriert)
Beispiel:
| Produkt | Hostname | API-Key | SSL | Plan |
|---|---|---|---|---|
| Webhosting Basic | keyhelp1.example.com | abc123... | Ja | Basic |
| Webhosting Pro | keyhelp1.example.com | abc123... | Ja | Pro |
| Reseller | keyhelp2.example.com | xyz789... | Ja | Reseller |
Schritt 3: Module-Dateien aktualisieren
# Alte Version löschen
rm -rf /pfad/zu/whmcs/modules/servers/keyhelpmanager/*
# Neue Version entpacken
unzip keyhelpmanager_v2.0.0.zip -d /pfad/zu/whmcs/modules/servers/
# Oder via Git
cd /pfad/zu/whmcs/modules/servers/keyhelpmanager
git pull origin main
Schritt 4: Server in WHMCS konfigurieren
Dies ist der wichtigste Schritt! Die Konfiguration erfolgt jetzt zentral.
4.1 Server hinzufügen
- Gehen Sie zu: Setup → Products/Services → Servers
- Klicken Sie auf Add New Server
- Füllen Sie das Formular aus:
Für KeyHelp Server 1:
Name: KeyHelp Server 1
Hostname: keyhelp1.example.com
IP Address: [optional]
Type: KeyHelp Manager
Username: [leer lassen]
Password: [HIER API-KEY EINTRAGEN]
Access Hash: [leer lassen]
Secure: ✓ (Checkbox aktivieren für SSL)
Active: ✓
Wichtig: Der API-Key kommt ins Password-Feld!
4.2 Mehrere Server
Falls Sie mehrere KeyHelp-Server haben, wiederholen Sie Schritt 4.1 für jeden Server:
Server 1: KeyHelp Server 1 (keyhelp1.example.com)
Server 2: KeyHelp Server 2 (keyhelp2.example.com)
Server 3: KeyHelp Reseller (keyhelp3.example.com)
Schritt 5: Verbindung testen
- Klicken Sie bei jedem konfigurierten Server auf Test Connection
- Sie sollten die Meldung sehen: "Connection Successful!"
- Bei Fehlern überprüfen Sie:
- Hostname korrekt?
- API-Key korrekt im Password-Feld?
- SSL-Checkbox entsprechend Ihrer Server-Konfiguration?
- Firewall erlaubt Verbindung?
Schritt 6: Produkte aktualisieren
Für jedes Produkt mit KeyHelp Manager:
6.1 Server zuweisen
- Gehen Sie zu: Setup → Products/Services → Products/Services
- Wählen Sie ein Produkt aus
- Tab: Module Settings
- Bei Server Group: Wählen Sie den entsprechenden Server aus
- Oder bei Selected Server: Wählen Sie spezifischen Server
6.2 Templates synchronisieren
- Scrollen Sie zu den Module Settings
- Klicken Sie auf Sync Templates
- Die verfügbaren KeyHelp-Pläne werden geladen
6.3 Template auswählen
- Bei KeyHelp Template: Wählen Sie die passende Vorlage
- Beispiel:
- Produkt "Webhosting Basic" → Template "Basic Plan"
- Produkt "Webhosting Pro" → Template "Pro Plan"
6.4 Alte Config-Optionen entfernen
Die alten Felder (Hostname, API-Key, etc.) werden automatisch ausgeblendet. Falls noch sichtbar, können diese ignoriert werden - sie werden nicht mehr verwendet.
6.5 Speichern
- Klicken Sie unten auf Save Changes
- Wiederholen Sie Schritte 6.1-6.5 für alle Produkte
Schritt 7: Bestehende Accounts migrieren (optional)
Wichtig: Bestehende Accounts funktionieren weiterhin!
Für bestehende Accounts können Sie optional die Template-Information hinzufügen:
-- Beispiel SQL für manuelles Hinzufügen der Template-ID
-- ACHTUNG: Nur für erfahrene Benutzer!
UPDATE tblhosting
SET
configoption1 = '5' -- Template ID
WHERE
server = [SERVER_ID]
AND packageid = [PRODUCT_ID];
Empfehlung: Neue Accounts werden automatisch mit korrekter Template-ID erstellt.
Schritt 8: Test-Account erstellen
- Erstellen Sie eine Test-Bestellung
- Verifizieren Sie:
- ✓ Account wird korrekt erstellt
- ✓ Template wird verwendet
- ✓ Client Area zeigt alle Informationen
- ✓ Template-Name wird angezeigt
- ✓ Admin-Panel-Link funktioniert
- ✓ Login-Button funktioniert
🔍 Vergleich: Alt vs. Neu
Version 1.x (Alt)
Produkt-Konfiguration:
├── Hostname: keyhelp1.example.com
├── API-Key: abc123...
├── SSL: Ja
└── SSL-Verify: Ja
Problem: Bei 10 Produkten → 10x dieselbe Konfiguration!
Version 2.0 (Neu)
Server-Konfiguration (EINMALIG):
├── Server 1: keyhelp1.example.com
│ └── API-Key: abc123...
└── Server 2: keyhelp2.example.com
└── API-Key: xyz789...
Produkt-Konfiguration (PRO PRODUKT):
├── Server: Server 1
└── Template: Basic Plan
Vorteil: Zentrale Verwaltung, keine Redundanz!
📊 Konfigurationsübersicht
Alte Produktkonfiguration (v1.x)
ConfigOption1: Hostname
ConfigOption2: API-Key
ConfigOption3: SSL (on/off)
ConfigOption4: SSL-Verify (on/off)
Neue Produktkonfiguration (v2.0)
ConfigOption1: Template-Dropdown (dynamisch geladen)
Server-Einstellungen:
├── serverhostname: Von Server übernommen
├── serveraccesshash: Von Server übernommen
└── serversecure: Von Server übernommen
🎯 Migration verschiedener Szenarien
Szenario 1: Ein Server, mehrere Produkte
Vorher:
- 5 Produkte
- Jedes mit eigenem Hostname + API-Key
Nachher:
- Einen Server in WHMCS anlegen
- Alle 5 Produkte diesem Server zuweisen
- Je nach Produkt unterschiedliche Templates wählen
Zeitersparnis: 80%
Szenario 2: Mehrere Server
Vorher:
- Server A: Produkt 1-3
- Server B: Produkt 4-5
- Jedes Produkt einzeln konfiguriert
Nachher:
- Server A in WHMCS anlegen
- Server B in WHMCS anlegen
- Produkte 1-3 → Server A zuweisen
- Produkte 4-5 → Server B zuweisen
- Templates pro Produkt wählen
Szenario 3: White-Label / Reseller
Vorher:
- Reseller1-Server: Produkt A, B, C
- Eigene Branding, gleiche API-Keys
Nachher:
- "Reseller1-KeyHelp" Server anlegen
- Alle Reseller-Produkte zuweisen
- Reseller-spezifische Templates wählen
🐛 Troubleshooting
Problem 1: "KeyHelp server not configured"
Ursache: Server nicht in WHMCS konfiguriert
Lösung:
- Gehe zu Setup → Servers
- Füge KeyHelp-Server hinzu
- Weise Server dem Produkt zu
Problem 2: Templates werden nicht geladen
Ursache: API-Verbindung fehlerhaft oder keine Pläne in KeyHelp
Lösung:
1. Test Connection durchführen
2. In KeyHelp prüfen: Sind Pläne angelegt?
3. API-Key-Berechtigung prüfen
4. "Sync Templates" Button klicken
Problem 3: Bestehende Accounts funktionieren nicht
Ursache: Account-Details referenzieren alte Config-Optionen
Lösung: Bestehende Accounts sollten weiterhin funktionieren. Falls nicht:
-- Prüfe gespeicherte Account-Details
SELECT * FROM tblhosting WHERE id = [SERVICE_ID];
-- Prüfe Custom Fields
SELECT * FROM tblcustomfieldsvalues WHERE relid = [SERVICE_ID];
Problem 4: Admin-Panel-Link funktioniert nicht
Ursache: Domain-ID nicht gespeichert (nur bei neuen Accounts)
Lösung:
- Nur neue Accounts (ab v2.0) haben Admin-Panel-Link
- Alte Accounts: Nutzen Sie den Standard-Login-Button
Problem 5: "Template not found"
Ursache: Gewähltes Template existiert nicht mehr in KeyHelp
Lösung:
- Templates neu synchronisieren
- Produkt-Konfiguration prüfen
- Anderes Template wählen
📝 Checkliste nach Update
- Backup erstellt
- Alte Konfiguration dokumentiert
- Neue Module-Dateien hochgeladen
- Server in WHMCS konfiguriert
- Verbindung getestet (alle Server)
- Templates synchronisiert
- Alle Produkte aktualisiert
- Test-Account erstellt und geprüft
- Bestehende Accounts funktionieren
- Client Area korrekt
- Admin-SSO funktioniert
- Module-Logs überprüft
🚀 Vorteile nach dem Update
Für Administratoren
- ✅ Zentrale Verwaltung aller Server
- ✅ Keine redundante Konfiguration
- ✅ Schnellere Produkt-Erstellung
- ✅ Einfacher Server-Wechsel
- ✅ Bessere Übersicht
Für Kunden
- ✅ Template-Information sichtbar
- ✅ Direkter Admin-Panel-Link
- ✅ Schnellerer Zugriff
- ✅ Besseres Design
Für Entwickler
- ✅ Sauberer Code
- ✅ Weniger Config-Optionen
- ✅ Standard-WHMCS-Workflow
- ✅ Einfachere Wartung
📞 Support
Bei Problemen
-
Logs prüfen:
Utilities → Logs → Module Log Filter: keyhelpmanager -
KeyHelp-API testen:
curl -H "X-API-Key: YOUR_API_KEY" \ https://keyhelp.example.com/api/v2/server/version -
WHMCS Test Connection:
Setup → Servers → Test Connection
Kontakt
- GitHub Issues: https://github.com/ihr-repo/keyhelpmanager/issues
- Entwickler: Kevin Feiler / AVVGO
- Website: https://avvgo.de
🔄 Rollback (falls nötig)
Falls das Update Probleme verursacht:
# 1. Backup wiederherstellen
rm -rf /pfad/zu/whmcs/modules/servers/keyhelpmanager
cp -r /pfad/zu/backup/keyhelpmanager_v1_backup /pfad/zu/whmcs/modules/servers/keyhelpmanager
# 2. Browser-Cache leeren
# 3. WHMCS-Cache leeren
rm -rf /pfad/zu/whmcs/templates_c/*
# 4. Produkt-Konfiguration zurücksetzen
# (manuell in WHMCS Admin-Panel)
Wichtig: Nach Rollback müssen Sie die alten Config-Optionen wieder eintragen!
📅 Zeitaufwand
- 1-2 Server: ca. 15-30 Minuten
- 3-5 Server: ca. 30-45 Minuten
- 10+ Produkte: ca. 45-60 Minuten
Tipp: Planen Sie das Update außerhalb der Geschäftszeiten.
✨ Nächste Schritte
Nach erfolgreichem Update:
- Informieren Sie Ihr Team über die Änderungen
- Aktualisieren Sie interne Dokumentation
- Testen Sie alle Workflows
- Freuen Sie sich über die Vereinfachung! 🎉
Viel Erfolg beim Update!
KeyHelp Manager v2.0.0
© 2024 Kevin Feiler / AVVGO