WhatsApp Delphi-component

· Componenten

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

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

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

  1. Vul PhoneNumberID met de zender-telefoon-ID die door Meta is verstrekt.
  2. Wijs AccessToken toe en optioneel het AppSecretProof als je ondertekende requests afdwingt.
  3. Stel AutoReconnect in op true om het WebSocket-kanaal actief te houden.
  4. 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

Voordelen van het gebruik van het WhatsApp-component