Ts3audiobot: Debug: 525: the command failed to execute: client is modified (missing permission:-1)

Created on 7 Feb 2017  路  23Comments  路  Source: Splamy/TS3AudioBot

[20:54:32]   Info: [============ TS3AudioBot started =============]
[20:54:32]   Info: [=== Date:        Tuesday, February 7, 2017 ===]
[20:54:32]   Info: [=== Time:                       8:54:32 PM ===]
[20:54:32]   Info: [==============================================]
[20:54:32]   Info: [============ Initializing Commands ===========]
[20:54:32]   Info: [============ Initializing Modules ============]
[20:54:32]   Info: Found old history database vesion, upgrading now.
[20:54:32]   Info: [=========== Initializing Factories ===========]
[20:54:32]   Info: [=========== Registering callbacks ============]
[20:54:32]   Info: [================= Finalizing =================]
[20:54:32]   Info: [============== Connected & Done ==============]
[20:54:33]  Debug: 525: the command failed to execute: client is modified (missing permission:-1)
[20:54:38]  Error: Critical program failure!. Exception:
 MSG: Cannot access a disposed object.
Object name: 'System.Net.Sockets.UdpClient'.
TYPE:ObjectDisposedException
STACK:  at System.Net.Sockets.UdpClient.CheckDisposed () [0x00016] in <5071a6e4a4564e19a2eda0f53e42f9bd>:0
  at System.Net.Sockets.UdpClient.Send (System.Byte[] dgram, System.Int32 bytes) [0x00000] in <5071a6e4a4564e19a2eda0f53e42f9bd>:0
  at TS3Client.Full.PacketHandler.SendRaw (TS3Client.Full.OutgoingPacket packet) [0x0001d] in <99f01da4df394df7bb7885b3d01b460f>:0
  at TS3Client.Full.PacketHandler.ResendLoop () [0x000cf] in <99f01da4df394df7bb7885b3d01b460f>:0
  at System.Threading.ThreadHelper.ThreadStart_Context (System.Object state) [0x00017] in <8f2c484307284b51944a1a13a14c0266>:0
  at System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Ob$
  at System.Threading.ExecutionContext.Run (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object sta$
  at System.Threading.ExecutionContext.Run (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object sta$
  at System.Threading.ThreadHelper.ThreadStart () [0x0000b] in <8f2c484307284b51944a1a13a14c0266>:0

[20:54:38]  Error: Critical program failure!. Exception:
 MSG: A connection attempt failed because the connected party did not properly respondafter a period of time, or established connection failed because conne$
TYPE:SocketException
STACK:  at System.Net.Sockets.Socket.ReceiveFrom_nochecks_exc (System.Byte[] buf, System.Int32 offset, System.Int32 size, System.Net.Sockets.SocketFlags fla$
  at System.Net.Sockets.Socket.ReceiveFrom (System.Byte[] buffer, System.Int32 offset, System.Int32 size, System.Net.Sockets.SocketFlags socketFlags, System$
  at System.Net.Sockets.Socket.ReceiveFrom (System.Byte[] buffer, System.Net.EndPoint& remoteEP) [0x0000d] in <5071a6e4a4564e19a2eda0f53e42f9bd>:0
  at System.Net.Sockets.UdpClient.Receive (System.Net.IPEndPoint& remoteEP) [0x00014] in <5071a6e4a4564e19a2eda0f53e42f9bd>:0
  at TS3Client.Full.PacketHandler.FetchPacket () [0x000af] in <99f01da4df394df7bb7885b3d01b460f>:0
  at TS3Client.Full.Ts3FullClient.NetworkLoop () [0x00010] in <99f01da4df394df7bb7885b3d01b460f>:0
  at System.Threading.ThreadHelper.ThreadStart_Context (System.Object state) [0x00017] in <8f2c484307284b51944a1a13a14c0266>:0
  at System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Ob$
  at System.Threading.ExecutionContext.Run (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object sta$
  at System.Threading.ExecutionContext.Run (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object sta$
  at System.Threading.ThreadHelper.ThreadStart () [0x0000b] in <8f2c484307284b51944a1a13a14c0266>:0

[20:54:38]   Info: Exiting...


bug

Most helpful comment

Haha, it seems to work now! It was indeed that line. Thanks for the support!

Time to test this baby out!

All 23 comments

Make sure that the bot's assigned to a servergroup with the following permissions: (https://github.com/Splamy/TS3AudioBot/issues/29#issuecomment-233582408

Check and check, I gave the bot the following permissions, called it "ServerBot" and it's (9) - so I filled in "9".

AudioFramework::defaultVolume=5
AudioFramework::maxUserVolume=10
QueryConnection::host=149.210.217.149
QueryConnection::port=9987
QueryConnection::identity=XXXX
QueryConnection::identityoffset=904
QueryConnection::ffmpegpath=ffmpeg
QueryConnection::SuppressLoopback=True
HistoryManager::historyFile=history.db
HistoryManager::fillDeletedIds=True
PluginManager::PluginPath=Plugins
PlaylistManager::playlistPath=Playlists
YoutubeFactory::XXXX
YoutubeFactory::youtubedlpath=
WebData::HostAddress=
WebData::Port=8180
WebData::EnableApi=False
WebData::EnableWebinterface=False
MainBot::logFile=log_ts3audiobot
MainBot::adminGroupId=9

The adminGroupId is the group which is allowed to execute admin commands, it doesn't have anything to do with your bot. You need to run the bot and as soon as he enters you will need to put him in the right group before he times out. After that you can restart the bot and it should work

"client is modified" is actually a lower level problem, the server refuses the custom ts3 client
which server version do you have?
EDIT:

  • also are you using master or develop?
  • If you are on develop try to go to TS3Client/Full/Ts3FullClient.cs and change on line 42
    ClientPlattform.Linux to ClientPlattform.Windows

I just doublechecked and I get that error too. Try to start a bot on your side Splamy...
I'm using 3.0.13.6 (08.11.2016 09:48:33) on Linux

Version: 3.0.12.4 on Linux

the $ at the end of the identity is irritating me, did you modify that? gimme a sec lookin into that

apart from that, for the future: _DO NOT POST ANY IMPORTATNT IDENTITY KEY PUBLICLY !!_

mind if i quickly join on your server to debug my client?

Nope, probably the copy-paste that did that, if I look in the config myself - there is a $ because it's not the end of the line. If I turn PuTTy fullscreen, the $ dissapears (it was not the complete identity)

Alright found the bug: If you're using a Version-Sign from Windows with ClientPlattform set on Linux it logically fails^^
Just change the 42 line in Ts3FullClient.cs to ClientPlattform.Windows or use a Linux VersionSign

Sure, go ahead - teamspeak.hiddenprocess.com (it's a public server for now)

https://github.com/Splamy/TS3AudioBot/blob/master/TS3Client/Full/Ts3FullClient.cs#L41 It's actually wrong in the current master branch :o)

If you're using a Version-Sign from Windows

I assumed that it would fail, thats why I was testing it a lot yesterday, surprisingliy I can join with any system selected to my server O.o maybe they changed it in a newer version (I have 3.0.12.4)

Strange thing is, I'm on 3.0.12.4 on Linux too

Splamy are you running your server on Linux too?
@chrisvdgeld does it work if you change it to a Linux version or set ClientPlattform to Windows? (you need to redo the xbuild command after this to recompile it)

yeah as said, this fixes it
go to TS3Client/Full/Ts3FullClient.cs and change on line 42 and change ClientPlattform.Linux to ClientPlattform.Windows (and as NoTeefy mentioned don't forget to recompile)

I'm running linux too

...I will fix that with the next commit, was actually just messing around testing the ts server stability and appartently forgot to change it back again

Strange behaviour... I'm almost pretty sure you and Chris are running different builds (in the same version range) and the one that you're using didn't had that function implemented.

Haha, it seems to work now! It was indeed that line. Thanks for the support!

Time to test this baby out!

There is a wiki since a few days, you can take a look there (and give feedback is something is missing :) )

Everything seems to be working fine now, music is also playing. I only have one question however;

Is it possible to put the bot in channel commander, so only the people who make themselves channel commander can hear the bot?

Right now there is no channel commander mode, although the idea is kinda neat,
you can manually remove the the cannel from the subscription list with !unsub chan <id> and ppl which want to listen can write him !sub
also when the next song starts this will be resetted
I know this might not be the best solution right now, but we had nothing better yet. You can leave us a new issue if you have a neat idea :)

The solution works! Thanks, I'll keep checking for further commits! Loving this so far ;).
Wish I could contribute but I simply don't have the knowledge :(.

Another possibility, is it possible for the bot to be auto-muted? So the people who want music can unmute him. (I think it's better than the opposite, which also works ofcourse).

Sure, I will add some custamizeability when I get to :)

Was this page helpful?
0 / 5 - 0 ratings

Related issues

Bluscream picture Bluscream  路  6Comments

ManuPlaysLP picture ManuPlaysLP  路  5Comments

Americanu picture Americanu  路  3Comments

lgund picture lgund  路  6Comments

officialtaxz picture officialtaxz  路  6Comments