ugrás a tartalomhoz

TeamSpeak 3 PHP Framework

Trinexis · 2015. Feb. 9. (H), 21.13
Üdv mindenkinek egy olyan kérdéssel fordulnék hozzátok ,hogy hogyan lehetne megoldani a ts3 php framework-el hogy el lehessen indítani a szervert és leállítani is lehessen. van róla egy dokumentáció a start és a stop részről de egyáltalán nem értem hogyan építsem bele a webbe.

Akit érdekel annak elküldöm az oldalt amibe bekéne tenni.
http://www.hgth.eu/admin/ts3.php

A válaszokat előre is köszönöm.
 
1

Megvalósítás

janoszen · 2015. Feb. 10. (K), 00.45
Látom, hogy mire gondolsz, bár a megfogalmazáson lehetne javítani. Az a baj, hogy az API dokumentáció megértéséhez szükséged lesz némi objektum orientált programozási alapokra.

Ha van kedved ebbe energiát ölni, akkor pont most csinálunk egy előadás sorozatot ebben a témában, de arra számíts, hogy jó sokat kell tanulnod hozzá.
2

Mi lenne a végső cél?

ecrazor · 2015. Feb. 10. (K), 01.02
Elég részletes dokumentációval bír mind a ts3admin.class, mind a TeamSpeak 3 ServerQuery.

Kell a szerverhez egy AdminQuery hozzáférés (ezt az első szerver elindításakor lehet látni, serveradmin és random jelszó), egy kis angol tudás, alapvető PHP ismeret, onnantól fogva rajtad áll, hogy mire használod.

A TeamSpeak 3 szerver virtuális instance-eket futtat, amit tudsz elindítani vagy leállítani server_id (sid) alapján. Csak egy működő ts3 szerver kell.

Az alábbi függvények kellenek hozzá ( http://ts3admin.info/ ):
* serverList(string $options) : array (lekéri a virtual szervereket, szűréseket is belehet állítani)
* serverStart(integer $sid) : boolean (server_id alapján indít)
* serverStop(integer $sid) : boolean (server_id alapján leállít)

Ha letöltöd az egészet, akkor vannak konkrét példák is, az segíthet:
examples/servelist.php

Remélem tudtam segíteni.

SB
3

A szerver admin query es

Trinexis · 2015. Feb. 10. (K), 12.27
A szerver admin query es annak a hozzaferesei megvannak mar adva maskepp nem tudnam lekerni az adatokat a szerver statuszarol. A problemam ott adódik hogy nem tudom ratenni gombokra az indítást es a leállítás funkciót. Mert mikor a <form method="action"> fugvenyt hasznalom az inputoknal akkor mindig kiír valami hibat a php kodra. Ha ez nincs benne ez a form akkor semmi hibat nem ir de ügye akkor meg nem mukodik gomb kent az input resz.
4

Konkrét példa?

ecrazor · 2015. Feb. 10. (K), 13.44
Tudsz nekem konkrét kódot mutatni? Esetleg úgy könnyebben hozzátudok szólni a dologhoz :). Kezdjük ott, hogy milyen hibát ír ki?
5

Ja hazaérek leirom a kódot

Trinexis · 2015. Feb. 10. (K), 13.54
Ja hazaérek leirom a kódot
7

<?PHP$ts3_ip =

