> ## Documentation Index
> Fetch the complete documentation index at: https://docs.orbit.devotel.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Sessiz saatler: kuruluş genelinde kanal kapıları vs. kampanya yedek penceresi

> Sessiz saat duruşunuzu seçin: kuruluş düzeyinde kanal kapısı, drip/journey yedek penceresi ve iki düğmenin genel 1:1 gönderimler ile kampanya trafiğinde nasıl etkileştiği.

# Sessiz saatler: kuruluş genelinde kanal kapıları vs. kampanya yedek penceresi

Orbit'in sessiz saat kapısı kiracıya aittir: bu sayfadaki her şey **sizin**
yapılandırdığınız (veya kapalı bırakmayı seçtiğiniz) bir denetimdir. Tek
istisna, ABD alıcıları için TCPA federal ses penceresidir; kendi bölümü
aşağıdadır. Sessiz saatleri etkinleştirmek sizin kararınızdır — buradaki
hiçbir şey CAN-SPAM veya GDPR tarafından zorunlu tutulmaz.

Bu sayfa söz konusu kapının operatör el kitabıdır. Duruşunuzu üç yüzey
oluşturur:

1. **Kuruluş genelinde kanal kapısı** — kuruluş ayarlarındaki kanal
   başına düğmeler (`settings → quiet_hours.<channel>.enabled`),
   `PUT /api/v1/settings/general` üzerinden yazılır ve pano kuruluş
   ayarlarında yansıtılır (ayrıca bkz.
   [Uyumluluk duruşu](/compliance/posture-overview)).
2. **Kampanya yedek penceresi** — kendi penceresini taşımayan drip ve
   journey gönderimi kampanya satırları için kuruluş genelinde tek
   başlangıç/bitiş çifti. Panoda: **Ayarlar → Kampanya limitleri →
   Varsayılan sessiz saatler**; API üzerinden:
   `GET`/`PUT /api/v1/campaigns/quiet-hours/settings`.
3. **Önizleme uç noktası** — `GET /api/v1/compliance/quiet-hours/preview`;
   "Bu alıcıya bu gönderim şu anda geçer mi?" sorusuna yanıt veren salt
   okunur bir denetim. Her devreye almadan önce çalıştırın; aşağıdaki el
   kitabında adım adım işlenir.

## İki pencere

| Düğme                                                                     | Kapsar                                                                                                                               | Nerede yapılandırılır                                                                                        |
| ------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ |
| Kuruluş genelinde kanal kapısı (`organizations → settings → quiet_hours`) | Etkinleştirdiğiniz her kanaldaki her gönderim: pano, API, akışlar, kampanya dağıtımı                                                 | Kuruluş ayarlarındaki `quiet_hours` bloğu (aşağıya bakın)                                                    |
| Kampanya yedek penceresi                                                  | Yalnızca drip + journey gönderimleri ve yalnızca kampanya satırının kendi `quiet_hours_start` / `quiet_hours_end` değeri olmadığında | Ayarlar → Kampanya limitleri → Varsayılan sessiz saatler veya API üzerinden `campaigns/quiet-hours/settings` |

Kampanya yedeği, adının söylediğinin tam karşılığıdır — bir yedek, ikinci
bir kapı değil. Kampanya gönderimi için çözümleme sırası: kampanya
satırının kendi penceresi, sonra kuruluş yedeği, sonra platform varsayılanı
21:00 → 09:00 (sessiz saatler alıcının yerel saatine göre 21:00'den 09:00'a
kadar sürer).

İki düğme birbirinden farklı olabilir. Kampanyayla dağıtılan bir gönderim,
kampanya yolunun penceresini bir katman olarak değerlendirir; kuruluş kanal
kapısı — o kanalı etkinleştirdiğinizde — gönderim noktasında değerlendirilen
ayrı bir katmandır. Kuruluş kapısını 1:1 trafiğin duruşu, kampanya yedeğini
ise toplu trafiğin varsayılan rejimi olarak ele alın. Engellenen bir
gönderim `next_allowed_at` raporlar — pencerenin etrafında zamanlama yapın,
yeniden denemeyin.

Her iki katmanda da ayarlayabileceğiniz yedekler, kapsamı her zaman yalnızca
**daraltabilir**; etkinleştirdiğiniz bir kanal kapısını asla genişletmez.

## Kuruluş genelinde kanal başına kapı

Kanal kapısı kanal başına opt-in'dir. Her kanal başına giriş şunları
destekler:

