Documentation menu

Bloc Sondage

Une question d'enquête en un tap : chaque option est à la fois un vrai contrôle dans l'email et un simple lien. Le vote fonctionne partout, de Gmail web au client le plus dépouillé en texte seul, sans demander au destinataire de quitter sa boîte de réception dans la plupart des cas.

Comment ça fonctionne

Chaque option de sondage se rend avec deux représentations à la fois, pas une seule choisie à la conception. Partout où un client prend en charge les soumissions de formulaire dans l'email (Gmail web/Android, Yahoo, et d'autres), chaque option est un vrai <form method="post"> qui soumet directement vers l'endpoint public d'interactions de MailInApp, de sorte que toucher l'option vote sans quitter la boîte de réception. Ce formulaire est enveloppé dans un niveau cinétique uniquement et associé à une règle CSS qui masque la seconde représentation : un simple lien <a href> vers /v/[token]/act qui confirme et enregistre le même vote sur une page hébergée.

Partout où cette règle CSS n'est pas respectée (Outlook, ou tout client incapable de soumettre un formulaire dans l'email), ce lien caché devient visible à la place et fait le travail. Un simple lien est l'unique primitive universelle que tout client de messagerie peut rendre et suivre. Les deux chemins soumettent vers le même endpoint d'enregistrement et produisent un événement identique, donc les résultats ne divergent jamais selon le client utilisé par le destinataire.

Un vote est enregistré une fois que vous êtes confirmé sur la page en direct (ou immédiatement lors d'une soumission dans l'email) — jamais lors d'une simple récupération de lien. C'est important, car les scanners d'entreprise et les outils de sécurité de boîte de réception préchargent chaque lien d'un email dès son arrivée ; si une simple requête GET comptait, les résultats de sondage se rempliraient de robots avant même qu'un humain n'ouvre le message. La confirmation se fait via une soumission de formulaire même sur le chemin du lien, ce qui explique pourquoi /v/[token]/act est une confirmation en deux temps plutôt qu'une redirection-et-enregistrement.

Le propre vote d'un destinataire est dédupliqué. Recliquer sur son propre lien (un double tap précipité, un rechargement de page raté) est sans effet plutôt qu'une seconde ligne, grâce à un identifiant de document Firestore déterministe basé sur la campagne, le bloc et le destinataire. Les votes anonymes (sans jeton de destinataire — par exemple depuis un fichier HTML exporté collé dans un ESP tiers) ne sont pas dédupliqués par personne ; il n'y a personne sur qui s'appuyer. Ils sont à la place limités en fréquence par IP, par campagne, par minute, puisque l'identifiant d'une campagne est visible dans le code source de l'email lui-même et que rien d'autre n'empêche un script de soumettre des votes arbitraires.

Champs configurables :

  • Question — le texte de l'invite du sondage, plus sa propre couleur et sa propre taille de police.
  • Couleur de fond, marge intérieure, bordure et rayon de bordure sur la carte.
  • Couleur du texte des options et couleur de fond des options — une surcharge de style partagée appliquée à chaque option.

Chaque option de sondage est un nœud enfant avec un seul champ libellé — ajoutez, supprimez ou réorganisez les options librement dans l'arborescence.

Si le projet a une date de clôture ou un plafond de réponses configuré (voir cycle de vie de l'enquête) et qu'il a été atteint, la vue en direct remplace les puces interactives par des équivalents inertes et grisés, accompagnés d'une note « Cette enquête n'accepte plus de nouvelles réponses ». Le HTML envoyé lui-même ne montre jamais cet état — il est statique au moment de l'envoi, et la vérification n'a lieu que lorsque la page est ouverte, pas quand l'email est envoyé.

Exemples

Subject

Quick one: what should we build next?

Un sondage à question unique (« Quelle fonctionnalité devrions-nous construire ensuite ? ») déposé dans une infolettre produit donne une lecture directe de l'intérêt sans la lourdeur d'un formulaire complet. Voir Enquêtes et retours NPS pour le modèle plus large de collecte de retours structurés directement depuis une boîte de réception. Un email de récapitulatif d'événement peut demander « Reviendriez-vous à un autre ? » avec des options Oui/Non/Peut-être, alimentant directement la planification du suivant. Des équipes indécises en A/B peuvent utiliser un sondage comme un vote interne léger (« Logo A ou Logo B ? ») envoyé aux parties prenantes, avec les résultats visibles en direct sur la page de résultats à mesure qu'ils arrivent.

À quoi ressemble l'alternative statique

<div id="em-poll-1" style="margin:12px 0;background-color:transparent">
  <p style="margin:0 0 10px;font-weight:600;font-size:16px;color:#111827">Which do you prefer?</p>
  <div>
    <span class="kn-fallback">
      <a href="https://mailinapp.com/v/eyJhbGci.../act?blockId=poll-1&blockType=poll&action=vote&option=Option+A"
         style="display:inline-block;margin:0 6px 6px 0;padding:8px 14px;border:1px solid #d1d5db;border-radius:6px;background-color:#ffffff;color:#111827;font-size:14px;text-decoration:none">
        Option A
      </a>
    </span>
  </div>
</div>

C'est le chemin de niveau 2 par lien : un simple <a> vers /v/[token]/act, stylé pour ressembler à la même option que rend le formulaire cinétique dans l'email — visible seulement quand le formulaire cinétique est masqué par CSS.

Voir aussi