Zrzur Entwickler

Zrzur-Bot-API

Ein Bot ist ein Zrzur-Konto, das ein Programm steuert. Er ist wie ein Mitglied auf Servern, liest und sendet Nachrichten, antwortet auf Slash-Befehle, zeigt Schaltflächen und Formulare, moderiert, postet Dateien und kann Sprachkanälen beitreten. Menschen installieren ihn; dein Code läuft auf deinem eigenen Rechner oder Server.

Diese Seiten sind alles, was du brauchst. Beginne mit Starte deinen Bot und baue dann den vollständigen Bot.

So funktioniert ein Bot

  1. Du erstellst im Entwicklerportal eine Anwendung. Sie bringt einen Bot-Benutzer und ein Token mit, das Passwort des Bots.
  2. Jemand mit „Server verwalten“ installiert den Bot auf einem Server und gibt ihm Berechtigungen.
  3. Dein Programm ruft die REST-API über HTTPS auf, mit dem Token im Header x-bot-token. So handelt ein Bot.
  4. Dein Programm hält eine Gateway-Verbindung offen, einen WebSocket. So hört ein Bot: Befehle, Klicks, Nachrichten und Mitgliederänderungen kommen dort als Ereignisse an.

Der Weg vom Nichts zum fertigen Bot

  1. Starte deinen Bot: eine Anwendung, ein Token, ein erster Befehl.
  2. Anwendungen und Tokens: jede Einstellung des Entwicklerportals und wie du einen Bot installierst.
  3. Gateway: verbinden, verbunden bleiben, nach einem Abbruch zurückkommen.
  4. Slash-Befehle, Auf Interaktionen antworten und Schaltflächen, Menüs und Formulare.
  5. Nachrichten, Rollen und Berechtigungen, Moderation.
  6. Fehler, Ratenlimits, Tokens schützen, Betrieb in Produktion.

Basis-URLs

DienstURL
REST-APIhttps://api.zrzur.com
Gateway (WebSocket)wss://events.zrzur.com
Dateienhttps://cdn.zrzur.com
Sprache (LiveKit)wss://voice.zrzur.com

Selbst gehostete Server haben eigene Adressen. GET / auf der API liefert sie, zusammen mit den Limits dieses Servers. Lies diese Felder (die Antwort hat mehr; diese ist gekürzt):

{
  "zrzur": "26.0.0",
  "ws": "wss://events.zrzur.com",
  "app": "https://app.zrzur.com",
  "features": {
    "autumn": { "enabled": true, "url": "https://cdn.zrzur.com" },
    "january": { "enabled": true, "url": "https://api.zrzur.com/january" },
    "livekit": {
      "enabled": true,
      "nodes": [{ "name": "fra", "lat": 50.11, "lon": 8.68, "public_url": "wss://voice.zrzur.com" }]
    },
    "webhooks": false,
    "forwarding": false,
    "polls": false,
    "server_events": false,
    "limits": {
      "default": { "message_length": 2000, "message_attachments": 5, "file_upload_size_limits": { "attachments": 20000000 } }
    }
  }
}
FeldWas es ist
zrzurVersion des Servers; siehe API-Änderungsprotokoll
wsGateway-Adresse
features.autumn.urlDateiserver: Hoch- und Herunterladen
features.january.urlMedien-Proxy für Linkvorschauen
features.livekit.nodes[].public_urlSprachserver
features.limits.defaultLimits eines Kontos, etwa die Nachrichtenlänge
features.webhooks, features.forwarding, features.polls, features.server_eventsOb diese Installation Webhooks, das Weiterleiten von Nachrichten, Umfragen und geplante Events eingeschaltet hat. Wo eins false ist, antworten seine Routen FeatureDisabled (Webhook-Adressen: 404 NotFound)
appWeb-App, für Links, die du Menschen zeigst

GET /

Query Node. Fetch the server configuration for this Zrzur instance.

Ratenlimit: any_dlta, 20 / 10 s

Was nicht unterstützt wird

Was jeder Status bedeutet

Jeder Endpunkt in dieser Referenz zeigt eine dieser Markierungen.

StatusEndpoints
supported101
partial4
unverified52
unsupported33