| Alan           | Anlam                                                                                                                                |
| -------------- | ------------------------------------------------------------------------------------------------------------------------------------ |
| `enabled`      | Kapının bu kanal için geçerli olup olmadığı. Tüm kanallar varsayılan olarak `false`.                                                 |
| `start_hour`   | Kapsayıcı 24 saatlik başlangıç saati (0–23); örneğin alıcının yerel saatine göre 08:00 için `8`.                                     |
| `end_hour`     | Hariç 24 saatlik bitiş saati (0–23); örneğin alıcının yerel saatine göre 21:00 için `21`. `start_hour > end_hour` gece penceresidir. |
| `allowed_days` | İzin verilen hafta içi günlerin isteğe bağlı listesi, `0` = Pazar … `6` = Cumartesi. Her güne izin vermek için boş bırakın.          |

Kuruluş düzeyi anahtarlar (tüm kanallara birlikte uygulanır):

| Anahtar                         | Anlam                                                                                                                                              |
| ------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |
| `default`                       | Kanal başına girişin ayarlamadığı alanları dolduran kısmi pencere.                                                                                 |
| `unknown_timezone_policy`       | `skip` (varsayılan), `enforce_utc` veya `deny` — aşağıdaki saat dilimi bölümüne bakın.                                                             |
| `consent_overrides_quiet_hours` | `true` (varsayılan) olduğunda, açık onay kaydı olan alıcı kapıyı geçer — TCPA "önceden açık onay" istisnası. Yalnızca ses dışı kanallarda çalışır. |

### Kanal başına varsayılan duruş

Bir kanalı etkinleştirene kadar hiçbir şey tutulmaz. Saatleri belirtmeden
bir kanalı açtığınızda platform saatleri devreye girer:

| Kanallar                                                       | Varsayılan pencere (alıcının yerel saati) |
| -------------------------------------------------------------- | ----------------------------------------- |
| `sms`, `mms`, `rcs`, `viber`, `telegram`, `voice`              | 08:00–21:00                               |
| `whatsapp`, `instagram`, `messenger`, `apple_messages`, `line` | 09:00–21:00                               |
| `email`, `fax`, `push`, `web_chat`                             | Etkinleştirildiğinde 08:00–21:00          |

Kapının kabul ettiği tam kanal kümesi: `sms`, `mms`, `whatsapp`, `rcs`,
`viber`, `telegram`, `voice`, `email`, `instagram`, `messenger`, `line`,
`apple_messages`, `fax`, `push`, `web_chat`.

### Temel trafiğin akmasını sağlayan iki istisna

* **Önceden açık onay** — `consent_overrides_quiet_hours` true (varsayılan)
  ile, açık onay kaydı olan bir alıcı ses dışı her kanaldan geçer. Ses bu
  istisnayı asla kullanmaz.
