jhakonen / wot-teamspeak-mod

Mod for integrating TeamSpeak into World of Tanks
GNU Lesser General Public License v2.1
36 stars 8 forks source link

Mod doesn't work with TeamSpeak 3.1.3 #29

Closed jhakonen closed 5 years ago

jhakonen commented 7 years ago

TeamSpeak 3.1.3 has an updated ClientQuery plugin. The plugin now requires applications (like TessuMod) to authenticate using an API key. The API key is shown in ClientQuery plugin's settings.

For more info see the release annoucement: http://forum.teamspeak.com/threads/130474-TeamSpeak-Client-3-1-3-released

Bug reported by Grumpelumpf and Dyme.

jhakonen commented 7 years ago

When connecting to ClientQuery (with e.g. PuTTY; connection type: telnet, hostname: localhost, port: 25639) the welcome message has changed. There is a new line about authentication:

TS3 Client
Welcome to the TeamSpeak 3 ClientQuery interface, type "help" for a list of commands and "help <command>" for information on a specific command.
Use the "auth" command to authenticate yourself. See "help auth" for details.
selected schandlerid=1

Authentication help:

help auth
Usage: auth apikey={string}

Authenticates connecting application with API key of user.

Example:
   auth apikey=AAAA-BBBB-CCCC-DDDD-EEEE
   error id=0 msg=ok

error id=0 msg=ok

Trying any command other than auth or help before authentication ends up to an error:

use schandlerid=1
error id=1796 msg=currently\snot\spossible

Providing invalid authentication key gives following error:

auth apikey=gdfgdfgdfg
error id=1538 msg=invalid\sparameter

Providing valid key (copied from ClientQuery's settings) succeeds:

auth apikey=FB31-1LF0-24XI-K7TZ-GZ1X-7UWH
error id=0 msg=ok

After authentication other commands start to work as expected:

use schandlerid=1
selected schandlerid=1
error id=0 msg=ok
jhakonen commented 7 years ago

The fix includes a notification which asks user to set the API key: premission-needed

When the mod has succesfully authenticated there will be another notication to let user know that the authentication was ok: permission-granted

jhakonen commented 7 years ago

Should really make this into a dialog of some kind which would allow user to enter the API key into a text input field, but for that I would need tools in issue #21, so that has to wait for 0.7 version.

balexandre commented 7 years ago

Just to provide a better info to all that want to find the API Key:

in TeamSpeak choose Tools > Options and then

jhakonen commented 5 years ago

I ended up discarding the old 0.7 development, and made a new 0.7 based on 0.6-fixes branch. As such I need to rethink how to create the dialog for inputting the API key. I'll close this issue for now.