-
Notifications
You must be signed in to change notification settings - Fork 59
Usage Examples
Nathan Fiscaletti edited this page Jul 18, 2018
·
3 revisions
This page is for convenience and replicates Usage Examples from the official docs.
// load framework files
require_once("libraries/TeamSpeak3/TeamSpeak3.php");
// connect to local server, authenticate and spawn an object for the virtual server on port 9987
$ts3_VirtualServer = TeamSpeak3::factory("serverquery://username:[email protected]:10011/?server_port=9987");
// kick the client with ID 123 from the server
$ts3_VirtualServer->clientKick(123, TeamSpeak3::KICK_SERVER, "evil kick XD");
// spawn an object for the client by unique identifier and do the kick
$ts3_VirtualServer->clientGetByUid("FPMPSC6MXqXq751dX7BKV0JniSo=")->kick(TeamSpeak3::KICK_SERVER, "evil kick XD");
// spawn an object for the client by current nickname and do the kick
$ts3_VirtualServer->clientGetByName("ScP")->kick(TeamSpeak3::KICK_SERVER, "evil kick XD");
// load framework files
require_once("libraries/TeamSpeak3/TeamSpeak3.php");
// connect to local server, authenticate and spawn an object for the virtual server on port 9987
$ts3_VirtualServer = TeamSpeak3::factory("serverquery://username:[email protected]:10011/?server_port=9987");
// query clientlist from virtual server
$arr_ClientList = $ts3_VirtualServer->clientList();
// kick all clients online with a single command
$ts3_VirtualServer->clientKick($arr_ClientList, TeamSpeak3::KICK_SERVER, "evil kick XD");
// load framework files
require_once("libraries/TeamSpeak3/TeamSpeak3.php");
// connect to local server, authenticate and spawn an object for the virtual server on port 9987
$ts3_VirtualServer = TeamSpeak3::factory("serverquery://username:[email protected]:10011/?server_port=9987");
// query clientlist from virtual server and filter by platform
$arr_ClientList = $ts3_VirtualServer->clientList(array("client_platform" => "Android"));
// walk through list of clients
foreach($arr_ClientList as $ts3_Client)
{
echo $ts3_Client . " is using " . $ts3_Client["client_platform"] . "<br />\n";
}
// load framework files
require_once("libraries/TeamSpeak3/TeamSpeak3.php");
// connect to local server, authenticate and spawn an object for the server instance
$ts3_ServerInstance = TeamSpeak3::factory("serverquery://username:[email protected]:10011/");
// walk through list of virtual servers
foreach($ts3_ServerInstance as $ts3_VirtualServer)
{
// modify the virtual servers hostbanner URL only using the ArrayAccess interface
$ts3_VirtualServer["virtualserver_hostbanner_gfx_url"] = "http://www.example.com/banners/banner01_468x60.jpg";
// modify the virtual servers hostbanner URL only using property overloading
$ts3_VirtualServer->virtualserver_hostbanner_gfx_url = "http://www.example.com/banners/banner01_468x60.jpg";
// modify multiple virtual server properties at once
$ts3_VirtualServer->modify(array(
"virtualserver_hostbutton_tooltip" => "My Company",
"virtualserver_hostbutton_url" => "http://www.example.com",
"virtualserver_hostbutton_gfx_url" => "http://www.example.com/buttons/button01_24x24.jpg",
));
}
// load framework files
require_once("libraries/TeamSpeak3/TeamSpeak3.php");
// connect to local server, authenticate and spawn an object for the virtual server on port 9987
$ts3_VirtualServer = TeamSpeak3::factory("serverquery://username:[email protected]:10011/?server_port=9987");
// spawn an object for the group using a specified name
$arr_ServerGroup = $ts3_VirtualServer->serverGroupGetByName("Admins");
// create the privilege key
$ts3_PrivilegeKey = $arr_ServerGroup->privilegeKeyCreate();
// load framework files
require_once("libraries/TeamSpeak3/TeamSpeak3.php");
// connect to local server, authenticate and spawn an object for the server instance
$ts3_ServerInstance = TeamSpeak3::factory("serverquery://username:[email protected]:10011/");
// walk through list of virtual servers
foreach($ts3_ServerInstance as $ts3_VirtualServer)
{
// identify the most powerful group on the virtual server
$ts3_ServerGroup = $ts3_VirtualServer->serverGroupIdentify();
// assign a new permission
$ts3_ServerGroup->permAssign("b_virtualserver_modify_hostbanner", TRUE);
// revoke an existing permission
$ts3_ServerGroup->permRemove("b_virtualserver_modify_maxclients");
}
// load framework files
require_once("libraries/TeamSpeak3/TeamSpeak3.php");
// connect to local server, authenticate and spawn an object for the server instance
$ts3_ServerInstance = TeamSpeak3::factory("serverquery://username:[email protected]:10011/");
// create a virtual server and get its ID
$new_sid = $ts3_ServerInstance->serverCreate(array(
"virtualserver_name" => "My TeamSpeak 3 Server",
"virtualserver_maxclients" => 64,
"virtualserver_hostbutton_tooltip" => "My Company",
"virtualserver_hostbutton_url" => "http://www.example.com",
"virtualserver_hostbutton_gfx_url" => "http://www.example.com/buttons/button01_24x24.jpg",
));
// load framework files
require_once("libraries/TeamSpeak3/TeamSpeak3.php");
// connect to local server, authenticate and spawn an object for the virtual server on port 9987
$ts3_VirtualServer = TeamSpeak3::factory("serverquery://username:[email protected]:10011/?server_port=9987");
// create a top-level channel and get its ID
$top_cid = $ts3_VirtualServer->channelCreate(array(
"channel_name" => "My Channel",
"channel_topic" => "This is a top-level channel",
"channel_codec" => TeamSpeak3::CODEC_SPEEX_WIDEBAND,
"channel_flag_permanent" => TRUE,
));
// create a sub-level channel and get its ID
$sub_cid = $ts3_VirtualServer->channelCreate(array(
"channel_name" => "My Sub-Channel",
"channel_topic" => "This is a sub-level channel",
"channel_codec" => TeamSpeak3::CODEC_SPEEX_NARROWBAND,
"channel_flag_permanent" => TRUE,
"cpid" => $top_cid,
));
// load framework files
require_once("libraries/TeamSpeak3/TeamSpeak3.php");
// connect to local server, authenticate and spawn an object for the virtual server on port 9987
$ts3_VirtualServer = TeamSpeak3::factory("serverquery://username:[email protected]:10011/?server_port=9987");
// build and display HTML treeview using custom image paths (remote icons will be embedded using data URI sheme)
echo $ts3_VirtualServer->getViewer(new TeamSpeak3_Viewer_Html("images/viewericons/", "images/countryflags/", "data:image"));
// load framework files
require_once("libraries/TeamSpeak3/TeamSpeak3.php");
// connect to local server, authenticate and spawn an object for the virtual server on port 9987
$ts3_VirtualServer = TeamSpeak3::factory("serverquery://username:[email protected]:10011/?server_port=9987");
// walk through list of chanels
foreach($ts3_VirtualServer->channelList() as $ts3_Channel)
{
if($ts3_Channel["channel_codec"] == TeamSpeak3::CODEC_CELT_MONO)
{
$ts3_Channel["channel_codec"] = TeamSpeak3::CODEC_OPUS_MUSIC;
}
elseif($ts3_Channel["channel_codec"] != TeamSpeak3::CODEC_OPUS_MUSIC)
{
$ts3_Channel["channel_codec"] = TeamSpeak3::CODEC_OPUS_VOICE;
}
}
// load framework files
require_once("libraries/TeamSpeak3/TeamSpeak3.php");
// connect to local server, authenticate and spawn an object for the virtual server on port 9987
$ts3_VirtualServer = TeamSpeak3::factory("serverquery://username:[email protected]:10011/?server_port=9987");
// spawn an object for the client using a specified nickname
$ts3_Client = $ts3_VirtualServer->clientGetByName("John Doe");
// download the clients avatar file
$avatar = $ts3_Client->avatarDownload();
// send header and display image
header("Content-Type: " . TeamSpeak3_Helper_Convert::imageMimeType($avatar));
echo $avatar;
// load framework files
require_once("libraries/TeamSpeak3/TeamSpeak3.php");
// connect to local server in non-blocking mode, authenticate and spawn an object for the virtual server on port 9987
$ts3_VirtualServer = TeamSpeak3::factory("serverquery://username:[email protected]:10011/?server_port=9987&blocking=0");
// get notified on incoming private messages
$ts3_VirtualServer->notifyRegister("textprivate");
// register a callback for notifyTextmessage events
TeamSpeak3_Helper_Signal::getInstance()->subscribe("notifyTextmessage", "onTextmessage");
// wait for events
while(1) $ts3_VirtualServer->getAdapter()->wait();
// define a callback function
function onTextmessage(TeamSpeak3_Adapter_ServerQuery_Event $event, TeamSpeak3_Node_Host $host)
{
echo "Client " . $event["invokername"] . " sent textmessage: " . $event["msg"];
}
// load framework files
require_once("libraries/TeamSpeak3/TeamSpeak3.php");
// register custom error message (supported placeholders are: %file, %line, %code and %mesg)
TeamSpeak3_Exception::registerCustomMessage(0x300, "The specified channel does not exist; server said: %mesg");
try
{
// connect to local server, authenticate and spawn an object for the virtual server on port 9987
$ts3_VirtualServer = TeamSpeak3::factory("serverquery://username:[email protected]:10011/?server_port=9987");
// spawn an object for the channel using a specified name
$ts3_Channel = $ts3_VirtualServer->channelGetByName("I do not exist");
}
catch(TeamSpeak3_Exception $e)
{
// print the error message returned by the server
echo "Error " . $e->getCode() . ": " . $e->getMessage();
}
// load framework files
require_once("libraries/TeamSpeak3/TeamSpeak3.php");
// start a PHP session
session_start();
// connect to local server, authenticate and spawn an object for the virtual server on port 9987
$ts3_VirtualServer = TeamSpeak3::factory("serverquery://username:[email protected]:10011/?server_port=9987");
// save connection state (including login and selected virtual server)
$_SESSION["_TS3"] = serialize($ts3_VirtualServer);
// load framework files
require_once("libraries/TeamSpeak3/TeamSpeak3.php");
// start a PHP session
session_start();
// restore connection state
$ts3_VirtualServer = unserialize($_SESSION["_TS3"]);
// send a text message to the server
$ts3_VirtualServer->message("Hello World!");
Speed up new development and reduce maintenance costs by using the TS3 PHP Framework!