* **İşlemsel trafik şeridi** — arayanın işlemsel olarak etiketlediği
  gönderimler (OTP'ler, uyarılar, hesap bildirimleri) etkin bir kanalda bile
  kapıdan muaftır. Ses bu istisnayı da asla kullanmaz.

`consent_overrides_quiet_hours` değerini yalnızca onay istisnaları olmadan
durmuş gönderimler istiyorsanız `false` olarak ayarlayın.

## Kampanya yedek penceresi

Kimliği doğrulanmış her arayan okur; yalnızca sahip/yönetici yazar.

Mevcut yedek pencereyi okuyun:

```bash theme={null}
curl https://api.orbit.devotel.io/api/v1/campaigns/quiet-hours/settings \
  -H "Authorization: Bearer $ORBIT_API_KEY"
```

```json theme={null}
{
  "enabled": false,
  "start_hour": null,
  "end_hour": null,
  "platform_default_start": 21,
  "platform_default_end": 9
}
```

`platform_default_start` / `platform_default_end`, geçersiz kılma kapalıyken
drip ve journey gönderimlerinin kullandığı saatleri yankılar — onları devralın
veya değiştirin, tercih sizin. Panoda bu form **Ayarlar → Kampanya limitleri
→ Varsayılan sessiz saatler**. Kendi pencerenizi ayarlayın (`enabled` true
olduğunda her iki saat de zorunludur):

```bash theme={null}
curl -X PUT https://api.orbit.devotel.io/api/v1/campaigns/quiet-hours/settings \
  -H "Authorization: Bearer $ORBIT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "enabled": true, "start_hour": 22, "end_hour": 7 }'
```

Platform varsayılanına geri temizleyin:

```bash theme={null}
curl -X PUT https://api.orbit.devotel.io/api/v1/campaigns/quiet-hours/settings \
  -H "Authorization: Bearer $ORBIT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "enabled": false }'
```

Gece pencereleri (örn. başlangıç `22`, bitiş `7`) her iki katmanda da kabul
edilir — `start > end` çifti gece yarısını sarar.

## Alıcı saat dilimi çözümlemesi

Kapı *alıcının yerel saati* ile çalışır. Saat dilimi çözümlemesi şu zinciri
izler:

1. Sağlandığında arayandan gelen açık bir `recipientTimezone` ipucu.
2. ABD alan kodu → IANA saat dilimi, +1 numaraları için.
3. E.164 ülke kodu → temsili bir IANA saat dilimi (Avrupa, Asya, Amerika
   kıtaları ve yaygın operatör pazarları).
4. E-posta alıcıları için kuruluşun varsayılan saat dilimi.
5. Yukarıdakilerden hiçbiri çözümlenmediğinde — kuruluşun
   `unknown_timezone_policy` değeri (panoda **Ayarlar → Ses** altında da
   yapılandırılabilir):

| İlke                                                         | Davranış                                                                             |
| ------------------------------------------------------------ | ------------------------------------------------------------------------------------ |
| `skip` (ABD alıcısı ses dışındaki her kanal için varsayılan) | İzin ver — ABD yargı alanı dışındaki alıcılar için fail-open.                        |
| `deny` (yalnızca ABD alıcısı ses için varsayılan)            | Engelle. `422 QUIET_HOURS_TIMEZONE_UNKNOWN` döndürür (ses: `TCPA_TIMEZONE_UNKNOWN`). |
| `enforce_utc`                                                | UTC'ye karşı değerlendir — alıcıdan bağımsız deterministik pencere.                  |

Alıcı bir saat dilimine çözümlenirse, normal bir etkin kanal engeli
`422 QUIET_HOURS_BLOCKED` döndürür (ses: `TCPA_DIALING_WINDOW_BLOCKED`) ve
hata ayrıntılarında pencere ile `next_allowed_at` bulunur.

## TCPA federal ses istisnası

**ABD alıcılarına** yapılan kampanya ve çevirici ses çağrıları, alıcının yerel
saatine göre 08:00–21:00 federal penceresi dışında sert engellenir — hiçbir
kuruluş kapısı, yedek pencere veya onay bayrağı bunu gevşetmez ve saat dilimi
çözümlenemeyen bir ABD alıcısı fail-closed olarak engellenir. Bu, platformun
sahip olduğu tek düğmedir; yalnızca kampanya ve çevirici ses için geçerlidir,
1:1 ad-hoc çağrılara veya mesajlaşma kanallarına değil.

ABD dışı alıcılar normal kapıyla oynar: fail-open `skip` ilkesi ABD yargı
alanı dışındaki alıcılar için geçerlidir ve kendi ses kanal kapınız (etkinse)
üstte katmanlanır. Federal pencereyi her zaman daraltabilirsiniz — örneğin
alıcının yerel saatine göre 09:00–20:00 ses kapısı — ama asla genişletemezsiniz.

Federal pencere dışında panodan yapılan ad-hoc 1:1 ses çağrıları, kuruluş
kapısında `voice` kanalını etkinleştirmediğiniz sürece bilgilendirme günlüğüyle
geçer; etkinleştirdiyseniz sert beklemeye dönüşür
(`422 TCPA_DIALING_WINDOW_BLOCKED`).

## Onay sessiz saatleri geçersiz kılar

`consent_overrides_quiet_hours: true` (varsayılan) ile, açık onay kaydı elinizde
bulunan bir alıcı **ses dışı** kanallardaki kapıyı geçer — TCPA "önceden açık
onay" istisnası. İzinli bir alıcı kapalı saatleriniz içinde erişilebilir kalır;
onay kaydı olmayan bir kişi pencere açılana kadar tutulur.

Onay pencerenizi asla gevşetmemesi gerekiyorsa `false` olarak ayarlayın. Kapı,
`voice` kanalında bayrağı tamamen yok sayar — ses federal pencereye ve eyalet
katmanlarına bağlıdır, onay istisnasına değil.

## Eyalet mini-TCPA katmanları

Bazı ABD eyaletleri federal saatlerin üzerine daha katı bir arama penceresi veya
hafta günü yasağı katlar (Florida'nın Pazar yasağı, Oklahoma/Mississippi
pencereleri ve diğerleri). Katmanlar **en kısıtlayıcı kazanır** kuralıyla
birleşir: gönderim federal pencereyi *ve* uygulanabilir her eyalet katmanını
geçmelidir; katman daraltabilir ama asla genişletemez. Ses engelleri şu hata
nedenleriyle geri izlenir:

* `outside_state_window` — bir eyalet katmanı pencereyi daralttı ve bu saat
  onun dışına düştü.
* `state_blocked_day` — katman bu hafta gününde aramayı tamamen yasaklar.

Eyalet başına tam tablo ve hangi alıcı eyaletlerinin hangi katmana çözümlendiği
[ABD eyalet arama pencereleri](/compliance/state-calling-windows) sayfasındadır.

## Operasyonel el kitabı

**Devreye alma denetim listesi.** Bir kanalı açmadan veya geniş bir liste
itmeden önce:

1. `GET /api/v1/compliance/quiet-hours/preview?phone=<E.164>&channel=<channel>`
   ile alıcıların bir örneğini önizleyin; `timezone_override=<IANA>`yı yalnızca
   CRM'iniz numaranın çözdüğünden daha iyi bir ipucu taşıdığında ekleyin.
2. Kuruluş kapı bloğunu doğrulayın: `GET /api/v1/settings/general` çağırın ve
   `PUT` öncesinde `quiet_hours` ağacını okuyun — yazmalar üst düzeyde birleşir
   ama `quiet_hours` anahtarının kendisi toptan değiştirilir (aşağıdaki yazma
   bölümüne bakın).
3. Toplu devreye almalarda `GET /api/v1/settings/compliance-health` izleyin —
   uyarıları en kötü suçluyu sıralar (en çok tutulan gönderen, hata kümeleri),
   böylece en gürültülü şeridi önce düzeltirsiniz.

**Bekletmeler alıcı başınadır, kiracı başına değil.** 21:05 alıcı yerel saatinde
tutulan bir kişi yalnızca o kişinin gönderimlerini engeller; toplu listenizin
geri kalanı paralelde kabul edilmeye devam eder. Tutulan bir 1:1 gönderim,
hata ayrıntılarında `next_allowed_at` ile `422 QUIET_HOURS_BLOCKED` fırlatır —
döngüde yeniden denemek yerine o zaman damgasında zamanlayın. Tutulan bir
gönderim asla kota veya slot rezervasyonu tüketmez; pencere açıldığında yeniden
denemeler temiz biçimde geri kabul edilir.

**Yazmaların her gönderim noktasına ulaşması yaklaşık bir dakika kadar sürebilir**
— kuruluş ayarları gönderim yolunda kısa süreliğine önbelleğe alınır. Okumalar
anındadır; devreye almadan önce birleşen duruşu bir `GET` ile doğrulayın.

## Çalışılmış örnekler

### 21:05'te toplu devreye alma — bekletme kuyruğu davranışı

Listenizin bir bölümünün alıcı yerel saatine göre 08:00–21:00 kuruluş kapınızın
dışında kaldığı bir anda 1.000 alıcılı bir listeyi API üzerinden itiyorsunuz.
Her alıcı, etkin `sms` kapınıza karşı bağımsızca çözümlenir:

* Pencere içi alıcılar hemen kabul edilir.
* Tutulan alıcılar `422` ve `next_allowed_at` alır; işçiniz onları park eder ve
  toplu işi sürdürür. Toplu işin kendisi duraklamaz — bekletmeler alıcı
  başınadır.
* Her alıcının penceresi yeniden açıldığında park edilen satırı yeniden gönderin;
  tutulma sırasında slot yakılmadı.

Belirli bir alıcıyı denemeyi yakmadan doğrulayın:

```bash theme={null}
curl "https://api.orbit.devotel.io/api/v1/compliance/quiet-hours/preview?phone=%2B14155551234&channel=sms" \
  -H "Authorization: Bearer $ORBIT_API_KEY"
```

```json theme={null}
{
  "allowed_now": false,
  "local_hour": 21,
  "local_timezone": "America/New_York",
  "window_start_local": "08:00",
  "window_end_local": "21:00",
  "next_allowed_at": "2026-08-26T12:00:00Z",
  "reason": "outside_window",
  "channel": "sms"
}
```

`next_allowed_at` gün ışığından yararlanma güvenli bir ISO zaman damgasıdır —
doğrudan zamanlayıcınıza aktarın.

### Saat dilimi çözümlenemeyen ABD ses alıcısı — fail-closed

Alan kodunun hiçbir saat dilimi çözümleyemediği `+15551234567` numarasına yapılan
bir kampanya ses araması, federal muhafızın fail-closed duruşuna takılır: arama,
herhangi bir pencere matematiğinden önce `422 TCPA_TIMEZONE_UNKNOWN` ile reddedilir.
Veriyi düzeltin — kişinin saat dilimini kaydına ayarlayın veya `recipientTimezone`
geçirin — sonra yeniden kuyruğa alın.

Aynı çözümlenemeyen girdi, `unknown_timezone_policy: "deny"` ile `sms` kanalında
`422 QUIET_HOURS_TIMEZONE_UNKNOWN` ile sonlanır; varsayılan `skip` ilkesiyle
fail-open geçer. `deny` ilkesi yalnızca ABD alıcısı ses için varsayılandır,
yukarıdaki federal istisnaya göre.

### Pencere içinde onay geçersiz kılma

İki kişi, `sms` kapısı etkin, alıcının yerel saatine göre 22:30 (pencerenizin
dışında):

```text theme={null}
kişi a — dosyada onay kaydı      → izinli (neden: consent_override)
kişi b — onay kaydı yok          → tutuldu (422 QUIET_HOURS_BLOCKED)
```

`consent_overrides_quiet_hours: false` ile her ikisi de alıcının yerel saatine
göre 08:00'e kadar tutulur. `voice` üzerinde bayrak hiç uygulanmaz — her ses
denemesi yalnızca pencere matematiğiyle kapılanır.

## Kuruluş ayarları API'si üzerinden kanal etkinleştirme

Kanal kapısı için ayrılmış bir sessiz saat yazma uç noktası yok; kuruluş ayarları
deposunda yaşar ve her gönderim onu okur. `PUT /api/v1/settings/general` ile
güncelleyin (sahip/yönetici):

```bash theme={null}
curl -X PUT https://api.orbit.devotel.io/api/v1/settings/general \
  -H "Authorization: Bearer $ORBIT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "settings": {
      "quiet_hours": {
        "sms": { "enabled": true },
        "whatsapp": { "enabled": true, "start_hour": 9, "end_hour": 21 },
        "unknown_timezone_policy": "skip",
        "consent_overrides_quiet_hours": true
      }
    }
  }'
```

Mevcut duruşu `GET /api/v1/settings/general` ile geri okuyun ve dönen
`settings` içindeki `quiet_hours` bloğuna bakın.

<Warning>
  Birleştir-sonra-doğrula. `PUT /settings/general`, ayarları üst düzeyde
  birleştirir; bu nedenle *yalnızca* `quiet_hours` içeren bir yazma diğer
  ayarlarınızı olduğu gibi bırakır — ancak köküne tam bir `quiet_hours`
  nesnesi koyduğunuz yazma o anahtarı DEĞİŞTİRİR. Mevcut girişleri (örneğin
  bir `default` penceresi veya kampanya yedeğinin saklanmış yaprak
  anahtarlarını) korumak istiyorsanız önce mevcut bloğu okuyun ve yazmadan
  önce birleştirin.
</Warning>

Yazmaların her gönderim noktasına ulaşması yaklaşık bir dakika kadar sürebilir
— kuruluş ayarları gönderim yolunda kısa süreliğine önbelleğe alınır.

## Bir duruş seçin

1. **Her şeyi kapalı bırakın (varsayılan)** — sessiz saat yargı alanlarının
   dışında çalışıyorsanız veya limitleri başka yerde ele alıyorsanız. Tek
   uyarı: ABD kampanya ve çevirici sesi sert engelli kalır — bu kapatılamaz.
2. **ABD pazarlama operatörü** — kuruluş kapısında `sms` (ve ad-hoc arıyorsanız
   ses) etkinleştirin; alıcının yerel saatine göre 08:00–21:00 platform saatleri
   hemen uygulanır. Onay istisnası izinli alıcıları erişilebilir tutar.
3. **Drip kampanyalı AB/APAC operatörü** — kampanya yedeğini yerel pencerenize
   (örn. 22:00 → 07:00) Ayarlar → Kampanya limitleri altında ayarlayın; böylece
   kendi penceresi olmayan her drip ve journey rejiminiz içinde gönderir. 1:1
   trafiğin de tutulmasını istiyorsanız kuruluş kapısını kanal başına ekleyin.

## Ayrıca bakınız

* [Gönderim kapıları](/compliance/send-gates) — önizleme uç noktası ve tam kapı
  yığını (DNC, RND, acil durum durdurma).
* [ABD eyalet arama pencereleri](/compliance/state-calling-windows) — hangi
  eyaletlerin daha katı mini-TCPA katmanı taşıdığı ve engelin bir yasaya nasıl
  geri izlendiği.
* [API Başvurusu → Uyumluluk](/api-reference/endpoints/compliance) — tam istek/
  yanıt şemaları.
* [Kampanya A/B testi](/guides/campaign-ab-testing) — kazanan seçiminin ve
  ayırma deneylerinin bu kapıdan ve kişi başına [sıklık limitleri](/guides/frequency-caps)
  üzerinden nasıl geçtiği.
