Forum


Notice to all users

We are migrating towards a new forum system located at community.teamspeak.com, as such this forum will become read-only on January 29, 2020

Results 1 to 12 of 12
  1. #1
    Join Date
    May 2014
    Posts
    6

    Query API: servergroupbyclientid returns help for servergroupsbyclientid

    Hi,

    using the query API, the "help" command returns these both commands (among others):
    - servergroupbyclientid | get all server groups of specified client
    - servergroupsbyclientid | find server groups by client ID

    Using the help command again, the first one actually returns the same as the latter one:
    Code:
    help servergroupbyclientid
    Usage: servergroupsbyclientid sgid={clientDBID}
    
    Displays all server groups the client specified with cldbid is currently
    residing in.
    
    Example:
       servergroupsbyclientid cldbid=18
       name=Server\sAdmin sgid=6 cldbid=18
       error id=0 msg=ok
    
    error id=0 msg=ok
    help servergroupsbyclientid
    Usage: servergroupsbyclientid cldbid={clientDBID}
    
    Displays all server groups the client specified with cldbid is currently
    residing in.
    
    Example:
       servergroupsbyclientid cldbid=18
       name=Server\sAdmin sgid=6 cldbid=18
       error id=0 msg=ok
    
    error id=0 msg=ok
    Also, servergroupbyclientid (without s) is not listed in the query API documentation.

    My tested server versions is 3.0.10.3 running on Linux.

    Is this a bug? I think this might be backwards compatible because there might was a typo. IMO it should be marked as some kind of deprecated somewhere.

    nikeee
    Last edited by nikeee; May 16th, 2014 at 12:16 AM.

  2. #2
    Join Date
    June 2011
    Location
    Germany
    Posts
    4,368
    Well, fighting query and query documentation bugs is like tilting at windmills. There are just too many of them. It's hopeless. As you can see, the example itself is also pointless, as you are told to provide the client ID as the parameter for the server group ID.

  3. #3
    Join Date
    October 2003
    Location
    Germany
    Posts
    2,527
    Well... the ServerQuery help files are located in the serverquerydocs sub-directory of the server. They're plain-text so you can edit them as you like and fix all the documentaion flaws you find. I'm sure if someone takes the time and created a nice new set of files with better command descriptions, the TS dev team will add them to the server package and mention your names in the changelog.

    I'm no longer involved in theese things, but I created the original docs back then (during the closed beta) in my spare time so you can kinda blame me for them beeing so bad.



    Anyway... for everyone who wants to help fixing the docs, here's my file pattern from 2009:

    Code:
    Usage: <command> <parameters>
    
    <description>
    
    Example:
       <client_input>
       <server_output>
    Some details:

    1. <command> is (you might have guessed it) the name of the command (e.g. clientlist, clientmove, ...).
    2. <parameters> is contains the list of parameters and options available, where the optional stuff is wrapped in [].
    3. <description> is a brief explanation about the command and its functionality. Note that each line should be no longer than 80 characters.
    4. <client_input> is a usage example for a command.
    5. <server_output> is what the server would spit out if you executed the command above.

    I know that the layout kinda sucks and can be improved in many ways. I also always wanted to include a list of permissions required to execute the command... anyway... never did it tho cuz I'm a lazy b*****d.



    As I said, I'm sure the TS devs would appreciate any contribution to this stuff from the community.

  4. #4
    Join Date
    June 2008
    Posts
    18,513
    I will retest this report and numma's examples.
    When sending me private messages: Please make sure to include reference link to your forum thread or post.

    TeamSpeak FAQ || What should i report, when i open a client thread?

  5. #5
    Join Date
    June 2008
    Posts
    18,513
    We will change these entries.
    Code:
    "help servergroupbyclientid"
    --> servergroupbyclientid.txt needs to be deleted manually.
    --> servergroupbyclientid.txt will be removed from our server packages
    
    channelgroupadd.txt and channelgroupcopy.txt
    --> SqerverQuery will be removed out of the documents
    
    servernotifyregister.txt
    --> "tokenused" will be added
    
    clientlist
    --> Parameter "-badges" badged will be added
    
    
    channelfind
    --> Pattern is not optional anymore

    Not confirmed from source http://redeemer.biz/medien/artikel/ts3-query/
    Code:
    - servergroupautodelperm.txt 
    Where is the typo?
    
    - serverlist
    Only explains the staus for "use -virtual" and not for "use"
    
    - sendtextmessage
    The target is needed, when you use targetmode=1 (user).
    -->> More details will be added
    
    - privilegekeyadd
    There is nor eror in that example. There is nothing to escape , because "\s" is a space and not meaned as "\"
    
    - clientdblist
    - clientdbinfo
    It's more powerfull as documented? What o.O?
    
    - clientdbedit
    It's about the client database properties. Nothing about permissions or something else.
    
    - clientpoke
    There is nothing in our docu about multiple pokes
    
    ftdeletefile
    - We can not fix this, when server was <3.0.5
    Last edited by dante696; May 19th, 2014 at 09:37 AM.
    When sending me private messages: Please make sure to include reference link to your forum thread or post.

    TeamSpeak FAQ || What should i report, when i open a client thread?

  6. #6
    Join Date
    May 2014
    Posts
    6
    Quote Originally Posted by ScP View Post
    I know that the layout kinda sucks and can be improved in many ways.
    Yeah, it would be nice to have an (additional?) easy-parsable representation of the API, meaning JSON or XML. It would be much easier to create a wrapper with auto-generated function signatures and documentation.

    Also, the enums and return types/structs are only barely listed in the manual. There should be another place where the commands are listed with their exact and entire return values. Copying text from a PDF files sometimes confuses one because (depending on the PDF reader) there can occur "invisible" chars. Is there already a "plain text" version of the manual? I would really appreciate that!

  7. #7
    Join Date
    June 2011
    Location
    Germany
    Posts
    4,368
    Unless explicitly stated, I was referring to the PDF.

    Code:
    - servergroupautodelperm.txt 
    Where is the typo?
    Click image for larger version. 

