Group

AndryGabry

Member
Joined
Dec 16, 2016
Messages
26
Reaction score
9
Points
38
how can I set up a server group for all users at the same time?
 

kalle

high minded
Contributor
Joined
Oct 28, 2015
Messages
411
Reaction score
253
Points
178
Idk if there is a better method, but with YaTQA you can hover user DB and set it to following group.


1543270802303.png

1543270834119.png

1543270863500.png

1543270889943.png
 

AndryGabry

Member
Joined
Dec 16, 2016
Messages
26
Reaction score
9
Points
38
sorry, I did not explain well, I meant in php through the framework
 

kalle

high minded
Contributor
Joined
Oct 28, 2015
Messages
411
Reaction score
253
Points
178
Here you are.
PHP:
<?php
include_once('TeamSpeak3/TeamSpeak3.php');

// Connection configuration
$login_name = 'serveradmin';              // query login info
$login_password = '9kg6eRKk';             // =||=
$ip = 'localhost';                        // ex. 127.0.0.1/ 254.13.121.12
$query_port = '10011';                      // default 10011
$virtualserver_port= '9987';             // virtual server port
$group = '7';

try
{
    $ts3 = TeamSpeak3::factory("serverquery://".$login_name.":".$login_password."@".$ip.":".$query_port."/?server_port=".$virtualserver_port."&nickname=R4P3&blocking=0");
   
    // query clientlist from virtual server
    $clientList = $ts3->clientList();

    foreach ($clientList as $client) {
        if($client['client_type'] == 1) continue;
        if(!in_array($group, explode(',', $client['client_servergroups']))){
            $cldbid = $client->getInfo();
            $ts3->serverGroupClientAdd($group,$cldbid['client_database_id']);
        }  
    }
}
    catch(Exception $e)
{
  echo ($e);
}

?>

Gist: https://gist.github.com/kallefrombosnia/e69da8485aeac2621ccc3ed9d2228f1e
 
Last edited:

AndryGabry

Member
Joined
Dec 16, 2016
Messages
26
Reaction score
9
Points
38
to remove the group all users just need to replace
PHP:
foreach ($clientList as $client) {
        if($client['client_type'] == 1) continue;
        if(!in_array($group, explode(',', $client['client_servergroups']))){
            $cldbid = $client->getInfo();
            $ts3->[B]serverGroupClientAdd[/B]($group,$cldbid['client_database_id']);
        }
with
PHP:
foreach ($clientList as $client) {
        if($client['client_type'] == 1) continue;
        if(!in_array($group, explode(',', $client['client_servergroups']))){
            $cldbid = $client->getInfo();
            $ts3->[B]serverGroupClientDel[/B]($group,$cldbid['client_database_id']);
        }
?
 

AndryGabry

Member
Joined
Dec 16, 2016
Messages
26
Reaction score
9
Points
38
perfect thx, if I ever publish this my project, I'll mention you for sure XD
 

AndryGabry

Member
Joined
Dec 16, 2016
Messages
26
Reaction score
9
Points
38
thx, I'm learning from self-teaching and your help is very helpful
 

AndryGabry

Member
Joined
Dec 16, 2016
Messages
26
Reaction score
9
Points
38
Here you are.
PHP:
<?php
include_once('TeamSpeak3/TeamSpeak3.php');

// Connection configuration
$login_name = 'serveradmin';              // query login info
$login_password = '9kg6eRKk';             // =||=
$ip = 'localhost';                        // ex. 127.0.0.1/ 254.13.121.12
$query_port = '10011';                      // default 10011
$virtualserver_port= '9987';             // virtual server port
$group = '7';

try
{
    $ts3 = TeamSpeak3::factory("serverquery://".$login_name.":".$login_password."@".$ip.":".$query_port."/?server_port=".$virtualserver_port."&nickname=R4P3&blocking=0");
  
    // query clientlist from virtual server
    $clientList = $ts3->clientList();

    foreach ($clientList as $client) {
        if($client['client_type'] == 1) continue;
        if(!in_array($group, explode(',', $client['client_servergroups']))){
            $cldbid = $client->getInfo();
            $ts3->serverGroupClientAdd($group,$cldbid['client_database_id']);
        } 
    }
}
    catch(Exception $e)
{
  echo ($e);
}

?>

Gist: https://gist.github.com/kallefrombosnia/e69da8485aeac2621ccc3ed9d2228f1e

I found a problem, if a user in the database that has the permission, the bot will block and does not assemble the servergroup another user giving as an error: duplicate entry
 
Top