🧩 Plugin & Bot Platform

Deinen Server erweitern

Native C++ Plugins für maximale Performance — oder Remote-Bots mit WebSocket & REST API in C#, Node.js oder Python.

🔌
Native Plugins (C++)
DLL/SO in den plugins/ Ordner — wird beim Serverstart automatisch geladen. Vollständige Audio- & Event-API.
🤖
Remote Bots
Verbinde dich per WebSocket-Gateway & REST API von außen. C#, Node.js, Python — welche Sprache du willst.
Beides kombinierbar
Plugins laufen in-process für niedrigste Latenz. Bots laufen extern für einfaches Deployment und eigene Skalierung.

Native Plugins (C++)

1 Plugin
🔧

Plugin SDK v1.1

C++20 SDK auf GitHub

Header-only SDK zum Entwickeln eigener nativer Plugins. Enthält Beispiel-Plugin (SoundboardPlugin) mit Audio-Injection, Chat-Befehlen und Auto-Moderation.

Plugin API — wichtigste Funktionen
nxp_send_message(ctx, channelId, text) — Nachricht senden
nxp_inject_voice(ctx, channelId, pcm, n) — PCM-Audio injizieren
nxp_kick_user(ctx, clientId, reason) — Nutzer kicken
nxp_ban_user(ctx, clientId, reason, secs) — Nutzer bannen
nxp_move_user(ctx, clientId, channelId) — Nutzer verschieben
nxp_set_muted(ctx, clientId, muted) — Nutzer stummschalten
nxp_set_interval(ctx, ms, cb, data) — Timer registrieren
nxp_db_set / nxp_db_get(ctx, key, …) — Persistente Daten
Minimales Plugin
// Minimal-Plugin — drei Exporte #include "nexvoice_plugin.h" static const NXP_PluginInfo s_info = { "MeinPlugin", "1.0", "IchBin", "Beispielplugin" }; NXP_DEFINE_API(); extern "C" NXP_EXPORT const NXP_PluginInfo* nxp_plugin_info() { return &s_info; } extern "C" NXP_EXPORT NXP_Result nxp_plugin_init(NXP_Context* ctx, const NXP_HostAPI* api) { NXP_INIT_API(api); nxp_send_message(ctx, 1, "Plugin geladen!"); return NXP_OK; }

Weitere Beispiele im SDK-Paket unter Plugins/Examples/

Remote Bots

WebSocket + REST
Bot-Token erstellen
  1. 1
    Server starten
    NexVoice Server mit aktiviertem Integrated Panel starten
  2. 2
    Admin Panel öffnen
    Im Server-Panel zu Bot Tokens → Bot erstellen navigieren
  3. 3
    Token konfigurieren
    Name, Beschreibung und Berechtigungen festlegen
  4. 4
    Token kopieren
    Generierten Token sicher speichern
  5. 5
    Umgebungsvariable
    NEXVOICE_TOKEN=dein_token setzen
Token-Berechtigungen
read_messages send_messages manage_users manage_channels manage_roles voice admin
WebSocket Events
Gateway: ws://host:9990/gateway  ·  Auth: Authorization: Bot <token>
READY Bot authentifiziert, Session gestartet
MESSAGE_CREATE Chat-Nachricht gesendet
USER_JOIN Nutzer mit Server verbunden
USER_LEAVE Nutzer getrennt
VOICE_JOIN Nutzer betritt Voice-Channel
VOICE_LEAVE Nutzer verlässt Voice-Channel
VOICE_MOVE Nutzer zwischen Channels verschoben
VOICE_STATE_UPDATE Mute/Deafen Status geändert
CHANNEL_CREATE Channel erstellt
CHANNEL_DELETE Channel gelöscht
ROLE_UPDATE Nutzerrolle geändert
INTERACTION_CREATE Slash Command ausgeführt
REST API
http://host:9988/api/v1 · Auth: Authorization: Bot <token>
Channels
GET /channels Alle Channels auflisten
POST /channels Channel erstellen
PATCH /channels/:id Channel bearbeiten
DELETE /channels/:id Channel löschen
POST /channels/:id/messages Nachricht senden
DELETE /channels/:id/messages/:mid Nachricht löschen
Users & Slash Commands
GET /users Online-Nutzer auflisten
GET /users/:id Nutzerdetails abrufen
PATCH /users/:id Rolle/Mute anpassen
POST /users/:id/kick Nutzer kicken
POST /users/:id/ban Nutzer bannen
POST /users/:id/move In Channel verschieben
GET /commands Slash-Befehle auflisten
POST /commands Slash-Befehl registrieren
Rate Limit: 50 Anfragen/Sekunde pro Bot & Endpoint. TLS: In Produktion wss:// und https:// verwenden.

Plugin oder Bot entwickelt?

Das offizielle SDK und alle Plugins sind Open Source auf GitHub. Pull Requests sind willkommen — oder öffne ein Issue für Feature-Wünsche.