Ce document indique comment configurer le réseau et résoudre les éventuels problèmes.
Vous devez configurer certains paramètres réseau pour connecter le client de l’API WhatsApp Business aux serveurs WhatsApp. Si la configuration ci-dessous ne peut être mise en place dans votre entreprise, il est malheureusement impossible d’intégrer WhatsApp.
Nous comprenons que les configurations réseau et les préoccupations en matière de sécurité varient d’une entreprise à l’autre. Contactez l’assistance directe si ce document n’est pas suffisant pour votre configuration en raison d’exigences spécifiques de connectivité ou de sécurité en vigueur dans votre environnement.
L’API WhatsApp Business nécessite une connexion TCP longue durée. Des demandes seront envoyées occasionnellement afin que la connexion reste active. Néanmoins, vous devez vérifier que rien ne vient interrompre les connexions TCP longue durée (pare-feu, routeur, sécurité, etc.).
Le trafic sortant utilise deux ports :
5222
443
Ils n’écoutent pas le trafic entrant et ne sont pas utilisés pour ce dernier. Ainsi, vous pouvez toujours protéger le trafic entrant avec le pare-feu de votre entreprise.
Le port par défaut pour le client de l’API WhatsApp Business est 5222
. Si ce port n’est pas disponible, l’application se replie sur le port 443
. Le port 443
doit au moins être ouvert pour HTTPS
afin d’autoriser l’inscription et les redémarrages de l’application. Vous pouvez laisser le port 5222
fermé pendant que le port 443
est ouvert, mais pas l’inverse. Le port 5222
ne peut être ouvert pendant que le port 443
est fermé.
Nous vous recommandons d’ouvrir les deux ports et d’autoriser tous les trafics sortants.
L’API WhatsApp Business utilise deux types de protocoles :
chatd
HTTPS
WhatsApp utilise son protocole de discussion propriétaire chatd
pour échanger les informations et messages chiffrés avec les serveurs WhatsApp. Le protocole étant propriétaire, le port que vous ouvrez doit être sur une liste d’éléments autorisés pour tous les trafics sortants. Certains pare-feu et proxys interrompent les connexions hors protocole SSL, empêchant l’application de se connecter aux serveurs WhatsApp.
WhatsApp utilise HTTPS
pendant l’inscription et pour les redémarrages. Nous vous déconseillons de bloquer HTTPS
après l’inscription, car vous pouvez à tout moment être amené·e à réinscrire ou redémarrer votre application.
WhatsApp utilise un grand nombre d’adresses IP pour ses serveurs. Vous pouvez essayer d’autoriser toutes les adresses IP. Toutefois, il est préférable d’autoriser uniquement l’ensemble du trafic sortant et des connexions intervenant sur les ports ci-dessus.
Adresses IP et plages d’adresses IP de serveurs WhatsApp (fichier au format .zip)Cette liste peut être souvent mise à jour. Par conséquent, nous vous recommandons d’autoriser tout le trafic sortant des ports 5222
ou 443
afin de ne pas avoir à modifier la liste d’éléments autorisés sur votre réseau à chaque mise à jour.
À la place des adresses IP, vous pouvez utiliser les noms d’hôtes des serveurs WhatsApp pour les ajouter à votre liste d’éléments autorisés.
Le client de l’API WhatsApp Business nécessite une connexion au serveur WhatsApp via les noms d’hôtes suivants :
.*.cdn.whatsapp.net
g.whatsapp.net
graph.facebook.com
graph.whatsapp.com
media-.*.cdn.whatsapp.net
media..*.fna.whatsapp.net
mmg.whatsapp.net
pps.whatsapp.net
static.whatsapp.net
v.whatsapp.net
Vous devez également autoriser l’accès à notre référentiel dans JFrog où nous hébergeons les images des conteneurs Docker en vue de les télécharger.
Pour ajouter JFrog à votre liste d’éléments autorisés, vous devez utiliser les noms d’hôtes, car les adresses IP sont indisponibles.
Les noms d’hôtes nécessaires pour JFrog sont :
docker.whatsapp.biz
dl.bintray.com
akamai.bintray.com
En fonction de votre pare-feu et de son fonctionnement, il se peut que l’ajout de noms d’hôtes à une liste d’éléments autorisés ne fonctionne pas et que vous ayez plutôt besoin d’ajouter toutes les adresses IP à une liste d’éléments autorisés.
Exemples de comportements de pare-feu qui ne fonctionnent pas avec une liste d’éléments autorisés comprenant uniquement des noms d’hôtes :
HTTP
/HTTPS
.Si vous observez l’un de ces comportements sur votre pare-feu, utilisez les adresses IP de votre liste d’éléments autorisés.
Pour configurer les proxys réseau, définissez les variables d’environnement suivantes sur le proxy que vous utilisez, puis transmettez-les à Coreapp :
http_proxy
https_proxy
L’outil WADebug permet de vérifier rapidement si le conteneur Coreapp a accès à tous les serveurs WhatsApp requis. Lorsque WADebug est installé, il suffit d’exécuter :
wadebug partial check_network