Trinexis · 2015. Feb. 10. (K), 17.01
<?PHP
$ts3_ip = '127.0.0.1';
$ts3_queryport = 10011;
$ts3_user = 'serveradmin';
$ts3_pass = 'oYxtemXk';
require("C:/xampp/htdocs/admin/src/ts3admin.class.php");
$tsAdmin = new ts3admin($ts3_ip, $ts3_queryport);
if($tsAdmin->getElement('success', $tsAdmin->connect())) {
	$tsAdmin->login($ts3_user, $ts3_pass);
	$servers = $tsAdmin->serverList();
	$output = '';
	foreach($servers['data'] as $server) {
		$output .= '<tr bgcolor="#ffffff" onmouseover="style.backgroundColor=\'#eeeeee\'" onmouseout="style.backgroundColor=\'#ffffff\'">';
		$output .= '<td width="50px" align="center">#'.$server['virtualserver_id'].'</td>';
		$output .= '<td width="300px">&nbsp;&nbsp;'.htmlspecialchars($server['virtualserver_name']).'</td>';
		$output .= '<td width="100px" align="center">'.$server['virtualserver_port'].'</td>';
		if(isset($server['virtualserver_clientsonline'])) {
			$clients = $server['virtualserver_clientsonline'] . '/' . $server['virtualserver_maxclients'];
		}else{
			$clients = '-';
		}
		$output .= '<td width="200px" align="center">'.$clients.'</td>';
		$output .= '<td width="100px" align="center">'.$server['virtualserver_status'].'</td>';
	}
}else{
	echo 'Connection could not be established.';
}
if(count($tsAdmin->getDebugLog()) > 0) {
	foreach($tsAdmin->getDebugLog() as $logEntry) {
		echo '<script>alert("'.$logEntry.'");</script>';
	}
}
?>
<html>
	<head>
    	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    	<title></title>
        <style>
			* {
				font-size:13px;
				font-family:Verdana, Geneva, sans-serif;
				color: #000
			}
		</style>
    </head>
    <body bgcolor="#5DAFF5">
    	<table bgcolor="#5DAFF5" cellpadding="5" cellspacing="1" width="890px" border="0" align="center">
        	<tr bgcolor="#5DAFF5">
            	<td width="50px" align="center"><b>ID<b></td>
                <td width="300px" align="center"><b>Servername<b></td>
            	<td width="100px" align="center"><b>Port<b></td>
            	<td width="200px" align="center"><b>Current clients<b></td>
                <td width="100px" align="center"><b>Status<b></td>
				<form method="action">
					<td><input type="image" src="../open-iconic/svg/media-play.svg"></td>
					<td><input type="image" src="../open-iconic/svg/circle-x.svg"></td>
				</form>
            </tr>
			<tr>
				<td></td>
			</tr>
            <?PHP echo $output; ?>
        </table>
    </body>
</html>
Itt a kodrészlet amibe bekéne illeszteni a leállítást és az indítást.
Egyértelműen az input tegekre szeretném rápakolni.
Mostmár azt a fajta php kiegészítőt használom amit írtál ezt a ts3admin.info sat.
Ha tudnál benne segíteni hogyan lehetne beleépíteni megkösszöném.
8

Kattints ide

Hidvégi Gábor · 2015. Feb. 10. (K), 17.38
9

és miért katintsag oda?

Trinexis · 2015. Feb. 10. (K), 17.43
és miért katintsag oda?
13

talán ezért?

Pepita · 2015. Feb. 10. (K), 20.01
Ha tudnál benne segíteni hogyan lehetne beleépíteni megkösszöném
10

A jelszót ilyenkor nem

bamegakapa · 2015. Feb. 10. (K), 18.07
A jelszót ilyenkor nem érdemes megosztani.
11

nem gond az max ujra generáom

Trinexis · 2015. Feb. 10. (K), 18.24
nem gond az
max ujra generáom
12

Ne majd

Pepita · 2015. Feb. 10. (K), 19.59
Most generálj újat.
És próbáld megoldani a feladatot, akarj tanulni, másképp nem megy. Ingyen, "poénból" senki nem csinálja meg helyetted.
14

Több sebből vérzik a történet...

ecrazor · 2015. Feb. 10. (K), 21.59
Így hirtelen három utat látok járhatónak.

Mivel gondolom sürgős, ezért az egyik: van egy un. Psychokiller által fejlesztett TS3 admin panel-t, amit könnyen lehet használni és beállítani.

A másik hogy totálisan újragondolod a felépítést, utánanézel a dolgoknak, hogy mi-mi, mert nekiálltam a hibák felsorolásának, és a lehetséges megoldásoknak, de inkább ráhagytam a sokaságuk miatt... :-)

A harmadik, amit #1 hozzászólóként janoszen nagylelkűen felajánlott, hogy vágj bele a tanulásnak a heti rendszerességű közvetítések segítségével. (plusz nagyon sok anyag van fent a neten)

+1: munkarovat