diff --git a/src/main/java/de/ticketsystem/discord/DiscordWebhook.java b/src/main/java/de/ticketsystem/discord/DiscordWebhook.java index 5a09760..c5c626a 100644 --- a/src/main/java/de/ticketsystem/discord/DiscordWebhook.java +++ b/src/main/java/de/ticketsystem/discord/DiscordWebhook.java @@ -335,9 +335,39 @@ public class DiscordWebhook { return url.isEmpty() ? null : url; } + /** + * Baut den Rollen-Ping-String aus der config.yml. + * + * Neue Konfiguration (mehrere Rollen): + * discord: + * role-ping-ids: + * - "123456789" + * - "987654321" + * + * Fallback (alte Konfiguration, einzelne Rolle): + * discord: + * role-ping-id: "123456789" + * + * Beide Varianten können auch kombiniert werden – role-ping-ids hat Vorrang. + */ private String buildRolePing() { - String roleId = plugin.getConfig().getString("discord.role-ping-id", "").trim(); - return roleId.isEmpty() ? "" : "<@&" + roleId + ">"; + List roleIds = plugin.getConfig().getStringList("discord.role-ping-ids"); + + if (!roleIds.isEmpty()) { + StringBuilder sb = new StringBuilder(); + for (String id : roleIds) { + String trimmed = id.trim(); + if (!trimmed.isEmpty()) { + if (sb.length() > 0) sb.append(" "); + sb.append("<@&").append(trimmed).append(">"); + } + } + return sb.toString(); + } + + // Fallback: altes role-ping-id (Rückwärtskompatibilität) + String single = plugin.getConfig().getString("discord.role-ping-id", "").trim(); + return single.isEmpty() ? "" : "<@&" + single + ">"; } private String getPriorityEmoji(TicketPriority priority) { diff --git a/src/main/resources/config.yml b/src/main/resources/config.yml index fb78d34..71e7c1c 100644 --- a/src/main/resources/config.yml +++ b/src/main/resources/config.yml @@ -170,7 +170,9 @@ discord: # Rollen-Ping: Discord-Rollen-ID (Rechtsklick auf Rolle → ID kopieren) # Leer lassen ("") = kein Ping - role-ping-id: "" + role-ping-ids: + - "123456789" + - "987654321" messages: # ── Neues Ticket ────────────────────────────────────────────────────────