Name:	querybug1.png 
Views:	89 
Size:	56.1 KB 
ID:	10585
    There is also a minor format error (topmost arrow).

    Code:
    - serverlist
    Only explains the staus for "use -virtual" and not for "use"
    Click image for larger version. 

Name:	querybug2.png 
Views:	73 
Size:	70.6 KB 
ID:	10586
    Highlighted paragraph makes no sense, especially the words underlined.

    Code:
    - sendtextmessage
    The target is needed, when you use targetmode=1 (user).
    -->> More details will be added
    Click image for larger version. 

Name:	querybug3.png 
Views:	75 
Size:	38.2 KB 
ID:	10587
    Underlined part makes no sense at all.

    Code:
    - privilegekeyadd
    There is nor eror in that example. There is nothing to escape , because "\s" is a space and not meaned as "\"
    The example gives this value for the tokencustomset parameter:
    Code:
    ident=forum_user\svalue=Sven\sPaulsen\pident=forum_id\svalue=123
    When unescaped, it becomes:
    Code:
    ident=forum_user value=Sven Paulsen|ident=forum_id value=123
    This is incorrect, because "Paulsen" is not connected to any parameter anymore. It's simply there and has no use. If you want to comply with the pattern explained above (and how the server actually works), the correct unescaped string would be:
    Code:
    ident=forum_user value=Sven\sPaulsen|ident=forum_id value=123
    The escaped values of the paramters must be escaped here already.
    Simply test the example, the value of forum_user will simply be Sven.

    Code:
    - clientdblist
    - clientdbinfo
    It's more powerfull as documented? What o.O?
    Yes, the documentation lists only a few properties, but it yields many more.
    Click image for larger version. 

Name:	querybug4.png 
Views:	82 
Size:	97.1 KB 
ID:	10588

    Code:
    - clientdbedit
    It's about the client database properties. Nothing about permissions or something else.
    Click image for larger version. 

Name:	querybug5.png 
Views:	75 
Size:	23.8 KB 
ID:	10589

  8. #8
    Join Date
    June 2011
    Location
    Germany
    Posts
    4,368
    Due to attachment restrictions, the post was split.


    Code:
    - clientpoke
    There is nothing in our docu about multiple pokes
    Click image for larger version. 

Name:	querybug6.png 
Views:	79 
Size:	17.1 KB 
ID:	10590

  9. #9
    Join Date
    June 2008
    Posts
    18,513
    Will be changed (not in server 3.0.10)
    - clientdbedit


    This is trivial:
    - clientdblist
    - clientdbinfo
    ---> We will add ... at the end to show, that there is more.

    -serverlist
    --> maybe will be edited


    We will not change these:
    - sendtextmessage (already said we will add a bit more details. Also Target stays at is it)
    - privilegekeyadd (no erorr here)
    Last edited by dante696; December 9th, 2014 at 01:05 PM. Reason: wrong server version
    When sending me private messages: Please make sure to include reference link to your forum thread or post.

    TeamSpeak FAQ || What should i report, when i open a client thread?

  10. #10
    Join Date
    June 2011
    Location
    Germany
    Posts
    4,368
    Quote Originally Posted by dante696 View Post
    - privilegekeyadd (no erorr here)
    And how do you explain this screenshot?
    Click image for larger version. 

Name:	querybug7.png 
Views:	86 
Size:	30.7 KB 
ID:	10593
    If the example was valid, why did "Paulsen" get lost?

  11. #11
    Join Date
    June 2008
    Posts
    18,513
    You must escpae blank spaces twice if you want to use a customset.

    Code:
    tokenadd tokentype=0 tokenid1=6 tokenid2=0 tokendescription=Test tokencustomset=ident=forum_user\svalue=Sven\\sPaulsen
    
    custominfo cldbid=5
    cldbid=5 ident=forum_user value=Sven\sPaulsen
    Last edited by dante696; December 9th, 2014 at 01:06 PM.
    When sending me private messages: Please make sure to include reference link to your forum thread or post.

    TeamSpeak FAQ || What should i report, when i open a client thread?

  12. #12
    Join Date
    June 2011
    Location
    Germany
    Posts
    4,368
    I know that. I just said the query manual says otherwise.

Thread Information

Users Browsing this Thread

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

Similar Threads

  1. [Resolved] Problem with ts3client_openCaptureDevice, returns ERROR_undefined
    By Wizard of Ass in forum General Questions
    Replies: 1
    Last Post: August 23rd, 2012, 04:16 AM
  2. Replies: 1
    Last Post: November 24th, 2010, 07:49 AM
  3. Replies: 3
    Last Post: February 3rd, 2010, 06:54 PM
  4. Replies: 4
    Last Post: December 24th, 2009, 11:47 AM

Posting Permissions

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