Met het sgcWebSockets WhatsApp-component kunnen Delphi-teams direct gepersonaliseerde gesprekken op schaal leveren. Of je nu CRM-integraties, helpdeskportalen of transactionele notificatiediensten bouwt, het component biedt een veilige, robuuste en volledig ondersteunde brug naar WhatsApp Business-messaging. Dit artikel combineert de commerciële waarde met de technische details die je nodig hebt om snel productieklare chat-flows te leveren.
Bedrijfsimpact in één oogopslag
- Snellere onboarding: kant-en-klare authenticatie, message-routing en sessiebeheer verkorten de projectstart van dagen tot uren.
- Hogere betrokkenheid: push promotionele aanbiedingen, herinneringen en meldingen op het kanaal dat je klanten al vertrouwen.
- Lagere operationele kosten: automatiseer gesprekken en support-flows zonder een eigen messaging-stack te onderhouden.
Architectuuroverzicht
Het component bundelt de WhatsApp Business-API REST-endpoints en WebSocket-callbacks in een Delphi-vriendelijke interface. Het beheert token-refreshes, message-formatting (tekst, templates, media) en asynchrone bezorgingsrapporten. Intern vertrouwt het op de sgcWebSockets-kerntransports, dus je profiteert van hetzelfde TLS-, herverbindings- en threading-model dat door het hele framework wordt gebruikt.
Vereisten
- sgcWebSockets Professional of Enterprise.
- Een actief WhatsApp Business Platform-account met geldige App ID, App Secret en Access Token.
- sgcWebSockets geïnstalleerd met het WhatsApp-componentpackage geregistreerd.
Componentconfiguratie in Delphi
Plaats het TsgcWhatsAppClient-component op je datamodule of service-form. Configureer de essentiële eigenschappen in de Object Inspector of in code tijdens initialisatie.
Design-time-instellingen
- Vul PhoneNumberID met de zender-telefoon-ID die door Meta is verstrekt.
- Wijs AccessToken toe en optioneel het AppSecretProof als je ondertekende requests afdwingt.
- Stel AutoReconnect in op true om het WebSocket-kanaal actief te houden.
- Koppel de events OnMessageStatus en OnIncomingMessage voor bezorgingsbevestigingen en afhandeling van inkomende chats.
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;
Berichten versturen
Gebruik de helpermethoden SendText en SendTemplate voor high-level-scenario's, of gebruik de Messages-collectie voor geavanceerde payloads.
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;
Reacties ontvangen en automatiseren
Het component bevat een ingebouwde webhook-listener die gebruikmaakt van de HTTP-serverfunctionaliteit van sgcWebSockets. Koppel het webhook-pad aan je gepubliceerde endpoint en verwerk antwoorden in event-handlers.
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;
Geavanceerde configuratie
- Templatebeheer: roep ListTemplates aan om goedgekeurde message-templates op te halen en in het geheugen gecachet te houden.
- Media-uploads: gebruik UploadMedia met een TBytesStream om pdf's, afbeeldingen of voice notes te leveren.
- Planning: combineer met TsgcScheduler om campagnes te orchestreren op basis van CRM-triggers.
- Analytics: haak in op OnMessageStatus-events om bezorg-/leesbevestigingen te loggen voor BI-dashboards.
Voordelen van het gebruik van het WhatsApp-component
- Verenigde support-stack: integreert naadloos met bestaande sgcWebSockets-transports, zodat je één framework onderhoudt voor HTTP-, MQTT-, AMQP- en WhatsApp-messaging.
- Sterke beveiliging: TLS 1.3-ondersteuning, configureerbare token-refresh-intervallen en handtekeningvalidatie beschermen elk bericht.
- Hoge doorvoer: ingebouwde throttling en parallelle verzendwachtrijen helpen je binnen de rate-limits van Meta te blijven terwijl je campagnes snel levert.
- Ontwikkelaarsproductiviteit: Delphi-componenten, events en property-editors houden je code sterk getypeerd en IDE-vriendelijk, en verlagen de onderhoudslast.
- Schaalbare deployments: werkt op Windows-services, desktop-apps en load-balanced servers dankzij non-blocking sockets en asynchrone callbacks.
