3namespace PlanetTeamSpeak\TeamSpeak3Framework\Node;
5use PlanetTeamSpeak\TeamSpeak3Framework\Exception\NodeException;
6use PlanetTeamSpeak\TeamSpeak3Framework\TeamSpeak3;
26 $this->nodeInfo = $info;
28 if (!array_key_exists($index, $this->nodeInfo)) {
32 $this->nodeId = $this->nodeInfo[$index];
41 public function rename(
string $name): void
53 public function delete(
bool $force =
false): void
68 return $this->
getParent()->serverGroupCopy($this->
getId(), $name, $tsgid, $type);
77 public function permList(
bool $permsid =
false): array
79 return $this->
getParent()->serverGroupPermList($this->
getId(), $permsid);
92 public function permAssign(
int $permid,
int $permvalue,
int $permnegated = 0,
int $permskip = 0): void
94 $this->
getParent()->serverGroupPermAssign($this->
getId(), $permid, $permvalue, $permnegated, $permskip);
102 public function permAssignByName($permname, $permvalue, $permnegated =
false, $permskip =
false)
104 $this->
permAssign($permname, $permvalue, $permnegated, $permskip);
116 $this->
getParent()->serverGroupPermRemove($this->
getId(), $permid);
148 $this->
getParent()->serverGroupClientAdd($this->
getId(), $cldbid);
159 $this->
getParent()->serverGroupClientDel($this->
getId(), $cldbid);
167 public function tokenCreate($description =
null, $customset =
null): string
190 $this->nodeList = [];
193 if (in_array($this->
getId(), explode(
",", $client[
"client_servergroups"]))) {
194 $this->nodeList[] = $client;
206 return $this->
getParent()->getUniqueId() .
"_sg" . $this->
getId();
216 return "group_server";
Enhanced exception class for PlanetTeamSpeak\TeamSpeak3Framework\Node\Node objects.
copy(string $name=null, int $tsgid=0, int $type=TeamSpeak3::GROUP_DBTYPE_REGULAR)
permAssignByName($permname, $permvalue, $permnegated=false, $permskip=false)
tokenCreate($description=null, $customset=null)
__construct(Server $server, array $info, string $index="sgid")
privilegeKeyCreate(string $description=null, string $customset=null)
permAssign(int $permid, int $permvalue, int $permnegated=0, int $permskip=0)
permRemoveByName($permname)
permList(bool $permsid=false)
Class describing a TeamSpeak 3 virtual server and all it's parameters.
const TOKEN_SERVERGROUP
0: server group token (id1={groupID} id2=0)
const GROUP_DBTYPE_REGULAR
1: regular group (used for regular clients)