Ab sgcWebSockets 2022.6.0 wird die WhatsApp Cloud API für .NET unterstützt.
Sende und empfange Nachrichten über eine cloud-gehostete Version der WhatsApp Business Platform. Die Cloud API erlaubt es dir, die WhatsApp Business APIs zu nutzen, ohne die Kosten für das Hosting eigener Server zu tragen, und ermöglicht zudem ein einfacheres Skalieren deiner Business-Kommunikation. Die Cloud API unterstützt bis zu 80 Nachrichten pro Sekunde an kombiniertem Senden und Empfangen (einschließlich Text- und Medien-Nachrichten).
Die WhatsApp Business API erlaubt mittleren und großen Unternehmen, mit ihren Kunden im großen Maßstab zu kommunizieren. Mit der API können Unternehmen Systeme bauen, die Tausende von Kunden mit Mitarbeitern oder Bots verbinden, sowohl programmatisch als auch manuell. Außerdem kannst du die API in zahlreiche Backend-Systeme wie CRM- und Marketing-Plattformen integrieren.
Funktionen
Unternehmen erhalten neue Funktionen schneller in der Cloud API. Aktuell bietet die WhatsApp Business Cloud API alle Funktionen, die auch die WhatsApp Business API mitbringt.
Nützliche Funktionen der WhatsApp Cloud API:
- Integration von WhatsApp-Messaging mit Tools wie CRM, Analytics und Drittanbieter-Apps
- Green Tick, verifiziertes WhatsApp-Business-Profil
- WhatsApp-Broadcast & Massen-Messaging
- Keine eigene App oder Oberfläche; Nutzung über BSPs oder CRM
- WhatsApp-Chatbot & Chat-Automatisierung mit Drittanbieter-Apps
- Planung von WhatsApp-Nachrichten im großen Stil
- Funktionen für interaktives Messaging umfassen List-Messages, Antwort-Buttons und CTA-Messages
Loslegen
Um über eine Testnummer eine erste Nachricht zu senden und zu empfangen, gehe folgendermaßen vor:
1. Developer-Assets und Plattformzugang einrichten
- Als Meta Developer registrieren
- Zwei-Faktor-Authentifizierung für dein Konto aktivieren
- Eine Meta-App anlegen: Gehe zu developers.facebook.com > My Apps > Create App. Wähle den Typ "Business" und folge den Anweisungen auf dem Bildschirm.
Klicke im App-Dashboard auf die App, die du mit WhatsApp verbinden möchtest. Scrolle nach unten zum Produkt "WhatsApp" und klicke auf Set up.
Anschließend siehst du die Option, einen vorhandenen Business Manager auszuwählen (falls du einen hast), oder der Onboarding-Prozess legt für dich automatisch einen an (du kannst dein Business später bei Bedarf anpassen). Triff eine Auswahl und klicke auf Continue.
Wenn du auf Continue klickst, führt der Onboarding-Prozess folgende Aktionen aus:
- Deine App wird mit dem ausgewählten oder automatisch angelegten Business Manager verknüpft.
- Deinem Business wird eine WhatsApp-Test-Telefonnummer hinzugefügt. Mit dieser Test-Telefonnummer kannst du die WhatsApp Business Platform erkunden, ohne eine echte Telefonnummer zu registrieren oder zu migrieren. Test-Telefonnummern können unbegrenzt Nachrichten an bis zu 5 Empfänger weltweit senden.
2. Eine Testnachricht senden
Öffne nun deine IDE und lege ein neues Projekt an. Lege eine TsgcWhatsapp_Client-Komponente ab und fülle folgende Eigenschaften:
- WhatsappOptions.PhoneNumberId: ist die ID der Telefonnummer, die zum Senden von Nachrichten verwendet wird.
- WhatsappOptions.Token: ist das temporäre Access-Token, das 24 Stunden gültig ist.
Sobald diese 2 Eigenschaften richtig konfiguriert sind, rufe die Methode SendTest auf, um deine erste Nachricht an eine Telefonnummer über die WhatsApp Business Platform zu senden.
TsgcWhatsapp_Client oClient = new TsgcWhatsapp_Client();
oClient.WhatsappOptions.PhoneNumberId = "107809351952205";
oClient.WhatsappOptions.Token = "EAAO4OpgZAs98BAGj3nCFGr...ZB2t8mmLB2LRXJkte2Y5PMNh2";
oClient.SendTest("34605889421");
3. Einen Webhook konfigurieren
Damit du benachrichtigt wirst, wenn du eine Nachricht erhältst oder sich der Status einer Nachricht ändert, musst du einen Webhooks-Endpunkt für deine App einrichten. Das Einrichten von Webhooks beeinflusst den Status deiner Telefonnummer nicht und stört das Senden oder Empfangen von Nachrichten nicht.
Zum Loslegen musst du zuerst den Endpunkt anlegen. Konfiguriere also als Erstes die Eigenschaft ServerOptions der WhatsApp-Client-Komponente sowie folgende Eigenschaften:
- ServerOptions: hier kannst du die zu bindende IP-Adresse, den Listening-Port und konfigurieren, ob SSL verwendet wird (der Webhook muss auf einem sicheren Server laufen; du kannst deinen Server für SSL konfigurieren oder die Webhook-Anfragen an einen Nicht-HTTPS-Server proxen). Der Server basiert auf TsgcWebSocketHTTPServer.
- WebhookOptions: über diese Eigenschaft kannst du die Webhook-Einstellungen festlegen, die später in deinem Facebook-Developer-Konto konfiguriert werden.
- Endpoint: der Name des Endpunkts, standardmäßig /webhook. Beispiel: wenn dein Server auf https://www.esegece.com lauscht, lautet der Endpunkt "https://www.esegece.com/webhook"
- Token: eine Sicherheitszeichenfolge, die einen beliebigen, von dir festgelegten Wert enthalten kann. Sie dient dazu, die Webhook-Registrierung zu verifizieren.
- WebhookOptions: über diese Eigenschaft kannst du die Webhook-Einstellungen festlegen, die später in deinem Facebook-Developer-Konto konfiguriert werden.
Nachdem du den Server konfiguriert hast, kannst du mit der Methode StartServer den Server starten und eingehende Anfragen entgegennehmen.
TsgcWhatsapp_Client oClient = TsgcWhatsapp_Client.Create(); oClient.ServerOptions.WebhookOptions.Endpoint = "/webhook"; oClient.ServerOptions.WebhookOptions.Token = "MySecretToken"; oClient.StartServer();
Sobald dein Endpunkt bereit ist, gehe in dein App-Dashboard.
Suche im App-Dashboard das Produkt WhatsApp und klicke auf Configuration. Suche dann den Webhooks-Bereich und klicke auf Configure a webhook. Nach dem Klick erscheint ein Dialog, der dich nach zwei Angaben fragt:
- Callback URL: die URL, an die Meta die Ereignisse sendet.
- Verify Token: diese Zeichenfolge legst du beim Erstellen deines Webhook-Endpunkts selbst fest.
Nachdem du die Daten eingetragen hast, klicke auf Verify and Save.
Klicke zurück im App-Dashboard im linken Bereich auf WhatsApp > Configuration. Klicke unter Webhooks auf Manage. Es öffnet sich ein Dialog mit allen Objekten, zu denen du benachrichtigt werden kannst. Um Nachrichten von deinen Nutzern zu erhalten, klicke bei messages auf Subscribe.
4. Eine Testnachricht empfangen
Jedes Mal, wenn eine neue Nachricht eintrifft, wird das Client-Ereignis OnMessageReceived aufgerufen.
void OnWhatsAppMessageReceived(TsgcWhatsApp_Client Sender, TsgcWhatsApp_Receive_Message Message, ref bool MarkAsRead)
{
DoLog("Message Received: [" + Message.From + "] " + Message.Text);
MarkAsRead = true;
}
Nachdem dein Webhook eingerichtet ist, sende eine Nachricht an die verwendete Testnummer. Du solltest sofort eine Webhooks-Benachrichtigung mit dem Inhalt deiner Nachricht erhalten!
Unten findest du eine öffentliche Online-WhatsApp-Bot-Demo – sende einfach irgendeine Textnachricht, um zu starten.
WhatsApp Bot
Erstellt mit der sgcWebSockets-Bibliothek. Sende eine beliebige Textnachricht; der Bot zeigt eine Liste von Optionen an oder schickt deine Nachricht als Echo zurück. https://www.esegece.com/demo/whatsappUnten findest du die kompilierte WhatsApp-Demo für Windows.
