Ein Wrapper für die offiziellen Discord REST-, Gateway- und Sprach-APIs. Die Dokumentation sowie eine Klassenreferenz sind hier verfügbar, wenn auch derzeit begrenzt. Fragen könnt ihr gerne oben auf dem Discord-Server stellen.
Aus Test- und Stabilitätsgründen würden wir uns sehr freuen, wenn Sie unseren Testbot zu Ihrem Server hinzufügen könnten. Wir speichern keine Daten – der Bot ist einfach im Leerlauf und interagiert mit niemandem und wird verwendet, um die Stabilität bei einer großen Anzahl von Gilden zu testen. Sie können den Bot hier einladen.
Warnung: Dieser Zweig enthält eine experimentelle Funktion. Verwenden Sie sie nicht in der Produktion! Weitere Informationen zur Einrichtung finden Sie auf der Wiki-Seite.
Kann ich DiscordPHP auf einem Webserver (z. B. Apache, Nginx) ausführen?
Nein, DiscordPHP läuft nur im CLI. Wenn Sie eine Schnittstelle für Ihren Bot haben möchten, können Sie „react/http“ in Ihren Bot integrieren und über die CLI ausführen.
PHP hat nicht mehr genügend Speicher?
Versuchen Sie, Ihren PHP-Speicher mit ini_set('memory_limit', '-1');
.
Bevor Sie mit der Verwendung dieser Bibliothek beginnen, müssen Sie wissen, wie PHP funktioniert, Sie müssen wissen, wie Ereignisschleifen und Versprechen funktionieren. Dies ist eine Grundvoraussetzung, bevor Sie beginnen. Ohne dieses Wissen wirst du nur leiden.
PHP 8.0 oder höher (neueste Version empfohlen)
x86 (32-Bit) PHP erfordert die Aktivierung ext-gmp
.
ext-json
ext-zlib
Eine von ext-uv
(empfohlen), ext-ev
oder ext-event
für eine schnellere und leistungsfähigere Ereignisschleife.
ext-mbstring
wenn nicht-lateinische Zeichen verarbeitet werden.
64-Bit-PHP
ext-sodium
FFmpeg
Leider hat PHP unter Windows keinen Zugriff auf den Windows-Zertifikatspeicher. Dies ist ein Problem, da TLS verwendet wird und daher die Zertifikatsüberprüfung angewendet wird (das Ausschalten ist keine Option).
Sie werden dieses Problem daran bemerken, dass Ihr Skript sofort nach einer Schleife ohne Fehler beendet wird.
Daher müssen Benutzer dieser Bibliothek einen Auszug der Zertifizierungsstelle von der cURL-Website herunterladen.
Der Pfad zum CaExtract muss in der php.ini
für openssl.cafile
festgelegt werden.
DiscordPHP wird mit Composer installiert.
Führen Sie composer require team-reflex/discord-php
. Dadurch wird die neueste stabile Version installiert.
Wenn Sie möchten, können Sie den Entwicklungszweig auch installieren, indem Sie composer require team-reflex/discord-php dev-master
ausführen.
Fügen Sie die Composer-Autoload-Datei oben in Ihre Hauptdatei ein:
include __DIR__.'/vendor/autoload.php';
Erstelle einen Bot!
<?phpinclude __DIR__.'/vendor/autoload.php';use DiscordDiscord;use DiscordPartsChannelMessage;use DiscordWebSocketsIntents;use DiscordWebSocketsEvent;$discord = new Discord(['token' => 'bot-token','intents' => Intents ::getDefaultIntents()// | Intents::MESSAGE_CONTENT, // Hinweis: MESSAGE_CONTENT ist privilegiert, siehe https://dis.gd/mcfaq]);$discord->on('ready', function (Discord $discord) {echo „Bot ist bereit!“ , PHP_EOL;// Auf Nachrichten achten.$discord->on(Event::MESSAGE_CREATE, function (Message $message, Discord $discord) {echo "{$message->author->username}: {$message->content}", PHP_EOL;// Hinweis: Die Absicht MESSAGE_CONTENT muss aktiviert sein, um den Inhalt abzurufen, wenn der Bot nicht erwähnt/DMed.}); });$discord->run();
Weitere Informationen finden Sie im Beispielordner.
Die Dokumentation zur neuesten Version finden Sie hier. Von der Community bereitgestellte Tutorials finden Sie im Wiki.
Wir sind offen für Beiträge. Bitte stellen Sie jedoch sicher, dass Sie unsere Codierungsstandards befolgen (PSR-4-Autoloading und benutzerdefiniertes Styling). Bitte führen Sie php-cs-fixer aus, bevor Sie eine Pull-Anfrage öffnen, indem Sie composer run-script cs
ausführen.
MIT-Lizenz, © David Cole und andere Mitwirkende seit 2016.