feat(announcement): add schedule configuration for automated announcements
Create a new schedule configuration file that allows defining automated announcements with flexible scheduling options. Supports two scheduling methods: - Interval-based: every X seconds/minutes/hours/days - Cron-based: standard 5-field cron syntax for precise scheduling Announcements can use presets (discord, restart, event) or custom title/text combinations. Includes comprehensive documentation and commented examples.
This commit is contained in:
@@ -0,0 +1,54 @@
|
||||
BladW = BladW or {}
|
||||
BladW.Announcement = BladW.Announcement or {}
|
||||
|
||||
-- ─────────────────────────────────────────────
|
||||
-- Annonces automatiques (mon petit cron maison)
|
||||
-- Chaque ligne = une annonce qui part toute seule.
|
||||
--
|
||||
-- QUAND ? une seule des deux clés :
|
||||
--
|
||||
-- every = "30m" -> ça répète tous les X. Unités : s (sec), m (min), h (heure), d (jour)
|
||||
-- ex : "45s", "10m", "2h", "1d"
|
||||
--
|
||||
-- cron = "0 3 * * *" -> comme sur Linux, 5 champs séparés par un espace :
|
||||
-- 1) minute 0-59
|
||||
-- 2) heure 0-23
|
||||
-- 3) jour du mois 1-31
|
||||
-- 4) mois 1-12
|
||||
-- 5) jour semaine 0-6 (0 = dimanche)
|
||||
--
|
||||
-- dans chaque champ je peux mettre :
|
||||
-- * -> tout le temps
|
||||
-- */5 -> tous les 5 (0, 5, 10...)
|
||||
-- 1-5 -> une plage (de 1 à 5)
|
||||
-- 1,3,5 -> une liste
|
||||
--
|
||||
-- quelques exemples qui parlent :
|
||||
-- "*/15 * * * *" -> toutes les 15 min
|
||||
-- "0 * * * *" -> à chaque heure pile
|
||||
-- "0 */2 * * *" -> toutes les 2 heures
|
||||
-- "0 20 * * 5" -> tous les vendredis à 20h
|
||||
-- "30 4 1 * *" -> le 1er du mois à 4h30
|
||||
-- (c'est l'heure du serveur qui compte)
|
||||
--
|
||||
-- QUOI ? soit un preset, soit du sur-mesure :
|
||||
-- preset = "restart" -> reprend un preset (voir sh_presets.lua)
|
||||
-- title = "...", text = "..." -> annonce perso
|
||||
-- (si je mets les deux, title/text passent devant le preset)
|
||||
--
|
||||
-- Pour couper une ligne : je la commente (--) ou je la dégage.
|
||||
-- ─────────────────────────────────────────────
|
||||
BladW.Announcement.Schedules = {
|
||||
|
||||
-- rappel Discord toutes les 30 min
|
||||
{ every = "30m", preset = "discord" },
|
||||
|
||||
-- petite astuce à chaque heure pile
|
||||
{ cron = "0 * * * *", title = "Astuce", text = "Tapez /bannonce pour gérer les annonces." },
|
||||
|
||||
-- exemples à décommenter au besoin
|
||||
-- { cron = "0 5 * * *", preset = "restart" }, -- reboot tous les jours à 5h
|
||||
-- { cron = "0 20 * * 5", preset = "event" }, -- event le vendredi à 20h
|
||||
-- { every = "2h", preset = "discord" }, -- rappel Discord toutes les 2h
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user