WhatsApp Cloud API

Whatsapp

 

Verzend en ontvang berichten via een in de cloud gehoste versie van het WhatsApp Business Platform. De Cloud API stelt u in staat WhatsApp Business API's te implementeren zonder de kosten van het hosten van uw eigen servers en maakt ook een eenvoudigere schaalvergroting van uw zakelijke berichtenuitwisseling mogelijk. De Cloud API ondersteunt tot 80 berichten per seconde van gecombineerd verzenden en ontvangen (inclusief tekst- en mediaberichten).

 

De WhatsApp Business API stelt middelgrote en grote bedrijven in staat op schaal te communiceren met hun klanten. Met behulp van de API kunnen bedrijven systemen bouwen die duizenden klanten verbinden met medewerkers of bots, waardoor zowel programmatische als handmatige communicatie mogelijk is. Daarnaast kunt u de API integreren met talloze back-endsystemen, zoals CRM- en marketingplatforms.

 

Functies

Bedrijven krijgen alle nieuwe functies sneller op Cloud API. Op dit moment bevat WhatsApp Business Cloud API alle functies die beschikbaar zijn met WhatsApp Business API.

 

Nuttige functies van de WhatsApp Cloud API:

 

 

Meest voorkomende gebruiksgevallen

 

 

 

Aan de slag

Om een eerste bericht te verzenden en te ontvangen met behulp van een testnummer, voltooit u de volgende stappen:

 

1. Ontwikkelaarsactiva en platformtoegang instellen

 

 

Klik vanuit het App-dashboard op de app waarmee u verbinding wilt maken met WhatsApp. Scroll omlaag om het "WhatsApp"-product te vinden en klik op Instellen.

 

Vervolgens ziet u de optie om een bestaande Business Manager te selecteren (als u er een heeft), of, als u dat wilt, kan het onboardingproces er automatisch een aanmaken (u kunt uw bedrijf later aanpassen indien nodig). Maak een selectie en klik op Continue.

 

Wanneer u op Continue klikt, voert het onboardingproces de volgende acties uit:

 

 

2. Stuur een testbericht

 

 

Nu kunt u uw IDE openen en een nieuw project maken. Plaats een TsgcWhatsapp_Client-component en vul de volgende properties in:

 

 

Zodra deze 2 eigenschappen correct zijn geconfigureerd, roept u de methode SendTest aan om uw eerste bericht naar een telefoonnummer te sturen via het Whatsapp Business Platform.

 


oClient := TsgcWhatsapp_Client.Create(nil);
oClient.WhatsappOptions.PhoneNumberId := '107809351952205';
oClient.WhatsappOptions.Token := 'EAAO4OpgZAs98BAGj3nCFGr...ZB2t8mmLB2LRXJkte2Y5PMNh2';
oClient.SendTest('34605889421');

 

3. Configureer een Webhook

 

Om een melding te ontvangen wanneer u een bericht ontvangt of wanneer de status van een bericht is gewijzigd, moet u een Webhooks-eindpunt instellen voor uw app. Het instellen van Webhooks heeft geen invloed op de status van uw telefoonnummer en interfereert niet met het verzenden of ontvangen van berichten.

 

Om aan de slag te gaan, moet u eerst het eindpunt aanmaken. Configureer daarvoor eerst de eigenschap ServerOptions van het WhatsApp Client-component en stel de volgende eigenschappen in:

 

 

Na het configureren van de server kunt u de methode StartServer gebruiken om de server te starten en inkomende verzoeken te accepteren.

 


oClient := TsgcWhatsapp_Client.Create(nil);
oClient.ServerOptions.WebhookOptions.Endpoint := '/webhook';
oClient.ServerOptions.WebhookOptions.Token := 'MySecretToken';
oClient.StartServer();

Zodra uw eindpunt gereed is, gaat u naar uw App Dashboard.

 

Zoek in uw App Dashboard het WhatsApp-product op en klik op Configuration. Zoek vervolgens de webhooks-sectie en klik op Configure a webhook. Na het klikken verschijnt er een dialoogvenster op uw scherm dat u om twee items vraagt:

 

 

Na het toevoegen van de informatie klikt u op Verifiëren en opslaan.

 

Klik in het App-dashboard op WhatsApp > Configuratie in het linker paneel. Klik onder Webhooks op Beheren. Er wordt een dialoogvenster geopend met alle objecten waarover u meldingen kunt ontvangen. Om berichten van uw gebruikers te ontvangen, klikt u op Abonneren voor berichten.

 

4. Een testbericht ontvangen

 

Elke keer dat een nieuw bericht wordt ontvangen, wordt de client-gebeurtenis OnMessageReceived aangeroepen.

 


procedure OnMessageReceived(Sender: TObject; const aMessage: TsgcWhatsapp_Receive_Message; var aMarkAsRead: Boolean);
begin
  DoLog('Received: ' + aMessage.Messages._Message[0].Id);
end;

 

Nu uw Webhook is ingesteld, verzend een bericht naar het testnummer dat u hebt gebruikt. U zou onmiddellijk een Webhooks-notificatie moeten krijgen met de inhoud van uw bericht!

 

 

De WhatsApp API staat het versturen van vrije tekstberichten naar telefoonnummers die u nog niet eerder hebben gecontacteerd (binnen de laatste 24 uur) niet toe. De enige manier om een tekstbericht te sturen naar een telefoonnummer dat nog nooit uw ontwikkelaarsaccountnummer heeft berichtgestuurde, is via een sjabloon (eerder goedgekeurd door Meta). Om deze beperking voor het testen van vrije tekstberichten te omzeilen, stuur dan eerst een WhatsApp-bericht van het bestemmingsnummer naar uw ontwikkelaarsaccountnummer, en daarna kunt u 24 uur lang vrije tekstberichten sturen.

 

Gebeurtenissen

OnBeforeSendMessage

 

Deze gebeurtenis wordt aangeroepen voordat het bericht naar de WhatsApp-servers wordt verzonden. U kunt het interne bericht openen via de parameter RawMessage.

 

OnBeforeSubscribe

 

Deze gebeurtenis wordt aangeroepen voordat de server zich abonneert op een onderwerp. Gebruik de parameter Accept om het abonnement toe te staan of te weigeren. Standaard abonneert de server zich op alle aangevraagde gebeurtenissen.

 

OnRawMessage

 

Dit event wordt aangeroepen wanneer de server een nieuw bericht ontvangt dat nog niet is geparsed, zodat u toegang krijgt tot het ruwe bericht.

 

OnMessageReceived

 

Dit event wordt aangeroepen nadat de server een nieuw bericht heeft ontvangen en verwerkt. Als u de parameter MarkAsRead op True instelt, ontvangt de afzender een dubbele vinkje.

 

OnMessageSent

 

Deze gebeurtenis wordt elke keer aangeroepen wanneer de server een nieuw statusbericht ontvangt over het eerder verzonden bericht. Lees de eigenschap Status om te weten of het bericht is verzonden, afgeleverd of gelezen.