WoltLab Cloud Discord-API 2.0.3

Dieses Plugin dient als Schnittstelle zwischen weiteren Plugins und Ihrem Discord-Server. Dieses Plugin ist vor allem für Entwickler relevant. Es kann allerdings auch als Basis-Plugin für andere Plugins dienen.

Es können verschiedenen Bots angelegt werden, auf diese dann von anderen Plugins zugegriffen werden können.

Fragen und Antworten

Wie erstelle ich einen neuen Bot?

Gehe ins ACP -> Konfiguration -> Discord -> Discord-Bots -> Discord-Bot hinzufügen.

Wie kann ich die API in meinem Plugin implementieren?

Füge die Abhängigkeit zu diesem Plugin in deiner package.xml ein:

XML: package.xml
<requiredpackage minversion="1.0.0">dev.hanashi.wsc.discord-api</requiredpackage>

Erstelle einen Bot im ACP. Dieser erhält eine ID. Mit Hilfe von folgenden Code kannst du die API verwenden:

PHP
$discord = wcf\system\discord\DiscordApi::getApiByID($botID);

Die $botID musst du natürlich anpassen.

Nun kannst du mit Discord kommunizieren. Hier ein Beispiel um einen Channel abzurufen:

PHP
$discord->getChannel($channelID);
  • Version 2.0.3

    • CHANGE: Anzahl der Zeichen für Präfix auf 100 erhöht
    • CHANGE: unnötige uses entfernt
  • Version 2.0.2

    • FIX: Problem behoben wenn ein OptionType mehrfach verwendet wird
  • Version 2.0.1

    • FIX: behebt Problem wenn Discord-API offline ist oder keine Verbindung besteht
  • Version 2.0.0

    Achtung: Es wird nun mindestens WoltLab Suite 5.3 vorausgesetzt.

    • CHANGE: Umstellung auf TypeScript
    • CHANGE: Umstellung auf Database PHP API
    • CHANGE: Umstellung auf Guzzle HTTP
    • CHANGE: Bot Token und Secret Key wird im ACP beim Bot bearbeiten nicht mehr angezeigt
    • CHANGE: Webhook-Bilddateien werden jetzt als .png und nicht mehr als .pic abgelegt
    • CHANGE: Methoden umbenannt
      • addPinnedChannelMessage zu pinMessage umbenannt
      • deletePinnedChannelMessage zu unpinMessage umbenannt
      • deleteIntegration zu deleteGuildIntegration umbenannt
    • CHANGE: Methoden entfernt
      • syncGuildIntegration wurde entfernt
      • getGuildEmbed wurde entfernt
      • modifyGuildEmbed wurde entfernt
    • FEATURE: Neue Methoden hinzugefügt (für Slash Commands und )
    • FEATURE: Verbesserung der Gruppenauswahl (z.B. bei Discord-Sync)
    • FEATURE: Public Key für Interaction API im ACP hinzugefügt
    • FEATURE: AbstractDiscordInteractionAction für Interaction API hinzugefügt
  • Version 1.0.8

    • CHANGE: Umstellung auf PSR-12
  • Version 1.0.7

    • FIX: Fehlermeldung bei fehlerhafter API-Antwort
  • Version 1.0.6

    • FIX: Fehlermeldung wenn Server gelöscht wurde
    • FEATURE: verbesserte Fehlermeldung, wenn beim Bot Erstellen keine Verbindung zu discord.com aufgebaut werden kann
    • FEATURE: Avatar-Dateigröße auf 8 MB erhöht
  • Version 1.0.5

    • FIX: Ankündigungs-Channel werden wieder als Textchannel angezeigt
  • Version 1.0.4

    • CHANGE: Änderung der API-URL
    • FEATURE: Permission-Decoder hinzugefügt
  • Version 1.0.3 pl 1

    • OAuth2 state-Parameter hinzugefügt
    • OAuth2 refreshToken hinzugefügt
    • User-Flag-Decoder hinzugefügt
    • Snowflake-Decoder hinzugefügt
    • neuen Option-Type DiscordRoleMultiSelect hinzugefügt
    • behebt Fehler bei WebHooks wenn Avatar für Bot gesetzt wurde
  • Tolle gut dokumentierte API

    Diese Erweiterung ist toll und gut dokumentiert, genau wie man es von Hanashi's Erweiterungen gewohnt ist.