Bootstrap Framework 3.3.6

Over a dozen reusable components built to provide iconography, dropdowns, input groups, navigation, alerts, and much more...

Wenn du Hilfe benötigst, stelle deine Frage hier.
Um die Entwickler etwas zu entlasten, können Nutzer anderen Nutzern auch helfen.
By Mulano77
Posts
#11392
Hallo,

In unregelmäßigen Abständen verliert der MusicBot die Verbindung zum Discord. An Discord kann es nicht liegen, da er rund um die Uhr mit Usern besetzt ist und sie sagten, das keine Probleme mit der Verbindung ihrerseits bestand. Nunja, auf jeden fall reconnected er. Mal sind es 2h mal sind es auch 4h. Laufen tut ein Radio Webstream. Fehlermeldung:
Code: Select all
Lost connection to voice server while sending. Reconnecting.
dgVoice: PCM Channel closedtime="2022-10-29T07:35:21+02:00" level=info msg="Starting audio processing."
Der Bot ist dann kurz offline. Nach dem Reconnect sendet er auch kein "Now Playing" mehr.

Weitere Probleme:
  • die Einstellungen unter "Einstellungen -> Nutzerberechtigungen" werden nicht gespeichert
  • Befehle funktionieren nicht
  • mp3Tag wird nicht gelesen. stattdessen wird der Pfad der Mp3 angezeigt
Habe noch einen eigenen Bot laufen, der verliert die Verbindung nicht

Installiert mit TS3MB_CONTROL - A TS3MUSICBOT CONTROL SCRIPT! V1.0.0
System: Ubuntu 22.04
User avatar
By Crypto90
Posts Custom Custom Avatar
#11394
Entschuldige die Verzögerung, bei dringenden Anliegen schreibe am besten ein Ticket über das Support System, dann werden auch alle von uns benachrichtigt.

Ich hatte paar Tage nicht ins Forum schauen können, da ich umbauarbeiten privat im Haus hatte.

Die Bot Voice Verbindungen sowie die User Voice Verbindungen zu den Discord Vocie Nodes reconnecten alle nach einer Zeit.
Die User merken davon nur meistens nichts, da dass schnell geht. Über die Discord Bot API muss hier ein reconnect durchgeführt werden. Bei Discord wechseln die voice nodes ständig. Als user sieht man das, wenn die Signal Qualität runter und wieder hoch geht, dann wechselt ein User die Voice Node.

Ich setze mich da mal dran und schaue, ob es mittlerweile eine schönere Lösung als die Reconnects gibt.


Wenn Befehle nicht gehen, liegt das an fehlenden Rechten der Discord BOT API. Wichtig hierbei ist:

