20 lines
970 B
PHP
20 lines
970 B
PHP
<?php
|
|
// Community-Bot: nimmt Befehle von Discord und Telegram entgegen und meldet Antworten zurück.
|
|
require_once __DIR__ . '/lib.php';
|
|
|
|
plugin_register_webhook('discord', fn(array $req) => communitybot_discord($req));
|
|
plugin_register_webhook('telegram', fn(array $req) => communitybot_telegram($req));
|
|
|
|
// Mitarbeiter-Antwort (nicht intern) → Mitteilung an den Absender
|
|
plugin_add_hook('ticket.replied', function (array $payload) {
|
|
if (($payload['author'] ?? '') === 'staff' && empty($payload['internal']) && !empty($payload['ticketId'])) {
|
|
communitybot_notify_reply(get_db(), (int) $payload['ticketId']);
|
|
}
|
|
});
|
|
plugin_add_hook('ticket.status_changed', function (array $payload) {
|
|
if (!empty($payload['ticketId'])) communitybot_notify_status(get_db(), (int) $payload['ticketId']);
|
|
});
|
|
|
|
// Im Adminportal, nur für Administratoren (die Seite prüft das zusätzlich selbst)
|
|
plugin_register_menu('Discord/Telegram', 'community-bot', null, 'admin');
|