Quiet hours defer dispatch based on the recipient's local time. DripDrop leans on Postgres timezone functions so the decision is made consistently with the database clock.
Timezone Resolution
DripDrop resolves the timezone in this order:
enrollment.data["timezone"]step.config["timezone"]config :dripdrop, :quiet_hours_timezones, keyed by channel- sequence metadata
"default_timezone"or"timezone" config :dripdrop, :default_timezone, defaulting to"Etc/UTC"
The application quiet-hours default is {8, 21} for every channel unless a
step overrides it or sets "quiet_hours" => false.
Step Configuration
%{
"quiet_hours" => %{
"start" => 8,
"end" => 21
},
"timezone" => "America/New_York"
}The end hour is exclusive, so {8, 21} allows sends from 8:00 through 20:59 in
the resolved timezone. Windows can wrap midnight. When a send is outside the
allowed window, the dispatch worker returns a deferral time and emits
[:dripdrop, :policy, :quiet_hours].