Senden und empfangen Sie Nachrichten über eine in der Cloud gehostete Version der WhatsApp Business Platform. Die Cloud API ermöglicht es Ihnen, WhatsApp Business APIs ohne die Kosten für das Hosting eigener Server zu implementieren und Ihr Business-Messaging einfacher zu skalieren. Die Cloud API unterstützt bis zu 80 Nachrichten pro Sekunde an kombiniertem Senden und Empfangen (einschließlich Text- und Mediennachrichten).
Die WhatsApp Business API ermöglicht es mittleren und großen Unternehmen, mit ihren Kunden im großen Maßstab zu kommunizieren. Mit der API können Unternehmen Systeme erstellen, die Tausende von Kunden mit Agenten oder Bots verbinden und sowohl programmgesteuerte als auch manuelle Kommunikation ermöglichen. Darüber hinaus können Sie die API in zahlreiche Backend-Systeme integrieren, etwa CRM- und Marketingplattformen.
Unternehmen erhalten alle neuen Funktionen schneller auf der Cloud API. Derzeit kommt die WhatsApp Business Cloud API mit allen Funktionen, die mit der WhatsApp Business API verfügbar sind.
Nützliche Funktionen der WhatsApp Cloud API:
Um eine erste Nachricht über eine Testnummer zu senden und zu empfangen, führen Sie die folgenden Schritte aus:
1. Developer-Assets und Plattformzugriff einrichten
Aktivieren Sie die Zwei-Faktor-Authentifizierung für Ihr Konto
Eine Meta-App erstellen: Gehen Sie zu developers.facebook.com > My Apps > Create App. Wählen Sie den Typ "Business" und folgen Sie den Anweisungen auf dem Bildschirm.
Klicken Sie im App-Dashboard auf die App, die Sie mit WhatsApp verbinden möchten. Scrollen Sie nach unten zum Produkt "WhatsApp" und klicken Sie auf Einrichten.
Als Nächstes sehen Sie die Option, einen bestehenden Business Manager auszuwählen (falls Sie einen haben), oder, falls Sie möchten, kann der Onboarding-Prozess automatisch einen für Sie erstellen (Sie können Ihr Unternehmen später bei Bedarf anpassen). Treffen Sie eine Auswahl und klicken Sie auf Continue.
Wenn Sie auf Continue klicken, führt der Onboarding-Prozess die folgenden Aktionen aus:
2. Eine Testnachricht senden
Jetzt können Sie Ihre IDE öffnen und ein neues Projekt erstellen. Legen Sie eine TsgcWhatsapp_Client-Komponente ab und füllen Sie die folgenden Eigenschaften aus:
Sobald diese 2 Eigenschaften ordnungsgemäß konfiguriert wurden, rufen Sie die Methode SendTest auf, um Ihre erste Nachricht über die Whatsapp Business Platform an eine Telefonnummer zu senden.
oClient := TsgcWhatsapp_Client.Create(nil);
oClient.WhatsappOptions.PhoneNumberId := '107809351952205';
oClient.WhatsappOptions.Token := 'EAAO4OpgZAs98BAGj3nCFGr...ZB2t8mmLB2LRXJkte2Y5PMNh2';
oClient.SendTest('34605889421');
3. Einen Webhook konfigurieren
Um benachrichtigt zu werden, wenn Sie eine Nachricht erhalten oder sich der Status einer Nachricht geändert hat, müssen Sie einen Webhooks-Endpunkt für Ihre App einrichten. Das Einrichten von Webhooks beeinflusst nicht den Status Ihrer Telefonnummer und stört nicht das Senden oder Empfangen von Nachrichten.
Zum Einstieg müssen Sie zunächst den Endpunkt erstellen; konfigurieren Sie also zuerst die Eigenschaft ServerOptions der WhatsApp-Client-Komponente und konfigurieren Sie die folgenden Eigenschaften:
Nach dem Konfigurieren des Servers können Sie die Methode StartServer verwenden, um den Server zu starten und die eingehenden Anfragen zu akzeptieren.
oClient := TsgcWhatsapp_Client.Create(nil);
oClient.ServerOptions.WebhookOptions.Endpoint := '/webhook';
oClient.ServerOptions.WebhookOptions.Token := 'MySecretToken';
oClient.StartServer();
Sobald Ihr Endpunkt bereit ist, gehen Sie zu Ihrem App-Dashboard.
Suchen Sie in Ihrem App-Dashboard das WhatsApp-Produkt und klicken Sie auf Configuration. Suchen Sie dann den Webhooks-Bereich und klicken Sie auf Configure a webhook. Nach dem Klick erscheint ein Dialog auf Ihrem Bildschirm und fragt Sie nach zwei Angaben:
Klicken Sie nach dem Hinzufügen der Informationen auf Verify and Save.
Klicken Sie zurück im App-Dashboard auf WhatsApp > Configuration im linken Bereich. Klicken Sie unter Webhooks auf Manage. Es öffnet sich ein Dialogfeld mit allen Objekten, über die Sie benachrichtigt werden können. Um Nachrichten von Ihren Benutzern zu empfangen, klicken Sie auf Subscribe für messages.
4. Eine Testnachricht empfangen
Jedes Mal, wenn eine neue Nachricht empfangen wird, wird das Client-Ereignis OnMessageReceived aufgerufen.
procedure OnMessageReceived(Sender: TObject; const aMessage: TsgcWhatsapp_Receive_Message; var aMarkAsRead: Boolean);
begin
DoLog('Received: ' + aMessage.Messages._Message[0].Id);
end;
Nachdem Ihr Webhook nun eingerichtet ist, senden Sie eine Nachricht an die von Ihnen verwendete Testnummer. Sie sollten sofort eine Webhooks-Benachrichtigung mit dem Inhalt Ihrer Nachricht erhalten!
Die WhatsApp-API erlaubt es nicht, freie Textnachrichten an Telefone zu senden, die Sie zuvor nicht kontaktiert haben (innerhalb der letzten 24 Stunden). Die einzige Möglichkeit, eine Textnachricht an ein Telefon zu senden, das Ihrer Entwicklerkonto-Nummer noch nie geschrieben hat, besteht darin, ein Template zu senden (zuvor von Meta genehmigt). Um diese Einschränkung zum Testen freier Textnachrichten zu umgehen, senden Sie zunächst eine WhatsApp-Nachricht von der Zielnummer an Ihre Entwicklerkonto-Nummer, und dann können Sie 24 Stunden lang freie Textnachrichten senden.
OnBeforeSendMessage
Dieses Ereignis wird aufgerufen, bevor die Nachricht an die WhatsApp-Server gesendet wird. Sie können über den RawMessage-Parameter auf die interne Nachricht zugreifen.
OnBeforeSubscribe
Dieses Ereignis wird aufgerufen, bevor der Server ein Topic abonniert. Verwenden Sie den Accept-Parameter, um das Abonnement zu erlauben oder zu verweigern. Standardmäßig abonniert der Server alle angeforderten Ereignisse.
OnRawMessage
Dieses Ereignis wird aufgerufen, wenn der Server eine neue Nachricht empfängt, die noch nicht geparst wurde, sodass Sie Zugriff auf die Rohnachricht erhalten.
OnMessageReceived
Dieses Ereignis wird aufgerufen, nachdem der Server eine neue Nachricht empfangen und geparst hat. Wenn Sie den Parameter MarkAsRead auf True setzen, erhält der Absender ein doppeltes Häkchen.
OnMessageSent
Dieses Ereignis wird jedes Mal aufgerufen, wenn der Server eine neue Statusnachricht über die zuvor gesendete Nachricht empfängt. Lesen Sie die Eigenschaft Status, um zu erfahren, ob die Nachricht gesendet, zugestellt oder gelesen wurde.