Übersicht
revolution/laravel-notification-discord-webhook ist ein Paket, mit dem Sie über Discord-Webhooks Benachrichtigungen aus Laravel Notifications an Discord senden können. Die offizielle Discord-Bot-API erfordert das Aufrechterhalten einer WebSocket-Verbindung, was die Einrichtung kompliziert macht. Mit Webhooks reicht es aus, eine URL zu erhalten, um Benachrichtigungen zu senden. Wenn Sie nur Anwendungs-Events an einen Discord-Kanal Ihres Teams senden möchten, sind Webhooks die beste Wahl.Dieses Paket setzt PHP 8.3 oder höher sowie Laravel 12.0 oder höher voraus.
Installation
Konfiguration
Discord-Webhook-URL abrufen
Sie können in Ihrem Discord-Server unter Einstellungen → Integrationen → Webhooks eine Webhook-URL erstellen. Details finden Sie in der offiziellen Discord-Anleitung.config/services.php
.env
Grundlegende Verwendung
Notification-Klasse erstellen
Implementieren Sie die MethodetoDiscordWebhook() und geben Sie in via() DiscordChannel::class zurück.
Versandmuster
On-Demand-Benachrichtigungen
Wenn Sie Benachrichtigungen senden möchten, ohne sie an ein bestimmtes User-Modell zu binden, verwenden SieNotification::route().
Benachrichtigungen vom User-Modell aus
Wenn Sie pro User unterschiedliche Webhook-URLs verwenden möchten, definieren SierouteNotificationForDiscordWebhook().
Nachrichtentypen
Textnachrichten
Die einfachste Versandmethode.Embed-Nachrichten
MitDiscordEmbed können Sie eine reichhaltige Darstellung mit Titel und URL erzeugen.
Dateianhänge
MitDiscordAttachment können Sie Dateien anhängen und mitsenden. content (der Dateiinhalt) und filename sind Pflicht.
Referenzieren von Dateien in Embeds
Sie können inimage oder thumbnail eines Embeds Anhänge über attachment://Dateiname referenzieren.
Beliebige Payload senden
Mit->with() können Sie beliebige Parameter des Discord-Webhooks direkt angeben.
Fazit
Discord-Bots sind mächtig, aber wenn es nur um das Senden von Benachrichtigungen geht, sind Webhooks deutlich einfacher. Mit diesem Paket können Sie sich nahtlos in das Laravel-Benachrichtigungssystem integrieren und Anwendungs-Events schnell an einen Discord-Kanal Ihres Teams senden.Die aktuellsten Informationen finden Sie im GitHub-Repository.