Le seul diagnostic le plus utile
exempt_products est du trafic passant sans contrôle volontairement, et est la réponse à « pourquoi cela n’a-t-il pas été attrapé ? » que la propre politique d’aucun compte ne peut montrer.
Quatre interrupteurs, et l’ordre dans lequel ils se résolvent
Un message est vérifié seulement si les quatre l’indiquent. Ils sont listés dans l’ordre où le gateway les résout, qui est aussi l’ordre où chercher quand quelque chose n’est pas appliqué.
Les trois premiers sont des interrupteurs qu’un opérateur définit ; le quatrième est la politique elle-même.
conf.whitelist.enabled est activé par défaut, donc l’interrupteur principal est celui qui décide. Un listener doit opter out. Il existe parce que les clients sont rarement tous sur un seul listener : un listener de trafic enregistré peut appliquer alors qu’un interne ou de test ne le fait pas, sans que ce soit une propriété de chaque compte.Il ne s’applique qu’à SMPP. L’ingress HTTP n’a pas de listener à quoi l’accrocher, donc utilisez le produit ou le compte là.Rapporter avant d’appliquer
Chacun deheader_mode et content_mode est OFF, REPORT ou ENFORCE. REPORT est la raison pour laquelle ceci n’est pas un booléen.
1
Approuver ce que vous connaissez déjà
Les sender IDs et templates du compte, ou d’un produit qui est vérifié. Voir Sender IDs et Templates de contenu.
2
Passer le compte à REPORT
Chaque message est vérifié, journalisé comme
message.wouldReject en INFO, et envoyé quand même. Rien n’est refusé.3
Lire report_only_would_reject
Il compte ce que
ENFORCE aurait refusé, et c’est le nombre à surveiller. Laissez-le tourner assez longtemps pour couvrir les jours calmes du client. Un template utilisé une fois par mois est invisible en un après-midi.4
Approuver ce que le journal nomme, et seulement alors appliquer
headerNotApproved et templateNotMatched nomment ce qui n’allait pas, et le compte auquel cela appartient.Appliquer avec rien d’approuvé
Le control panel refuse l’enregistrement qui le créerait, compté comme le gateway compte. Deux choses font que c’est plus qu’une somme :- Les produits exempts ne protègent rien. Un produit avec
whitelist_enabled = falsese résout àOFFavant toute fusion, donc une approbation classée dessous est stockée et jamais consultée. La compter laisserait passer un compte dont toutes les approbations sont inertes. Créant exactement la panne que le garde-fou existe pour empêcher. - Le trafic sans produit est servi par la portée compte seule. Aucune approbation à portée de produit ne peut jamais l’atteindre. Donc un
ENFORCEau niveau compte avec une liste de compte vide arrête chaque login dont le login ne nomme aucun produit, quel que soit le nombre d’approbations de produit qui existent.
Approuvé n’est pas la même chose qu’accepté
À quoi ressemble un refus
Sur HTTP, 403 et un message nommant ce qui n’allait pas :submit_sm est rejeté plutôt qu’accepté puis supprimé, donc le propre client du client voit l’échec au moment de la soumission au lieu de le déduire d’un accusé qui n’arrive jamais. Voir Codes de statut.
Chaque refus est journalisé avec une raison. headerNotApproved, templateNotMatched. Et le compte auquel il appartient. En mode REPORT la même ligne apparaît comme message.wouldReject en INFO et le message sort.
Approuver n’a pas besoin de reconnexion
La whitelist est relue lors du sondage de configuration et chaque snapshot porte une génération, donc une session SMPP bindée depuis des semaines récupère un sender ID nouvellement approuvé sans se reconnecter. Ce qui compte parce que le client dont le trafic est refusé est généralement au téléphone pendant qu’on l’approuve.Référence whitelisting
Chaque propriété, les trois modes de tamponnage, et le contrôle obligatoire par vendeur.
Produits
Exemptions, et pourquoi un produit inconnu est vérifié plutôt que laissé passer.