Die sgcWebSockets WhatsApp-Komponente ermöglicht Delphi-Teams, sofortige, personalisierte Gespräche im großen Maßstab zu liefern. Ob du CRM-Integrationen, Helpdesk-Portale oder transaktionale Benachrichtigungsdienste baust — die Komponente bietet eine sichere, resiliente und voll unterstützte Brücke zum WhatsApp Business Messaging. Dieser Artikel verbindet den geschäftlichen Nutzen mit den technischen Details, die du brauchst, um produktionsreife Chat-Flows schnell auszuliefern.
Business-Impact auf einen Blick
- Schnelleres Onboarding: Vorgefertigte Authentifizierung, Message-Routing und Session-Management verkürzen den Projektstart von Tagen auf Stunden.
- Höheres Engagement: Pushe Werbeangebote, Erinnerungen und Alerts über den Channel, dem deine Kunden bereits vertrauen.
- Geringere Betriebskosten: Automatisiere Gespräche und Support-Flows, ohne einen eigenen Messaging-Stack pflegen zu müssen.
Architekturüberblick
Die Komponente kapselt die REST-Endpoints und WebSocket-Callbacks der WhatsApp Business API in einem Delphi-freundlichen Interface. Sie verwaltet Token-Refreshes, Message-Formatierung (Text, Templates, Media) und asynchrone Delivery-Reports. Intern setzt sie auf die Kern-Transporte von sgcWebSockets — du profitierst also von demselben TLS-, Reconnect- und Threading-Modell, das im gesamten Framework verwendet wird.
Voraussetzungen
- sgcWebSockets Professional oder Enterprise.
- Ein aktives WhatsApp Business Platform-Konto mit gültiger App ID, App Secret und Access Token.
- sgcWebSockets installiert mit registriertem WhatsApp-Komponentenpaket.
Komponentenkonfiguration in Delphi
Platziere die Komponente TsgcWhatsAppClient auf deinem Datenmodul oder Service-Formular. Konfiguriere die wichtigsten Eigenschaften im Object Inspector oder im Code bei der Initialisierung.
Design-Time-Einstellungen
- Trage in PhoneNumberID die von Meta bereitgestellte Sender-Phone-ID ein.
- Weise AccessToken zu und optional AppSecretProof, falls du signierte Requests erzwingst.
- Setze AutoReconnect auf true, um den WebSocket-Kanal am Leben zu halten.
- Verknüpfe die Events OnMessageStatus und OnIncomingMessage für Zustellbestätigungen und eingehenden Chat.
procedure TdmMessaging.DataModuleCreate(Sender: TObject);
begin
sgcWhatsAppClient.BaseURL := 'https://graph.facebook.com/v18.0/';
sgcWhatsAppClient.PhoneNumberID := '123456789012345';
sgcWhatsAppClient.AccessToken := TSecretStore.FetchToken('WA_ACCESS');
sgcWhatsAppClient.WebhookVerifyToken := 'MyDelphiWebhook';
sgcWhatsAppClient.AutoReconnect := True;
sgcWhatsAppClient.Connect;
end;
Nachrichten senden
Nutze die Hilfsmethoden SendText und SendTemplate für High-Level-Szenarien, oder greife auf die Messages-Collection für erweiterte Payloads zu.
procedure TdmMessaging.SendWelcomeMessage(const ADestination: string); var LMessage: TsgcWAOutboundMessage; begin LMessage := sgcWhatsAppClient.Messages.Add; LMessage.ToPhone := ADestination; LMessage.TypeMessage := watText; LMessage.Text.Body := 'Welcome to our premium support channel!'; sgcWhatsAppClient.SendMessage(LMessage); end;
Antworten empfangen und automatisieren
Die Komponente enthält einen eingebauten Webhook-Listener, der die HTTP-Server-Funktionen von sgcWebSockets nutzt. Map den Webhook-Pfad auf deinen öffentlichen Endpoint und verarbeite Antworten in Event-Handlern.
procedure TdmMessaging.sgcWhatsAppClientIncomingMessage(Sender: TObject;
const AMessage: TsgcWAInboundMessage);
begin
if AMessage.Text.Body.ToLower.Contains('pricing') then
sgcWhatsAppClient.SendText(AMessage.FromPhone,
'Ask about our enterprise bundles for priority SLA and analytics dashboards.')
else
QueueForAgent(AMessage);
end;
Erweiterte Konfiguration
- Template-Management: Rufe ListTemplates auf, um genehmigte Message-Templates abzurufen und im Speicher zu cachen.
- Media-Uploads: Nutze UploadMedia mit einem TBytesStream, um PDFs, Bilder oder Voice-Notes zu liefern.
- Zeitplanung: Kombiniere mit TsgcScheduler, um Kampagnen basierend auf CRM-Triggern zu orchestrieren.
- Analytics: Verknüpfe OnMessageStatus-Events, um Zustell-/Lesebestätigungen für BI-Dashboards zu loggen.
Vorteile der WhatsApp-Komponente
- Einheitlicher Support-Stack: Integriert sich nahtlos in bestehende sgcWebSockets-Transporte — du hast ein einziges Framework für HTTP, MQTT, AMQP und WhatsApp-Messaging.
- Starke Sicherheit: TLS-1.3-Unterstützung, konfigurierbare Token-Refresh-Intervalle und Signaturvalidierung schützen jede Nachricht.
- Hoher Durchsatz: Eingebautes Throttling und parallele Send-Queues helfen dir, innerhalb der Meta-Rate-Limits zu bleiben und Kampagnen schnell auszuliefern.
- Entwicklerproduktivität: Delphi-Komponenten, Events und Property-Editoren halten deinen Code stark typisiert und IDE-freundlich — geringerer Wartungsaufwand.
- Skalierbare Deployments: Funktioniert auf Windows-Diensten, Desktop-Apps und Load-Balancer-Servern dank non-blocking Sockets und asynchroner Callbacks.