- Make sure you disable public bot. (you create your own private bot which is not shared with anyone else!)
- Make sure you enable presence intent.
- Make sure you enable server members intent.
- Make sure you enable message content intent. (otherwise chat commands won't work!)


mp3Tag wird nicht gelesen. stattdessen wird der Pfad der Mp3 angezeigt
Was genau meinst du damit?
User avatar
By Crypto90
Posts Custom Custom Avatar
#11396
die Einstellungen unter "Einstellungen -> Nutzerberechtigungen" werden nicht gespeichert
Kann ich sogar reproduzieren, ich schaue gerade wieso das nicht mehr geht.



UPDATE:
Habe alles mal durch getestet.
Soweit ich sehe geht folgendes:
Berechtigungen setzen und speichern -> berechtigungen werden gesetzt.

"alle berechtigungen entfernen" und speichern -> alle berechtigungen werden gelöscht.
"alle berechtigungen setzen" und speichern -> alle berechtigungen werden gespeichert.

"alle berechtigungen löschen" und einzeln anklicken welche man aktivieren möchte -> wird auch korrekt gespeichert.


Wo ich einen Bug gefunden habe:
wenn man einzeln eine Bereechtigung entfernen will und speichert, wird das nicht übernommen.
User avatar
By Crypto90
Posts Custom Custom Avatar
#11397
die Einstellungen unter "Einstellungen -> Nutzerberechtigungen" werden nicht gespeichert
Habe ich soeben behoben. Hier war ein Fehler im Webinterface Javascript code.
Ein Code für die Einstellungen, was für die Checkboxen zuständig war, hat hier auch Einfluss auf die Nutzerberechtigungen Checkboxen gehabt, was das Problem verursachte.

Es wird hier gleich ein Webinterface Update geben. Webinterface Version: 4.6.5.0 wird es behoben sein.
User avatar
By Crypto90
Posts Custom Custom Avatar
#11398
Um nochmal alles zusammen zu fassen:


Discord reconnects und anschließend kein "Now playing" mehr.
Sehe ich mir an.

die Einstellungen unter "Einstellungen -> Nutzerberechtigungen" werden nicht gespeichert
Wurde behoben.

Befehle funktionieren nicht
Liegt sehr wahrscheinlich an nicht gesetzer Berechtigun der Discord Bot API: message content intent, was aktiviert sein muss.
Falls man das vergisst, ist folgender Fehler im discord client log zu sehen:
Code: Select all
 time="2022-10-07T00:46:29+01:00" level=info msg="Received message content is empty."
mp3Tag wird nicht gelesen. stattdessen wird der Pfad der Mp3 angezeigt
Bitte um mehr Info, was hier genau gemeint ist.
By Mulano77
Posts
#11399
Danke für Deine Antwort. Das mit dem Reconnecten wusste ich nicht. Mir ist es nur aufgefallen, das die Discord Log sehr lang ist und das meiste vom Bot stammt. reicht es nicht, wenn er nur einmal die Stunde reconnected?

Das mit den Befehlen fubktioniert jetzt.
mp3Tag wird nicht gelesen. stattdessen wird der Pfad der Mp3 angezeigt
Bitte um mehr Info, was hier genau gemeint ist.
Der MP3Tag der jeweiligen MP3 wird nicht angezeigt. Bei mir der Fall "Artist - Songtitel". Im VLC oder anderen MP3 Playern werden diese korrekt angezeigt. Im Discord wird nur der Pfad zur jeweiligen MP3-Datei angezeigt. Habe schon verschiedene MP3Tags installiert unter Linux die diesen auslesen können wie zB MP3Info.

Image

Edit: Gibt es eine Lösung dafür, das der Player nach ca 10 Titeln nicht crasht? Sehe auch keinen Grund für einen Crash.

Log:
Code: Select all
...
time="2022-11-15T04:06:12+01:00" level=info msg="-1;2;Now playing: Shinory/Christmas Songs/112-kane-it_wont_be_the_same_without_you_but_maybe_next_year_it_will_be.mp3"
-1;2;Now playing: Shinory/Christmas Songs/111-kelly_clarkson-my_grown_up_christmas_list.mp3
time="2022-11-15T04:09:56+01:00" level=info msg="-1;2;Now playing: Shinory/Christmas Songs/111-kelly_clarkson-my_grown_up_christmas_list.mp3"
time="2022-11-15T04:10:19+01:00" level=error msg="Lost connection to voice server while sending. Reconnecting."
time="2022-11-15T04:10:19+01:00" level=info msg="Reconnecting to last voice channel: Channel Name: Music is my Life | Channel ID: 1037361536303378472 | Guild ID: 1010951157830660197"
dgVoice: PCM Channel closed-1;2;Player instance crash detected. Restarted. Restarting last playback: "../playlist/ChristmasSongs" 0
time="2022-11-15T04:10:20+01:00" level=info msg="-1;2;Player instance crash detected. Restarted. Restarting last playback: \"../playlist/ChristmasSongs\" 0"
time="2022-11-15T04:10:20+01:00" level=info msg="Starting audio processing."
time="2022-11-15T04:10:22+01:00" level=info msg="Received message content is empty."
-1;2;Now playing: EMPTY
time="2022-11-15T04:10:36+01:00" level=info msg="-1;2;Now playing: EMPTY"
User avatar
By Crypto90
Posts Custom Custom Avatar
#11400
Der Bot hat keinerlei Einfluss auf die Reconnects.
Besser gesagt, die discord voice server brechen weg/beenden sich/stoppen sich und neue werden erstellt.
Clients müssen dann erneut verbinden.
Clients wie auch der Bot haben keinen Einfluss auf Discords Voice Server. Etwas anderes als direkt bei verbindungs abbruch erneut eine neue Verbindung aufzubauen, bleibt nicht. Da der Disconnect nicht vom Bot kommt, sondern auf Discords seite dessen Server.

MP3 Tags werden derzeit gar nicht ausgelesen. Wäre aber etwas, was wir ergänzen können, bisher war hierzu die Nachfrage nicht da. Ich setze das mal auf unsere Feature Request Liste.

Nicht Jede Datei hat Tags gesetzt. Der Pfad gibt genau an, wo etwas liegt, das gerade abgespielt wird.

Das kommt auch noch daher, weil man früher den exakten pfad als Befehl angeben musste, um etwas abzuspielen.
Mittlerweile ist es aber möglich, ohne den gesamten Pfad zu wissen, nur mit einem Teil des Namens die Datei abzuspielen, beispiel:
!music happychristmas
oder
!music war_is_over

Ein Substring reicht aus, das triggert eine Suche der musiclist und spielt den 1. Fund direkt ab.


Normal sollte bei hochgeladenen dateien der player nicht crashen.
Schau mal, ob es immer bei der selben Datei crasht.
Oftmals sieht man "defekte" dateien, mit dem der player nicht zurecht kommt, auch an dem fehlenden TAG für duration und bitrate, wenn statdessen ein rotes ERROR als tag sichtbar ist.
Manchmal wird es auch durch sonderzeichen verursacht.

Bei sonderzeichen ist es noch wichtig, dass die locales des servers konfiguriert sind (DE UTF8).

Das geht in der Regel mit dem Linux Befehl:
dpkg-reconfigure locales

Bei lokalen Dateien crasht oder freezed der player nicht grundlos. hier falls man nicht weiter kommt player debug aktivieren. bei externen quellen, kann ein player freeze gründe haben wie: verbindung zur quelle wird nicht aufgebaut, ssl missmatch, quelle lädt zu langsam.

Aus deinem Log ist ersichtlich, dass der player crasht, weil wärend der wiedergabe der server weg gebrochen ist. hier entsteht ein datenstau im stream, weil der abnehmer (discord voice node) keine daten mehr annimmt.

Das kann ich mir mal anschauen, dass die wiedergabe in allen fällen immer weiter läuft, auch wenn die verbindung kurzzeitig zum discord voice server unterbrochen ist. Das müsste sich beheben lassen.
User avatar
By Crypto90
Posts Custom Custom Avatar
#11401
Ich sehe mir den reconnect Fall in Zusammenhang mit player crash/freezes mal an, ich muss am discord client auch einen anderen kleineren Fehler beheben, da kann ich beides zusammen ansehen.

Alles klar, werde ich, wenn ich dafür Zeit ha[…]

1. Shell Script (ts3musicbot_service.sh) Create […]

Unable to set Avatar error

Really? We have not made a change regarding the av[…]

youtube

Schauen wir uns an.

Swap-in out addons, use only what you really need!