|
Node |
Check Timezone Window |
|---|---|
|
Description |
This node
Campaign schedule settings (time window, days, date range) from Campaign Start are also applied when computing the next slot, so both campaign schedule and regional compliance must allow the attempt. |
Category
|
Category |
Inputs |
Outputs |
Default Label |
|---|---|---|---|
|
Flow Control |
1 |
1 |
Your node's name, or Check Timezone Window if left blank |
Configuration
|
Setting |
Required? |
What it does |
|---|---|---|
|
Name |
Optional |
Label shown on the canvas |
There are no compliance settings on the node itself. Windows and holidays come from Unified Admin → Compliance Regulation profiles, resolved by the contact’s region field. Campaign schedule comes from timezoneComplianceMetadata on the pulse (built by Campaign Start).
Prerequisites (per contact)
|
Field |
Where |
Requirement |
|---|---|---|
|
timezone |
CX Customer ( |
Valid IANA timezone — e.g. |
|
region |
CX Customer ( |
Region code matching a compliance profile — e.g. |
|
timezoneComplianceMetadata |
Message from Campaign Start |
Campaign time window, days, date range, and campaign timezone |
How compliance profiles are resolved
-
Look up the profile for the contact’s
regioncode (e.g.US-FL) from Unified Admin/compliance-regulation. -
For US/CA regions, merge with the federal profile (
US-FED/CA-FED) using the stricter weekday and weekend windows. -
Region holidays are kept from the regional profile.
-
If no regional profile exists, fall back to the federal profile when available.
-
If nothing can be resolved → UNRESOLVED.
Each profile provides:
|
Rule |
Meaning |
|---|---|
|
Weekday window |
Allowed local start–end time on Mon–Fri (minutes from midnight) |
|
Weekend window |
Allowed local start–end time on Sat–Sun |
|
Holidays |
Dates ( |
Decision outcomes
|
Decision |
When |
Contact status |
Flow behaviour |
|---|---|---|---|
|
ALLOWED |
Local time is inside the compliance window and not a holiday |
Unchanged |
Message forwarded to next node |
|
RESCHEDULE |
Outside window or holiday, and a future valid slot exists within campaign range |
|
Message not forwarded; Governor slot freed (CX Voice) |
|
UNRESOLVED |
Missing/invalid timezone, no compliance profile, or no valid slot in campaign range |
|
Message not forwarded; Governor slot freed (CX Voice) |
Placement in the flow
CX Voice (recommended)
Campaign Start → Seize Agent → Check Seize Agent Event → Init
→ Check Timezone Window
→ Dial Node → …
Digital campaign (optional)
Campaign Start → Check Undelivered Contacts → Init
→ Check Timezone Window
→ Plain Message → …
Place it after Init (so each contact is evaluated individually) and before the outbound action (Dial / Plain Message).
Behaviour details
ALLOWED path
-
Evaluates contact local hour/minute/day against weekday or weekend window.
-
Skips holidays listed on the compliance profile.
-
Enriches
msg.timezoneComplianceMetadatawithcheckCompliance: trueand the resolved compliance window (includingeffectiveWindowEnd) for downstream use. -
Emits a compliance audit log with decision
ALLOWED.
RESCHEDULE path
-
Computes the next valid attempt time that satisfies:
-
Contact compliance window (weekday/weekend)
-
Holidays
-
Campaign time window / allowed days / date range (from Campaign Start)
-
-
Writes
scheduleAfterin the campaign timezone. -
Sets contact status back to
UNDELIVEREDso it can be picked up again later. -
Increments reschedule metric; frees Governor dial slot when present.
-
Does not send the message downstream.
UNRESOLVED path
Reasons include:
|
Reason |
Example |
|---|---|
|
No timezone |
Customer |
|
Invalid IANA timezone |
e.g. |
|
No compliance profile |
Unknown or invalid |
|
No valid slot |
Next allowed time falls outside campaign date range / overlapping windows |
Input / output
Input (expected)
|
Field |
Source |
|---|---|
|
|
Init Node |
|
|
CX Customer |
|
|
CX Customer |
|
|
Campaign Start pulse |
Output
|
Case |
Output |
|---|---|
|
ALLOWED |
Same |
|
RESCHEDULE / UNRESOLVED |
No output — contact handled via status update |
Metrics & audit
|
Metric / log |
When |
|---|---|
|
|
UNRESOLVED ( |
|
|
RESCHEDULE |
|
Compliance audit log |
Every decision: ALLOWED, RESCHEDULE, UNRESOLVED |
Example
Contact in America/New_York, region US-FL, local time 21:30, weekday window 09:00–20:00:
-
Outside compliance → not ALLOWED.
-
Node finds next morning opening that also fits the campaign schedule.
-
Contact updated to
UNDELIVEREDwithscheduleAfterset. -
Message stopped; dial/message slot freed for CX Voice.
Notes
-
Weekend days are treated as Saturday and Sunday.
-
The node is optional — omit it if you do not enforce regional quiet hours.
-
For CX Voice, skipping a contact frees the Governor slot so dial capacity is not left reserved for a contact that will not be dialed now.