Depuis sgcWebSockets 2022.6.0, l'API WhatsApp Cloud est prise en charge pour .NET.
Envoie et reçois des messages via une version hébergée dans le cloud de la WhatsApp Business Platform. L'API Cloud te permet d'implémenter les APIs WhatsApp Business sans le coût d'hébergement de tes propres serveurs et te permet aussi de mettre à l'échelle plus facilement ta messagerie professionnelle. L'API Cloud prend en charge jusqu'à 80 messages par seconde en envoi et réception combinés (y compris les messages texte et média).
L'API WhatsApp Business permet aux entreprises moyennes et grandes de communiquer avec leurs clients à grande échelle. Avec l'API, les entreprises peuvent construire des systèmes qui connectent des milliers de clients à des agents ou des bots, permettant à la fois la communication programmatique et manuelle. De plus, tu peux intégrer l'API avec de nombreux systèmes backend, comme les plateformes CRM et marketing.
Fonctionnalités
Les entreprises obtiendront toutes les nouvelles fonctionnalités plus rapidement sur l'API Cloud. Actuellement, l'API WhatsApp Business Cloud comprend toutes les fonctionnalités disponibles avec l'API WhatsApp Business.
Fonctionnalités utiles de l'API WhatsApp Cloud :
- Intègre la messagerie WhatsApp avec des outils comme les CRM, l'analytics et les applis tierces
- Coche verte, profil WhatsApp Business vérifié
- Broadcast WhatsApp & envoi en masse
- Pas d'appli ni d'interface, utilise via les BSP ou CRM
- Chatbot WhatsApp & automatisation de chat via des applis tierces
- Planifie des messages WhatsApp à grande échelle
- Les fonctionnalités de messagerie interactive incluent les messages liste, boutons de réponse, messages CTA
Premiers pas
Pour envoyer et recevoir un premier message via un numéro de test, suis les étapes ci-dessous :
1. Configure les ressources développeur et l'accès à la plateforme
- Register as a Meta Developer
- Enable two-factor authentication for your account
- Create a Meta App: Go to developers.facebook.com > My Apps > Create App. Select the "Business" type and follow the prompts on your screen.
Depuis l'App Dashboard, clique sur l'appli que tu souhaites connecter à WhatsApp. Fais défiler jusqu'au produit « WhatsApp » et clique sur Configurer.
Ensuite, tu verras l'option de sélectionner un Business Manager existant (si tu en as un) ou, si tu le souhaites, le processus d'onboarding peut en créer un automatiquement pour toi (tu peux personnaliser ton entreprise plus tard, si nécessaire). Fais une sélection et clique sur Continuer.
Quand tu cliques sur Continuer, le processus d'onboarding effectue les actions suivantes :
- Ton appli est associée au Business Manager que tu as choisi ou qui a été créé automatiquement.
- Un numéro de téléphone de test WhatsApp est ajouté à ton entreprise. Tu peux utiliser ce numéro de test pour explorer la WhatsApp Business Platform sans enregistrer ni migrer un vrai numéro de téléphone. Les numéros de test peuvent envoyer un nombre illimité de messages à jusqu'à 5 destinataires (n'importe où dans le monde).
2. Envoie un message de test
Maintenant, tu peux ouvrir ton IDE et créer un nouveau projet. Pose un composant TsgcWhatsapp_Client et remplis les propriétés suivantes :
- WhatsappOptions.PhoneNumberId : l'ID du numéro de téléphone utilisé pour envoyer des messages.
- WhatsappOptions.Token : le jeton d'accès temporaire valide 24 heures.
Une fois ces 2 propriétés correctement configurées, appelle la méthode SendTest pour envoyer ton premier message à un numéro de téléphone via la WhatsApp Business Platform.
TsgcWhatsapp_Client oClient = new TsgcWhatsapp_Client();
oClient.WhatsappOptions.PhoneNumberId = "107809351952205";
oClient.WhatsappOptions.Token = "EAAO4OpgZAs98BAGj3nCFGr...ZB2t8mmLB2LRXJkte2Y5PMNh2";
oClient.SendTest("34605889421");
3. Configure un webhook
Pour être alerté quand tu reçois un message ou quand le statut d'un message a changé, tu dois configurer un endpoint Webhooks pour ton appli. Configurer des Webhooks n'affecte pas le statut de ton numéro de téléphone et n'interfère pas avec l'envoi ou la réception de messages.
Pour commencer, tu dois d'abord créer l'endpoint, donc configure d'abord la propriété ServerOptions du composant client WhatsApp et configure les propriétés suivantes :
- ServerOptions: here you can configure the IP Address to bind, the Listening Port, if it's using SSL (the WebHook must run in a secure server, you can configure your server to use SSL or Proxy the WebHook requests to a none HTTPs server). The server is based on TsgcWebSocketHTTPServer.
- WebhookOptions: this property allows to set the Webhook properties that later will be configured in your developer facebook account.
- Endpoint: it's the name of the endpoint, by default is /webhook. Example: if your server is listening on https://www.esegece.com, the endpoint will be "https://www.esegece.com/webhook"
- Token: it's a security string that can contain any value defined by you. It's used to verify the Webhook registration is correct.
- WebhookOptions: this property allows to set the Webhook properties that later will be configured in your developer facebook account.
Après avoir configuré le serveur, tu peux utiliser la méthode StartServer pour démarrer le serveur et accepter les requêtes entrantes.
TsgcWhatsapp_Client oClient = TsgcWhatsapp_Client.Create(); oClient.ServerOptions.WebhookOptions.Endpoint = "/webhook"; oClient.ServerOptions.WebhookOptions.Token = "MySecretToken"; oClient.StartServer();
Une fois ton endpoint prêt, va dans ton App Dashboard.
Dans ton App Dashboard, trouve le produit WhatsApp et clique sur Configuration. Ensuite, trouve la section webhooks et clique sur Configurer un webhook. Après le clic, une boîte de dialogue apparaît sur ton écran et te demande deux éléments :
- URL de callback : l'URL à laquelle Meta enverra les événements.
- Verify Token : une chaîne définie par toi quand tu crées ton endpoint webhook.
Après avoir ajouté les informations, clique sur Vérifier et enregistrer.
De retour dans l'App Dashboard, clique sur WhatsApp > Configuration dans le panneau latéral gauche. Sous Webhooks, clique sur Gérer. Une boîte de dialogue s'ouvrira avec tous les objets sur lesquels tu peux être notifié. Pour recevoir des messages de tes utilisateurs, clique sur S'abonner pour les messages.
4. Recevoir un message de test
Chaque fois qu'un nouveau message est reçu, l'événement client OnMessageReceived sera appelé.
void OnWhatsAppMessageReceived(TsgcWhatsApp_Client Sender, TsgcWhatsApp_Receive_Message Message, ref bool MarkAsRead)
{
DoLog("Message Received: [" + Message.From + "] " + Message.Text);
MarkAsRead = true;
}
Maintenant que ton webhook est configuré, envoie un message au numéro de test que tu as utilisé. Tu devrais immédiatement recevoir une notification Webhooks avec le contenu de ton message !
Voici une démo de bot WhatsApp publique en ligne, il te suffit d'envoyer n'importe quel message texte pour commencer.
Bot WhatsApp
Construit avec la bibliothèque sgcWebSockets, envoie n'importe quel message texte et le bot affichera une liste d'options ou te renverra ton message texte en écho. https://www.esegece.com/demo/whatsappVoici la démo WhatsApp compilée pour Windows.
