Community Forums Today's Posts     Member List     Archive    
Results 1 to 8 of 8
  1. #1
    Join Date
    Jun 2012
    Location
    Earth
    Posts
    137

    Requesting 'clientlist -ping' or -bytes if possible.

    Hi there, this is my first thread on the forum, so I hope I'm sticking this in the right location..

    I thought I'd publicly post my question since maybe others might have the same need for this.

    I'm currently designing a server-side bot, and in a new feature I'm working on I need to get every clients ping that's currently connected. As far as I can see neither clientinfo or clientlist display the pings.

    OK if we can't get the pings through query (..?), we can get the bytes sent / received for the past second / minute etc.. But this requires an individual query per client ID, through clientinfo - Times how many clients are online...

    My bot needs to pretty much gather all client pings and / or bytes all at once, with a single query such as 'clientlist -bytes' or preferably 'clientlist -ping', to make it work in a timely manner.

    Otherwise, as it stands right now I'll need to fork a new process / socket per client to poll each clients ping / byte traffic while they're connected.. On a large server with 200+ clients, this might not be such a great idea..?

    So basically I'm requesting a feature such as 'clientlist -ping' if we can some how gather pings this way.. or since byte traffic seems to already be implemented under clientinfo, can we get that byte traffic under a global/client list such as 'clientlist -bytes' maybe?

    That type of information available would definitely be welcomed on my end as a programmer..
    I felt like private messaging my questions / concerns to SilentStorm all the time was getting on his nerves so here I am

    Thx guys.

  2. #2
    Join Date
    Jun 2012
    Location
    Portugal
    Posts
    150
    At the end of the file you have properties that you can request:

    http://media.teamspeak.com/ts3_liter...y%20Manual.pdf

  3. #3
    Join Date
    Jun 2012
    Location
    Earth
    Posts
    137
    Care to elaborate on that? If you're talking about all the client properties, those are individual client properties that require independent queries to each client for information.
    Such as;
    CONNECTION_BANDWIDTH_SENT_LAST_SECOND_TOTAL
    CONNECTION_BANDWIDTH_RECEIVED_LAST_SECOND_TOTAL

    Those are the only client properties I can find showing ones bandwidth, and they require 'clientinfo' to each client ID..

    I'm asking to show all client byte (or ping would be nicer) properties using 'clientlist' instead of independently using clientinfo on each client, one at a time.. which really sucks...

    I've been brainstorming over a few workarounds for this, but if there was a 'clientlist -bytes' or something similar, that gave me each CL_ID + bytes in/out past second in one query.. I'd be a happy Perlmonk.

    I would actually love to see client pings under clientinfo / clientlist if at all possible..
    Last edited by Scor9ioN; 20-07-2012 at 20:18.

  4. #4
    Join Date
    Jun 2012
    Location
    Portugal
    Posts
    150
    Example I have in one of my scripts in php (with the php framework):

    PHP Code:
        $ts3_VirtualServer TeamSpeak3::factory("serverquery://"$conf['user'] . ":" $conf['password'] . "@" $conf['ip'] . "/?server_port=" $conf['port']);
        
    $clients $ts3_VirtualServer->request("clientlist -uid -groups -client_nickname -clid -cldbid")->toList(); 
    You can request more just add it. It works for me.
    $clients will be an array and a foreach can be used to loop through all clients

    I can't explain in other programming language, hope you understand....

  5. #5
    Join Date
    Jun 2012
    Location
    Earth
    Posts
    137
    Using 'clientlist -uid -groups -client_nickname -clid -cldbid' works fine (minus -clid -cldbid -client_nickname, since those don't do anything). But is there a -ping or -byte trigger...?

    I've noticed in the past few releases or so -away and -ip were added, is there something related to my needs? bytes in/out past second or pings..?
    Last edited by Scor9ioN; 20-07-2012 at 22:44.

  6. #6
    Join Date
    Jun 2012
    Location
    Portugal
    Posts
    150
    Try adding for example -connection_bandwidth_sent_last_second_total (taken for what I mentioned in the first post)

    That example is the total up/down per sec in the last second

  7. #7
    Join Date
    Jun 2012
    Location
    Earth
    Posts
    137
    ...... I appreciate your help but that trigger doesn't work.. I tried a few methods to my madness before I created this thread

    Usage: clientlist [-uid] [-away] [-voice] [-times] [-groups] [-info] [-country] [-ip]

    So essentially I'm adding a future request I guess by asking for a -ping and/or -bytes flag to the clientlist syntax line.
    Last edited by Scor9ioN; 20-07-2012 at 22:14.

  8. #8
    Join Date
    Jun 2012
    Location
    Earth
    Posts
    137
    I'm going to expand on my thread here with a few more questions... Sorry TS3 team

    And since I've basically worked around the clientlist -bytes request by spawning individual sockets/threads per client, and monitoring ones bytes sent & received this way.. I guess the need for a global printout for every clients bytes or perhaps one day pings (would be awesome) isn't such a concern now, but I'd still love to see those pings somehow if possible. :P

    Since I'm hosting two servers on two different IPs, two different boxes, with two versions of my latest ЯbMod I've been developing this summer, I get to stress TS3 quite a bit lately. In doing so I have a few questions, maybe suggestions, bug reports to make here.

    Icons, I mentioned this under another thread someone started, but since I'm building a list of sorts here, I think this is pretty relevant to every server administrators icon issues, if encountered.


    - 10 digit icon checksum names.

    When you upload a nice little icon to the TS3 server instance, it changes the name to the CRC32 checksum of the file. Fine but when you try and load those 10 digit ('icon_0123456789') icons once uploaded, they usually won't get selected from my experience.

    I've issued client, servergroup, channelgroup query's through my Mod on 10 digit names and most (not all) but most won't display, you'll get an error that the file wasn't found.

    Like I stated in the other thread, I usually go in with root and trim every 10 digit icon down to 9 in length, and then my query commands select them with no problem. I've created over 500 icons and this has been something I had to narrow in on because I'm including all the icons with the Mod, and automatically uploading them to the TS3 server when the mod is booted up, if needed.

    That brings me to my next topic.


    - File transfer limit on port 30033

    I've noticed you can only send / receive about 30 maybe 50 icons to/from a TS3 server host before it hits a built in limit.
    In my code that uploads icons I first discovered this, and tried to write something as not to throttle the socket. But not only does this slow down the bootup of my Mod but the downloading also has become a concern. With all those icons I have on each server, any query from any program, even TS3 client software, just to view all these icons usually leads to a 'file transfer limit reached' as well as 'could not open file transfer connection' x how many icons I'm trying to view. If I'm maxing out port 30033 as one client, that means all my other clients also probably have to wait for the timeout to dissipate before they can see even 1 icon load... Just assuming.


    - Transparent PNG Banners

    I wrote a cgi app that resides on my web servers, with a one liner in the banner field of the server(s) it randomly loads which ever images are sent in the string. Anyways, I cycle through 6 png images every 60 seconds on each of my servers this way and when the 'Resize' of the banner is set to 'Do Not adjust' everything is fine. But as soon as I choose either 'Adjust but ignore aspect ratio' or 'Adjust but keep aspect ratio' the next image that dynamically loads will overlay the previous. I can still see the remnants of any previous image under the new, where ever there's transparency with the new. So now I don't stretch my banners..

    That's all I can think of right now, I've stumbled across other little occurrences that are manageable from a development stand point, but I figured these for now could be brought to light maybe.. If not already.

    Thx again,
    Scor9ioN

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Similar Threads

  1. [On Todo] Killing the instance by uploading 0 bytes to channel 0
    By numma_cway in forum Bug Reports
    Replies: 1
    Last Post: 07-11-2011, 07:44
  2. Requesting some help please......
    By Urlacher54 in forum General Questions
    Replies: 0
    Last Post: 05-06-2011, 18:35
  3. Requesting Support!
    By blabsy in forum [TeamSpeak 2] Client Support
    Replies: 2
    Last Post: 17-11-2006, 19:16
  4. Requesting Stuff (V, OP...)
    By Tanner in forum [TeamSpeak 2] Server Support
    Replies: 1
    Last Post: 15-11-2004, 02:50
  5. High ping on TS but low ping in game at the same time
    By isd71 in forum [TeamSpeak 2] Client Support
    Replies: 5
    Last Post: 29-09-2003, 02:26

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •