Heures de silence : portails de canal à l’échelle de l’organisation vs. la fenêtre de secours de campagne
Le portail d’heures de silence d’Orbit appartient au locataire : tout ce qui figure sur cette page est un contrôle que vous configurez (ou choisissez de laisser désactivé). La seule exception est la fenêtre fédérale TCPA de voix pour les destinataires américains, traitée dans sa propre section ci-dessous. L’activation des heures de silence est votre décision — rien ici n’est exigé par CAN-SPAM ou le RGPD. Cette page est le manuel d’exploitation de ce portail. Trois surfaces composent votre posture :- Le portail de canal à l’échelle de l’organisation — des
commutateurs par canal dans les paramètres de l’organisation
(
settings → quiet_hours.<channel>.enabled), écrits viaPUT /api/v1/settings/generalet reflétés dans les paramètres de l’organisation du tableau de bord (voir aussi Posture de conformité). - La fenêtre de secours de campagne — une seule paire début/fin à
l’échelle de l’organisation pour les envois drip et journey dont la
ligne de campagne ne porte pas de fenêtre explicite. Dans le tableau
de bord : Paramètres → Limites de campagne → Heures de silence par
défaut ; via l’API :
GET/PUT /api/v1/campaigns/quiet-hours/settings. - Le point de terminaison de prévisualisation —
GET /api/v1/compliance/quiet-hours/preview, une vérification en lecture seule qui répond : « cet envoi vers ce destinataire passerait-il maintenant ? ». Exécutez-la avant chaque déploiement ; elle est traitée dans le manuel ci-dessous.
Les deux fenêtres
Le secours de campagne est exactement ce que son nom dit — un secours,
pas un second portail. Ordre de résolution pour un envoi de campagne :
d’abord la fenêtre propre de la ligne de campagne, puis le secours de
l’organisation, puis le défaut de la plateforme 21:00 → 09:00 (les heures
de silence s’étendent de 21 h à 9 h, heure locale du destinataire).
Les deux réglages peuvent diverger. Un envoi diffusé par campagne évalue
la fenêtre du chemin de campagne comme une couche ; le portail de canal de
l’organisation — lorsque vous avez activé ce canal — est une couche
séparée évaluée au point d’envoi. Traitez le portail de l’organisation
comme la posture pour le trafic 1:1 et le secours de campagne comme le
régime par défaut pour le trafic en masse. Un envoi bloqué rapporte
next_allowed_at — planifiez autour de la fenêtre plutôt que de réessayer.
Les secours que vous pouvez fixer à l’une ou l’autre des couches ne
peuvent que resserrer l’enveloppe ; ils n’élargissent jamais un
portail de canal que vous avez activé.
Portail par canal à l’échelle de l’organisation
Le portail de canal est opt-in par canal. Chaque entrée par canal prend en charge :
Clés à l’échelle de l’organisation (s’appliquent à tous les canaux
ensemble) :
Posture par défaut par canal
Tant que vous n’activez pas un canal, rien n’est retenu. Quand vous activez un canal sans préciser d’heures, les heures de la plateforme entrent en vigueur :
L’ensemble complet des canaux acceptés par le portail :
sms, mms,
whatsapp, rcs, viber, telegram, voice, email, instagram,
messenger, line, apple_messages, fax, push, web_chat.
Deux exceptions qui maintiennent le trafic essentiel en circulation
- Consentement exprès préalable — avec
consent_overrides_quiet_hoursàtrue(défaut), un destinataire disposant d’un registre de consentement explicite franchit tout canal non vocal. La voix ne prend jamais cette exception. - Voie de trafic transactionnel — les envois que l’appelant marque comme transactionnels (OTP, alertes, notifications de compte) sont exemptés du portail même sur un canal activé. La voix ne prend jamais cette exception non plus.
consent_overrides_quiet_hours à false uniquement si vous
voulez des envois arrêtés sans exceptions de consentement.
Fenêtre de secours de campagne
Tout appelant authentifié la lit ; seul le propriétaire/administrateur l’écrit. Lisez la fenêtre de secours actuelle :platform_default_start / platform_default_end renvoient les heures que
les envois drip et journey utilisent tant que la substitution est
désactivée — héritez-les ou remplacez-les, à vous de choisir. Dans le
tableau de bord, ce formulaire se trouve sous Paramètres → Limites de
campagne → Heures de silence par défaut. Fixez votre propre fenêtre (les
deux heures sont requises quand enabled vaut true) :
22, fin 7) sont acceptées aux
deux couches — une paire start > end traverse minuit.
Résolution du fuseau horaire du destinataire
Le portail travaille en heure locale du destinataire. La résolution du fuseau horaire suit cette chaîne :- Une indication explicite
recipientTimezonede l’appelant, lorsqu’elle est fournie. - Indicatif de zone des États-Unis → fuseau horaire IANA, pour les numéros +1.
- Code pays E.164 → un fuseau horaire IANA représentatif (Europe, Asie, Amériques et marchés opérateurs courants).
- Pour les destinataires e-mail, le fuseau horaire par défaut de l’organisation.
- Quand rien de tout cela ne se résout — la
unknown_timezone_policyde l’organisation (également configurable dans le tableau de bord sous Paramètres → Voix) :
Si le destinataire se résout bien en un fuseau horaire, un blocage normal
de canal activé renvoie
422 QUIET_HOURS_BLOCKED (voix :
TCPA_DIALING_WINDOW_BLOCKED) avec la fenêtre et next_allowed_at dans
le détail de l’erreur.
Exception fédérale TCPA de voix
La voix de campagne et de composeur vers des destinataires américains est bloquée de façon stricte en dehors de la fenêtre fédérale 8 h – 21 h heure locale du destinataire — aucun portail d’organisation, fenêtre de secours ou drapeau de consentement ne la desserre, et un destinataire américain dont le fuseau horaire ne peut pas être résolu est bloqué en fail-closed. C’est le seul réglage que la plateforme possède ; il s’applique uniquement à la voix de campagne et de composeur, pas aux appels 1:1 ad hoc ni à aucun canal de messagerie. Les destinataires non américains jouent selon le portail ordinaire : la politiqueskip fail-open s’applique aux destinataires hors juridiction
américaine, et votre propre portail du canal de voix (s’il est activé)
s’ajoute par-dessus. Vous pouvez toujours resserrer au-delà de la fenêtre
fédérale — par exemple un portail de voix de 09:00–20:00 heure locale du
destinataire — mais jamais l’élargir.
La voix 1:1 ad hoc depuis le tableau de bord en dehors de la fenêtre
fédérale compose avec un journal de notification, sauf si vous avez activé
le canal voice sur le portail de l’organisation, ce qui en fait une
retenue stricte (422 TCPA_DIALING_WINDOW_BLOCKED).
Le consentement prime sur les heures de silence
Avecconsent_overrides_quiet_hours: true (défaut), un destinataire pour
lequel vous détenez un consentement explicite franchit le portail sur les
canaux non vocaux — l’exception TCPA « prior express consent ». Un
destinataire autorisé reste joignable pendant vos heures fermées ; un
contact sans registre de consentement est retenu jusqu’à l’ouverture de la
fenêtre.
Mettez-le à false quand le consentement ne doit jamais desserrer votre
fenêtre. Le portail ignore entièrement le drapeau sur le canal voice —
la voix dépend de la fenêtre fédérale et des superpositions étatiques, pas
de l’exception de consentement.
Superpositions étatiques mini-TCPA
Certains États américains superposent une fenêtre d’appel plus stricte ou une interdiction de jour de la semaine aux heures fédérales (l’interdiction du dimanche en Floride, les fenêtres de l’Oklahoma/Mississippi et autres). Les superpositions se composent selon le plus restrictif gagne : un envoi doit franchir la fenêtre fédérale et chaque superposition étatique applicable ; la superposition peut resserrer mais jamais élargir. Les blocages de voix se retracent avec ces motifs d’échec :outside_state_window— une superposition étatique a resserré la fenêtre et cette heure est tombée en dehors.state_blocked_day— la superposition interdit entièrement de composer ce jour de la semaine.
Manuel d’exploitation
Liste de contrôle de déploiement. Avant d’activer un canal ou de pousser une liste large :- Prévisualisez un échantillon de destinataires avec
GET /api/v1/compliance/quiet-hours/preview?phone=<E.164>&channel=<channel>, en ajoutanttimezone_override=<IANA>uniquement quand votre CRM fournit une meilleure indication que celle que le numéro résout. - Confirmez le bloc du portail de l’organisation :
GET /api/v1/settings/generalet lisez l’arborescencequiet_hoursavant lePUT— les écritures fusionnent au niveau supérieur, mais la cléquiet_hourselle-même est remplacée en gros (voir la section écriture ci-dessous). - Pour les déploiements en masse, surveillez
GET /api/v1/settings/compliance-health— ses avertissements classent le pire contrevenant (expéditeur le plus retenu, groupes d’erreurs) pour que vous corrigiez d’abord la voie la plus bruyante.
422 QUIET_HOURS_BLOCKED avec next_allowed_at
dans le détail de l’erreur — planifiez à ce timestamp plutôt que de
réessayer dans une boucle. Un envoi retenu ne consomme jamais de quota ni
de réservation de créneau, de sorte que les réessais se readmettent
proprement une fois la fenêtre ouverte.
Les écritures mettent jusqu’à environ une minute pour atteindre chaque
point d’envoi — les paramètres de l’organisation sont mis en cache
brièvement sur le chemin d’envoi. Les lectures sont immédiates ; vérifiez
la posture fusionnée avec un GET avant de déployer.
Exemples déroulés
Déploiement en masse à 21:05 — comportement de la file de retenue
Vous poussez une liste de 1 000 destinataires via l’API au moment où une fraction de votre liste se situe en dehors de votre portail d’organisation 08:00–21:00 heure locale du destinataire. Chaque destinataire se résout indépendamment contre votre portailsms activé :
- Les destinataires dans la fenêtre sont admis immédiatement.
- Les destinataires retenus reçoivent un
422avecnext_allowed_at; votre worker les gare et poursuit le lot. Le lot lui-même n’est pas en pause — les retenues sont par destinataire. - Quand la fenêtre de chaque destinataire se rouvre, re-soumettez la ligne garée ; aucun créneau n’a été brûlé pendant la retenue.
next_allowed_at est un timestamp ISO protégé contre le passage à l’heure
d’été — transmettez-le tel quel à votre planificateur.
Destinataire de voix américain à fuseau horaire non résolu — fail-closed
Une composition de voix de campagne vers+15551234567 dont l’indicatif de
zone ne résout aucun fuseau horaire heurte la posture fail-closed de la
garde fédérale : la composition est rejetée avec
422 TCPA_TIMEZONE_UNKNOWN avant tout calcul de fenêtre. Corrigez les
données — fixez le fuseau horaire du contact sur l’enregistrement ou
passez recipientTimezone — puis remettez en file.
La même entrée non résolue sur le canal sms avec
unknown_timezone_policy: "deny" se termine en
422 QUIET_HOURS_TIMEZONE_UNKNOWN ; avec la politique skip par défaut,
elle passe en fail-open. La politique deny n’est le défaut que pour la
voix vers destinataires américains, conformément à l’exception fédérale
ci-dessus.
Substitution de consentement dans la fenêtre
Deux contacts, portailsms activé, 22:30 heure locale du destinataire
(en dehors de votre fenêtre) :
consent_overrides_quiet_hours: false, les deux se retiennent
jusqu’à 08:00 heure locale du destinataire. Sur voice, le drapeau ne
s’applique pas du tout — chaque tentative de voix est portée par le calcul
de fenêtre seul.
Activez un canal via l’API de paramètres de l’organisation
Il n’existe pas de point de terminaison d’écriture d’heures de silence dédié pour le portail de canal ; il réside dans le magasin de paramètres de l’organisation, et chaque point d’envoi le lit. Mettez-le à jour viaPUT /api/v1/settings/general (propriétaire/administrateur) :
GET /api/v1/settings/general et observez
le bloc quiet_hours dans les settings renvoyés.
Les écritures mettent jusqu’à environ une minute pour atteindre chaque
point d’envoi — les paramètres de l’organisation sont mis en cache
brièvement sur le chemin d’envoi.
Choisissez une posture
- Laisser tout désactivé (défaut) si vous opérez hors des juridictions à heures de silence, ou si vous gérez les limites ailleurs. Une réserve : la voix de campagne et de composeur américaine reste bloquée de façon stricte — cela ne peut pas être désactivé.
- Opérateur marketing américain — activez
sms(et la voix si vous composez en ad hoc) sur le portail de l’organisation ; les heures de la plateforme 08:00–21:00 heure locale du destinataire s’appliquent immédiatement. L’exception de consentement maintient les destinataires autorisés joignables. - Opérateur UE/APAC avec campagnes drip — fixez le secours de campagne à votre fenêtre locale (par exemple 22:00 → 07:00) dans Paramètres → Limites de campagne pour que tout drip et journey sans fenêtre propre envoie dans votre régime. Ajoutez le portail de l’organisation par canal si vous voulez aussi retenir le trafic 1:1.
Voir aussi
- Portails d’envoi — le point de terminaison de prévisualisation et la pile complète de portails (DNC, RND, arrêt d’urgence).
- Fenêtres d’appel par État américain — quels États portent une superposition mini-TCPA plus stricte et comment le blocage se retrace jusqu’à une loi.
- Référence API → Conformité — schémas complets de requête/réponse.
- Tests A/B de campagne — comment la sélection de gagnant et les expériences de retenue passent par ce portail et les limites de fréquence par contact.