---
title: "Powiadomienia w oknach czasowych dzięki warunkom UTC w Echobell"
description: "Wykorzystaj wbudowane zmienne czasu UTC w Echobell, aby filtrować powiadomienia według godzin pracy, weekendów lub okien serwisowych. Z gotowymi przepisami na warunki."
date: 2025-11-06
author: Nooc
authorAvatarLink: /images/avatars/nooc.webp
authorLink: https://nooc.me
tags:
  - Echobell
  - warunki
  - UTC
  - alerty w oknach czasowych
  - filtrowanie powiadomień
---

# Powiadomienia w oknach czasowych dzięki warunkom UTC w Echobell

Wbudowane zmienne czasu UTC w Echobell pozwalają ograniczyć powiadomienia do wybranych okien czasowych — godzin pracy, dyżurów on-call, okien serwisowych — bezpośrednio w warunkach kanału. Bez żadnej zewnętrznej warstwy filtrowania.

Wymagania wstępne: [Warunki](/pl/docs/conditions), [Szablony](/pl/docs/template), [Webhook](/pl/docs/webhook), [Wyzwalacze e-mail](/pl/docs/email-trigger).

## Dostępne zmienne UTC

Są tylko do odczytu, zawsze dostępne i wyliczane w UTC:

- `timezone` (zawsze „UTC”), `now`/`iso`, `epochMs`, `epochSeconds`
- `year`, `month` (1–12), `monthName`
- `dayOfMonth` (1–31)
- `dayOfWeek` (0–6, niedziela = 0), `dayOfWeekName`
- `hour` (0–23), `minute` (0–59), `second` (0–59)
- `date` (YYYY-MM-DD), `time` (HH:mm:ss)

W [warunkach](/pl/docs/conditions) używaj ich wprost (bez `{{ }}`). W [szablonach](/pl/docs/template) stosuj je z `{{ }}`.

## Przepisy na warunki

### Dni robocze w godzinach pracy

```
hour >= 9 && hour < 17 && dayOfWeek >= 1 && dayOfWeek <= 5
```

### Tylko weekendy

```
dayOfWeek == 0 || dayOfWeek == 6
```

### Poza godzinami pracy (noce i weekendy)

```
(hour < 9 || hour >= 17) || dayOfWeek == 0 || dayOfWeek == 6
```

### Okno serwisowe (soboty 01:00–03:00)

```
dayOfWeek == 6 && hour >= 1 && hour < 3
```

### Pierwszy dzień miesiąca o pełnej godzinie

```
dayOfMonth == 1 && minute == 0
```

### Godziny pracy na koniec kwartału (marzec/czerwiec/wrzesień/grudzień)

```
(month == 3 || month == 6 || month == 9 || month == 12) && hour >= 9 && hour < 17 && dayOfWeek >= 1 && dayOfWeek <= 5
```

## Łączenie czasu z filtrami treści

Warunki czasowe łączą się ze zmiennymi z danych przy użyciu standardowych operatorów:

- Eskalacje poza godzinami pracy tylko przy wysokiej wadze zdarzenia:
  ```
  ((hour < 9 || hour >= 17) || dayOfWeek == 0 || dayOfWeek == 6) && (severity == "high" || severity == "critical")
  ```
- Środowisko produkcyjne, wyłącznie w dni robocze:
  ```
  environment == "production" && dayOfWeek >= 1 && dayOfWeek <= 5
  ```

Warunki to zwykłe wyrażenia — nie otaczaj ich `{{ }}`. Zobacz [Warunki → obsługiwane operatory](/pl/docs/conditions#obsługiwane-operatory).

## Używanie zmiennych czasu w szablonach

Te same zmienne działają w szablonach z `{{ }}`, co przydaje się przy zapisach audytowych i czytelnych potwierdzeniach:

```
Sent at {{date}} {{time}} {{sys.timezone}}
Today is {{sys.dayOfWeekName}}, {{sys.monthName}} {{dayOfMonth}}, {{year}}
Epoch: {{sys.epochSeconds}}
```

Łącz je z danymi z [webhooka](/pl/docs/webhook) lub [wyzwalaczy e-mail](/pl/docs/email-trigger):

```
{{service}} {{status}} at {{time}} ({{sys.timezone}})
```

## Uwagi

- Wszystkie zmienne systemowe są w UTC. Jeśli Twój zespół pracuje w różnych strefach czasowych, uwzględnij przesunięcie przy ustawianiu zakresów godzin.
- Zacznij od prostego okna czasowego, a filtry treści dokładaj dopiero wtedy, gdy zadziała.
- Zostaw przy kanale krótki opis wyjaśniający logikę warunku (np. „dni robocze 09–17 UTC; poza godzinami pracy tylko wysoka waga”).

## Kolejne kroki

- Dodaj warunek okna czasowego do istniejącego kanału: [Warunki](/pl/docs/conditions)
- Dostosuj treść powiadomień przy użyciu zmiennych: [Szablony](/pl/docs/template)
- Utwórz osobne kanały dla godzin pracy i dla dyżurów on-call
- Kanałom dyżurowym ustaw typ powiadomień na połączenie, aby zapewnić reakcję poza godzinami pracy
