---
title: 'Discord szálütemező'
url: 'https://wiki.teletypegames.org/hu/services/statusbot'
markdown: 'https://wiki.teletypegames.org/hu/services/statusbot.md'
lang: hu
date: '2026-03-06'
description: 'Free Pascal bot, amely hetente egyszer, fix időpontban létrehoz egy Discord-szálat, és beleposztolja az első üzenetet. Heti státuszfrissítésekhez és bejelentkezésekhez való. Konfiguráció Környezeti változók; a sablon az env-example. Változó Leírás Példa RUN_AT Az ütemezés DOW:HH:MM formátu…'
taxonomy:
  tag:
    - howto
---

# Discord szálütemező

> Free Pascal bot, amely hetente egyszer, fix időpontban létrehoz egy Discord-szálat, és beleposztolja az első üzenetet. Heti státuszfrissítésekhez és bejelentkezésekhez való.

# Konfiguráció

Környezeti változók; a sablon az `env-example`.

| Változó | Leírás | Példa |
|---|---|---|
| `RUN_AT` | Az ütemezés `DOW:HH:MM` formátumban (1=vasárnap, 7=szombat). | `3:09:00` (kedd 09:00) |
| `DISCORD_BOT_TOKEN` | A Discord bot hitelesítési tokenje. | `MTIzNDU2...` |
| `DISCORD_CHANNEL_ID` | Annak a csatornának az azonosítója, ahol a szál létrejön. | `123456789012345678` |
| `THREAD_NAME` | A szál alapneve. Az aktuális dátum automatikusan hozzáfűződik. | `Weekly Status` |
| `THREAD_MESSAGE` | A szálba posztolt első üzenet. Discord-említéseket is elfogad. | `@here Please post updates!` |
| `ARCHIVE_DURATION` | (Opcionális) Hány perc múlva archiválódjon a szál. Alapérték 10080 (7 nap). | `1440` (1 nap) |

A `RUN_AT` formátuma `hét napja:óra:perc` — a nap 1 (vasárnap) és 7 (szombat) között, az óra 0–23, a perc 0–59. A `RUN_AT=2:14:30` minden hétfőn 14:30-at jelent.

# Hogyan működik

1. Induláskor beolvassa a `RUN_AT` értéket, és ellenőrzi a környezetet.
2. Tízmásodpercenként megnézi a rendszeridőt.
3. Egyezés esetén meghívja a Discord API-t: létrehozza a `THREAD_NAME (ÉÉÉÉ-HH-NN)` nevű szálat, kiveszi a válaszból az új szál azonosítóját, majd beleposztolja a `THREAD_MESSAGE` üzenetet.
4. Megvárja a következő percet, így ugyanaz az ütemezett perc nem sülhet el kétszer.

# Követelmények

Olyan Discord bot, amelynek a célcsatornán `Send Messages` és `Create Public Threads` joga van. Önálló binárisként vagy Dockerben fut.

# Telepítés

A bot a szerveren a `/srv/stacks/statusbot`-ban fut. A masterre pusholt változás, ha a `statusbot.pas`-t, a `Dockerfile`-t vagy a `compose.yaml`-t érinti, Woodpeckerből települ (`ci-deploy statusbot`, lásd [Telepítés](https://wiki.teletypegames.org/hu/infrastructure/deployment)); a pipeline előbb `fpc`-vel lefordítja. A `.env` a szerveren marad.

# Repó

https://git.teletypegames.org/services/statusbot

'; var prevLevel = 2; for (var i = 0; i < headings.length; i++) { var h = headings\[i\]; var text = h.textContent.trim(); var slug = text.toLowerCase() .replace(/\[áàâä\]/g,'a').replace(/\[éèêë\]/g,'e').replace(/\[íìîï\]/g,'i') .replace(/\[óòôöő\]/g,'o').replace(/\[úùûüű\]/g,'u') .replace(/\[^a-z0-9\]+/g, '-').replace(/^-|-$/g, ''); if (!slug) slug = 'heading-' + i; if (used\[slug\]) { slug += '-' + i; } used\[slug\] = true; h.id = slug; var level = parseInt(h.tagName.charAt(1)); var cls = level > 2 ? ' class="toc-child"' : ''; html += '- [' + text + '](#'%20+%20slug%20+%20')
'; } html += '
'; toc.innerHTML = html; // Scroll-spy: highlight current heading var links = toc.querySelectorAll('a'); var ids = \[\]; for (var j = 0; j < links.length; j++) ids.push(links\[j\].getAttribute('href').slice(1)); function updateActive() { var current = ''; for (var k = 0; k < ids.length; k++) { var el = document.getElementById(ids\[k\]); if (el && el.getBoundingClientRect().top <= 80) current = ids\[k\]; } for (var m = 0; m < links.length; m++) { links\[m\].parentNode.classList.toggle('active', links\[m\].getAttribute('href') === '#' + current); } } window.addEventListener('scroll', updateActive, { passive: true }); updateActive(); })();

---

## Navigation

- Parent: [Szolgáltatások](https://wiki.teletypegames.org/hu/services.md)
- Previous: [Scriptorium BBS](https://wiki.teletypegames.org/hu/services/scriptorium-bbs.md)
- Next: [Teletype BBS](https://wiki.teletypegames.org/hu/services/teletype-bbs.md)
