84ba78a1c5
Replace the Office Web Add-in with a native Windows application. The web add-in required Exchange/M365 for registration which is not available in all customer environments (standalone Office, POP/IMAP only). The new app: - Uses COM Interop to access Outlook contacts directly - Communicates with Starface REST API (accepts self-signed certs) - Runs as System Tray app with optional auto-sync - Profile-based config stored in %AppData% - No webserver, no certificates, no Exchange, no M365 needed - Inno Setup installer for clean MSI-style deployment - Works with any Outlook version (Classic and New) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
145 lines
5.3 KiB
Markdown
145 lines
5.3 KiB
Markdown
# Starface Kontakt-Sync
|
|
|
|
Windows-Anwendung zur bidirektionalen Synchronisation von Kontakten zwischen Microsoft Outlook und einer Starface Telefonanlage.
|
|
|
|
## Funktionen
|
|
|
|
- **Bidirektionale Synchronisation** von Kontakten zwischen Outlook und Starface
|
|
- **Profil-System** zum Verwalten mehrerer Sync-Konfigurationen (verschiedene Adressbuecher oder Anlagen)
|
|
- **Starface-Adressbuecher**: Zentrales Adressbuch, persoenliches Adressbuch und Tag-basierte Adressbuecher
|
|
- **Outlook-Kontaktordner**: Frei waehlbarer Kontaktordner als Sync-Ziel
|
|
- **Sync-Richtung** konfigurierbar: Outlook -> Starface, Starface -> Outlook oder bidirektional
|
|
- **Intelligentes Matching**: Kontakte werden anhand von E-Mail-Adresse oder Name abgeglichen
|
|
- **Aenderungserkennung**: Nur geaenderte Kontakte werden uebertragen (Hash-basiert)
|
|
- **Auto-Sync**: Optionaler automatischer Sync in konfigurierbarem Intervall
|
|
- **System Tray**: Laeuft im Hintergrund, Schnell-Sync per Rechtsklick
|
|
- **Kompatibel** mit Outlook Classic und dem neuen Outlook
|
|
- **Komplett lokal**: Kein Exchange, kein Microsoft 365, kein Cloud-Konto erforderlich
|
|
|
|
## Voraussetzungen
|
|
|
|
- Windows 10/11
|
|
- .NET Framework 4.8 (in Windows 10/11 bereits enthalten)
|
|
- Microsoft Outlook (Classic oder Neu, beliebige Version)
|
|
- Starface Telefonanlage ab Version 6.7 (REST-API)
|
|
|
|
## Installation beim Kunden
|
|
|
|
### Setup ausfuehren
|
|
|
|
1. `StarfaceOutlookSync_Setup_0.0.0.1.exe` ausfuehren
|
|
2. Installationsoptionen waehlen:
|
|
- Desktop-Verknuepfung erstellen (optional)
|
|
- Bei Windows-Anmeldung automatisch starten (empfohlen)
|
|
3. Fertig - die App startet automatisch
|
|
|
|
### Nach der Installation
|
|
|
|
1. App starten (Tray-Icon oder Desktop-Verknuepfung)
|
|
2. "Neues Profil" klicken
|
|
3. Starface-Verbindungsdaten eingeben (Host, Login-ID, Kennwort)
|
|
4. "Verbindung testen" und "Adressbuecher laden"
|
|
5. Starface-Adressbuch und Outlook-Kontaktordner waehlen
|
|
6. Speichern und "Jetzt synchronisieren"
|
|
|
|
### Deinstallation
|
|
|
|
Ueber Windows Einstellungen -> Apps oder die Systemsteuerung.
|
|
Benutzerdaten (Profile, Mappings) werden mit entfernt.
|
|
|
|
## Entwicklung
|
|
|
|
### Bauen
|
|
|
|
```bash
|
|
# In Visual Studio oeffnen und bauen, oder:
|
|
dotnet build src/StarfaceOutlookSync/StarfaceOutlookSync.csproj -c Release
|
|
```
|
|
|
|
### Installer erstellen
|
|
|
|
1. [Inno Setup 6](https://jrsoftware.org/isinfo.php) installieren
|
|
2. Release-Build erstellen
|
|
3. `installer/setup.iss` in Inno Setup oeffnen und kompilieren
|
|
4. Setup-EXE wird in `dist/` erstellt
|
|
|
|
## Projektstruktur
|
|
|
|
```
|
|
outlook-sync/
|
|
├��─ StarfaceOutlookSync.sln # Visual Studio Solution
|
|
├── installer/
|
|
│ └── setup.iss # Inno Setup Script
|
|
└── src/StarfaceOutlookSync/
|
|
├── StarfaceOutlookSync.csproj # Projektdatei
|
|
├── Program.cs # Entry Point (Single Instance)
|
|
├── Models/
|
|
│ ├── UnifiedContact.cs # Kontakt-Datenmodell
|
|
│ └── SyncProfile.cs # Profile, Mappings, Ergebnisse
|
|
├── Services/
|
|
│ ├── StarfaceApiClient.cs # Starface REST-API Client
|
|
│ ├── OutlookContactsService.cs # Outlook COM Interop
|
|
│ ├── ProfileManager.cs # Profilverwaltung (AppData)
|
|
│ └── SyncEngine.cs # Bidirektionale Sync-Logik
|
|
└── UI/
|
|
├── MainForm.cs # Hauptfenster + System Tray
|
|
├── ProfileEditorForm.cs # Profil anlegen/bearbeiten
|
|
├── SyncProgressForm.cs # Sync-Fortschritt mit Log
|
|
└── AboutForm.cs # Info-Dialog
|
|
```
|
|
|
|
## Synchronisierte Kontaktfelder
|
|
|
|
| Feld | Outlook (COM) | Starface (REST) |
|
|
|------|---------------|-----------------|
|
|
| Vorname | FirstName | NAME |
|
|
| Nachname | LastName | SURNAME |
|
|
| Firma | CompanyName | COMPANY |
|
|
| Position | JobTitle | JOB_TITLE |
|
|
| E-Mail | Email1Address | EMAIL |
|
|
| Telefon (Buero) | BusinessTelephoneNumber | OFFICE_PHONE_NUMBER |
|
|
| Mobiltelefon | MobileTelephoneNumber | MOBILE_PHONE_NUMBER |
|
|
| Telefon (Privat) | HomeTelephoneNumber | PRIVATE_PHONE_NUMBER |
|
|
| Fax | BusinessFaxNumber | FAX_NUMBER |
|
|
| Strasse | BusinessAddressStreet | STREET |
|
|
| Stadt | BusinessAddressCity | CITY |
|
|
| PLZ | BusinessAddressPostalCode | POSTAL_CODE |
|
|
| Bundesland | BusinessAddressState | STATE |
|
|
| Land | BusinessAddressCountry | COUNTRY |
|
|
| Webseite | WebPage | URL |
|
|
| Notizen | Body | NOTE |
|
|
| Anrede | Title | SALUTATION |
|
|
| Geburtstag | Birthday | BIRTHDAY |
|
|
|
|
## Technische Details
|
|
|
|
### Architektur
|
|
|
|
Die Anwendung ist eine native Windows-App (WinForms, .NET Framework 4.8). Sie greift direkt per COM Interop auf Outlook-Kontakte zu und kommuniziert per REST-API mit der Starface. Kein Webserver, kein Browser, kein Exchange erforderlich.
|
|
|
|
```
|
|
StarfaceOutlookSync.exe
|
|
├── COM Interop -> Outlook Kontakte (lokal)
|
|
├── REST-API -> Starface Telefonanlage (HTTPS)
|
|
└── Dateisystem -> Profile & Mappings (%AppData%)
|
|
```
|
|
|
|
### Datenspeicherung
|
|
|
|
Alle Daten werden lokal pro Benutzer gespeichert:
|
|
- `%AppData%\StarfaceOutlookSync\profiles.json` - Sync-Profile mit Zugangsdaten
|
|
- `%AppData%\StarfaceOutlookSync\mappings\` - Kontakt-Zuordnungen pro Profil
|
|
|
|
### SSL-Zertifikate
|
|
|
|
Self-signed Zertifikate der Starface werden automatisch akzeptiert. Es ist kein manueller Zertifikat-Import erforderlich.
|
|
|
|
## Lizenz
|
|
|
|
Proprietaer - Alle Rechte vorbehalten.
|
|
|
|
HackerSoft - Hacker-Net Telekommunikation
|
|
Stefan Hacker
|
|
Am Wunderburgpark 5b
|
|
26135 Oldenburg
|