Aller au contenu

Envoyer un message WhatsApp

Résumé

  • Nom interne : SendWhatsAppMessage
  • Catégorie : Automatisation d'app
  • Objectif : Envoyer un message via l'app WhatsApp (automatise l'app elle-même - WhatsApp n'expose aucune API accessible pour un compte personnel).
  • Type de tâche : Normale

Description

Cette tâche ouvre WhatsApp avec le destinataire et le message déjà pré-remplis, via le lien officiel "click to chat" de WhatsApp (https://api.whatsapp.com/send?phone=...&text=...), puis appuie sur le bouton Envoyer via le service d'accessibilité.

Le bouton Envoyer est recherché avec deux sélecteurs essayés dans l'ordre :

  1. Un resourceId technique (com.whatsapp:id/send) - indépendant de la langue.
  2. Si ça échoue, le libellé localisé du bouton (R.string.whatsapp_send_button_label, ex. "Send" / "Envoyer") résolu automatiquement par Android selon la langue système de l'appareil.

Avant toute tentative, la tâche vérifie que WhatsApp est bien installé et lève immédiatement PACKAGE-MANAGER-ERROR-001 si ce n'est pas le cas (plutôt que de planter sur l'intent).

Ceci automatise un compte personnel - ce n'est pas l'API officielle WhatsApp Business Platform. Envoyer trop vite ou trop souvent expose le numéro à un bannissement par Meta. Garder un débit d'envoi raisonnable pour une vraie campagne.


Paramètres d'entrée

Paramètre Type Obligatoire Description Défaut
SendWhatsAppMessage_msisdn String Oui Numéro du destinataire, format international sans + (ex. 21624444943) - supporte les références $variable ""
SendWhatsAppMessage_message String Oui Corps du message à envoyer - supporte les références $variable ""

Paramètres de sortie

Cette tâche ne produit aucune variable de sortie. Elle retourne VoidResult.


Exceptions

Code Nom de l'exception Description
PACKAGE-MANAGER-ERROR-001 Package introuvable WhatsApp (com.whatsapp) n'est pas installé sur l'appareil.
SCREEN-AUTOMATOR-ERROR-010 Service d'accessibilité non connecté Le service d'accessibilité AndroMate n'est pas activé sur l'appareil.
SCREEN-AUTOMATOR-ERROR-011 Action échouée Le bouton Envoyer n'a pas pu être trouvé/cliqué (ni par resourceId ni par le libellé localisé) - généralement signe que l'UI de l'app a changé, ou que la langue de l'appareil n'est pas encore couverte par les traductions AndroMate.

Exemple

{
  "SendWhatsAppMessage": [
    {
      "id": "1",
      "title": "Envoyer message promo",
      "SendWhatsAppMessage_msisdn": "21624444943",
      "SendWhatsAppMessage_message": "Bonjour depuis AndroMate !"
    }
  ]
}