← Dokumentacja
Macierz funkcji
Przegląd „czy to działa?” dla każdej funkcji botów Discorda w GameVox. Użyj go, żeby ocenić zakres migracji, zanim przełączysz URL gatewaya. Kolumna Hostowany samodzielnie pokazuje, czy funkcja działa, gdy twój bot jest zainstalowany na hostowanym samodzielnie serwerze GameVox klienta. Architekturę przekazywania opisuje dokumentacja serwerów hostowanych samodzielnie.
| Obszar | Funkcja | Chmura | Hostowany samodzielnie | Uwagi |
|---|---|---|---|---|
| Gateway | Kodowanie JSON | Tak | Tak | Domyślne; używa go każda biblioteka |
| Kompresja zlib-stream | Tak | Tak | Obsługiwana przez każdą większą bibliotekę | |
| Kodowanie ETF | Nie | Nie | Biblioteki przełączają się na JSON, gdy brakuje encoding=etf | |
| Kompresja Zstandard | Nie | Nie | zlib-stream to uniwersalna alternatywa | |
| Resume / op:6 | Tak | Tak | Bufor wznawiania jest kopiowany do Redis, więc op:6 przetrwa restarty zadań api | |
| Sharding | Tak | Tak | Standardowy hash (guild_id >> 22) % num_shards | |
| REST | CRUD wiadomości | Tak | Tak | Wysyłanie, edycja, usuwanie, usuwanie zbiorcze, pobieranie, przypinanie, pisanie, reakcje |
| CRUD kanałów | Tak | Tak | Chmura: w tym nadpisania uprawnień i zmiana kolejności. Hostowane samodzielnie: zmiana kolejności tak, nadpisania kanałów korzystają z grup | |
| Nadpisania uprawnień kanałów | Tak | Nie | Serwery hostowane samodzielnie używają uprawnień na poziomie grup; PUT nadpisania zwraca 501 | |
| Członkowie / role / bany | Tak | Tak | Pełny CRUD; communication_disabled_until (timeout) nieobsługiwane | |
| Webhooki (kanału i aplikacji) | Tak | Tak | Pełny CRUD + execute (embedy, załączniki, multipart). Wiersze zostają w chmurze; execute zapisuje do kanałów na serwerach hostowanych samodzielnie ścieżką przekazywania botów | |
| Emoji aplikacji | Tylko portal | Tylko portal | Zarządzane w portalu deweloperskim; GET w API botów działa. Zobacz Emoji | |
| Dziennik audytu | Częściowo | Częściowo | Wpisy istotne dla botów; historia nadpisań kanałów nie jest indeksowana | |
| Nagłówki limitów zapytań | Tak | Tak | X-RateLimit-* w każdej odpowiedzi, z uwzględnieniem bucketów | |
| Interakcje | Komendy aplikacji (ukośnikowe, użytkownika, wiadomości) | Tak | Tak | Zbiorczy PUT + pojedynczy CRUD. Komendy są rejestrowane w chmurze dla obu rodzajów serwerów; wywołania na serwerach hostowanych samodzielnie są routowane przez chmurę |
| Przyciski, tekstowe listy wyboru, okna modalne (Komponenty v1) | Tak | Tak | Również odpowiedzi efemeryczne. Tylko na kanałach serwera, nie w wiadomościach bezpośrednich. Zobacz Komponenty wiadomości | |
| Listy wyboru użytkowników, ról, wzmianek i kanałów | Częściowo | Częściowo | Przyjmowane i zapisywane; klienty pokazują je jako wyłączone, więc nigdy nie wywołują interakcji | |
| Komponenty v2 | Nie | Nie | Nieobsługiwane; komponenty układu z v2 nie są wyświetlane | |
| Interakcje w trybie HTTP (endpoint wychodzący) | Częściowo | Częściowo | Wysyłane metodą POST na twój interactions_endpoint_url z podpisem Ed25519, z przełączeniem na gateway, jeśli endpoint zawiedzie. Wymaga połączonej sesji gateway, a treść odpowiedzi jest ignorowana: odpowiadaj przez endpoint callbacku. Zobacz OAuth2 | |
| Głos | UDP voice gateway | Tak | Tak | Osobny dla każdego regionu. Zobacz dokumentację głosu |
| AEAD AES-256-GCM | Tak | Tak | Preferowany | |
| AEAD XChaCha20-Poly1305 | Tak | Tak | Zapasowy | |
| Zmiana stanu głosu przez bota | Tak | Częściowo | Oba: PATCH .../voice-states/{user_id} do wyciszania / przenoszenia / rozłączania. Hostowane samodzielnie: deaf zwraca 501 (brak prymitywu w SFU); przeniesienie wywołuje dwa zdarzenia zamiast jednego | |
| Inne | Emoji serwera (odczyt) | Tak | Tak | Lista + pobieranie; tworzenie/modyfikacja/usuwanie tylko przez portal |
| Soundboard (odczyt) | Tak | Tak | Lista + pobieranie; odtwarzanie przez bota nieobsługiwane | |
| Własny URL (vanity) | Częściowo | Nie | Chmura: odczyt + zmiana (serwery Gold+). Hostowane samodzielnie: PATCH zwraca 501 | |
| Wątki / posty na forum | Zaślepka | Zaślepka | Kanały forum istnieją; CRUD wątków zwraca pusty wynik / 400 | |
| Kanały Stage, AutoMod, zaplanowane wydarzenia | Nie | Nie | Intenty akceptowane, bez zdarzeń | |
| Premium Apps / Entitlements | Nie | Nie | Brak warstwy monetyzacji w v1 | |
| Portal | Zespoły (współwłasność wielu deweloperów) | Tak | Zgodność z Discordem. Zobacz Zespoły | |
| Przeniesienie aplikacji do zespołu | Tak | Jednokierunkowe (tak jak na Discordzie) | ||
| Testerzy aplikacji (lista dozwolonych instalacji prywatnych aplikacji) | Tak | 100 na aplikację. Zobacz Zespoły → Testerzy | ||
| URL-e instalacji OAuth2 (konteksty użytkownika + serwera) | Tak | Brak / Dostarczony przez GameVox / Własny URL. Zobacz OAuth2 | ||
| Rotacja client secret | Tak | Hash bcrypt; pokazywany raz przy tworzeniu / rotacji | ||
| Wpis w katalogu botów | Tak | Wpisy zatwierdzane przez administratorów na gamevox.com/bots | ||
Legenda
- Tak: działa jak na Discordzie, bez zmian w kodzie.
- Częściowo: zgodne na poziomie protokołu, ale bez części semantyki. Można bezpiecznie wywoływać, ale zdarzenia mogą nie przychodzić.
- Nie: akceptowane przez protokół (bez 4014), ale nic nie robi. Zakładaj, że tego nie ma.