For now I've solved this by the following "hack-code" by changing the connection code.
Code:
function (teamspeakClient, callback) {
console.log("Using virtual server " + config.q_vserverid + " now.");
var rnum = Math.floor(Math.random() * Math.floor(1000));
teamspeakClient.send("clientupdate", {client_nickname: "Steam-Bot"+rnum}, function (err) {
if (typeof err !== "undefined") {
callback(err);
} else {
console.log("Changed query client name.");
callback(null, teamspeakClient);
}
})
}
This avoids the error by effectively giving the bot a unique nickname every-time it connects. But it's a rather inelegant solution, and I'm not exactly sure why its required in the first place.
Only thing I see in the Teamspeak 3 Logs, Prior to changing the bot to have a random Nickname:
Code:
2019-03-26 20:26:37.045536|INFO |VirtualServer |2 |query client connected 'Steam-Bot'(id:565) from 82.***.***.***:54266
2019-03-26 20:26:37.437553|INFO |VirtualServerBase|2 |query client disconnected 'Steam-Bot'(id:565) reason 'reasonmsg=connection lost'