Construisez votre application

Si vous choisissez d’écrire votre propre intégration, voici quelques points à garder à l’esprit :

  1. Pour interagir correctement avec l’API Akismet, votre application doit permettre aux utilisateurs de soumettre des spams manqués et des faux positifs, en plus de réaliser des vérifications de commentaires.
  2. Plus vous envoyez de données avec chaque vérification de commentaire, plus Akismet a de chances d’éviter les spams manqués et les faux positifs.

Structurer vos appels à l’API

Tous les appels à Akismet sont des requêtes POST, tout comme un formulaire web. Les variables de requête doivent être construites comme une chaîne de requête : clé=valeur et plusieurs variables séparées par des esperluettes. N’oubliez pas d’encoder les valeurs en URL.

Types d’appels à l’API

Il existe trois types d’appels à Akismet :

  1. La vérification de clé permet de vérifier si une clé API valide est utilisée. C’est particulièrement utile si vous avez plusieurs utilisateurs avec leurs propres abonnements Akismet utilisant votre application.
  2. La vérification de commentaire permet de demander à Akismet si un article, un commentaire, un profil, etc. est un spam ou non.
  3. Soumettre un spam et soumettre un non indésirable sont des suivis pour informer Akismet lorsqu’il y a une erreur (spam manqué et faux positifs). Ces informations sont très importantes et vous ne devriez pas développer à l’aide de l’API Akismet sans avoir la possibilité de signaler les spams manqués et les faux positifs.

Tester vos appels à l’API

Akismet fonctionne en examinant toutes les informations disponibles. Il ne suffit pas de fournir uniquement le contenu d’un message ; vous devez fournir autant d’informations indépendantes que possible dans chaque appel. Avant de pouvoir tester l’exactitude d’Akismet, vous devez vous assurer d’envoyer des informations complètes et correctes.

Pour simuler un résultat positif (spam), effectuez un appel à l’API de vérification de commentaire avec le paramètre comment_author défini sur akismet‑guaranteed‑spam ou le paramètre comment_author_email défini sur akismet-guaranteed-spam@example.com. Remplissez tous les autres champs obligatoires avec des valeurs typiques. L’API Akismet renverra toujours une réponse true à une demande valide avec l’une de ces valeurs. Si vous recevez autre chose, il y a un problème dans votre client, vos données ou vos communications.

Pour simuler un résultat négatif (non spam), effectuez un appel à l’API de vérification de commentaire avec le paramètre user_role défini sur administrateur et tous les autres champs obligatoires remplis avec des valeurs typiques. L’API Akismet renverra toujours une réponse false. Toute autre réponse indique un problème de données ou de communication.

Assurez‑vous également que votre client gère une réponse inattendue. Ne supposez pas que l’API de vérification de commentaire renverra toujours soit true soit false. Une demande invalide peut entraîner une réponse d’erreur ; des informations supplémentaires seront généralement disponibles dans les en‑têtes HTTP. Et bien sûr, un problème de connectivité peut entraîner l’absence de réponse. Il est important de ne pas interpréter une réponse invalide comme signifiant spam ou non indésirable.

Pour les tests automatisés, incluez le paramètre is_test=1. Cela indiquera à Akismet de ne pas modifier son comportement en fonction de ces appels à l’API – ils n’auront aucun effet d’apprentissage. Cela signifie que vos tests seront quelque peu reproductibles, dans le sens où un test n’influencera pas les appels ultérieurs.

Définir votre agent utilisateur

Si possible, votre chaîne d’agent utilisateur doit toujours utiliser le format suivant :

Nom de l'application/Version | Nom du plugin/Version

La chaîne d’agent utilisateur du plugin Akismet pour WordPress ressemblerait à ceci :

WordPress/4.4.1 | Akismet/3.1.7