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
  1. <?PHP  
  2. $ts3_ip = '127.0.0.1';  
  3. $ts3_queryport = 10011;  
  4. $ts3_user = 'serveradmin';  
  5. $ts3_pass = 'oYxtemXk';  
  6. require("C:/xampp/htdocs/admin/src/ts3admin.class.php");  
  7. $tsAdmin = new ts3admin($ts3_ip$ts3_queryport);  
  8. if($tsAdmin->getElement('success'$tsAdmin->connect())) {  
  9.     $tsAdmin->login($ts3_user$ts3_pass);  
  10.     $servers = $tsAdmin->serverList();  
  11.     $output = '';  
  12.     foreach($servers['data'as $server) {  
  13.         $output .= '<tr bgcolor="#ffffff" onmouseover="style.backgroundColor=\'#eeeeee\'" onmouseout="style.backgroundColor=\'#ffffff\'">';  
  14.         $output .= '<td width="50px" align="center">#'.$server['virtualserver_id'].'</td>';  
  15.         $output .= '<td width="300px">&nbsp;&nbsp;'.htmlspecialchars($server['virtualserver_name']).'</td>';  
  16.         $output .= '<td width="100px" align="center">'.$server['virtualserver_port'].'</td>';  
  17.         if(isset($server['virtualserver_clientsonline'])) {  
  18.             $clients = $server['virtualserver_clientsonline'] . '/' . $server['virtualserver_maxclients'];  
  19.         }else{  
  20.             $clients = '-';  
  21.         }  
  22.         $output .= '<td width="200px" align="center">'.$clients.'</td>';  
  23.         $output .= '<td width="100px" align="center">'.$server['virtualserver_status'].'</td>';  
  24.     }  
  25. }else{  
  26.     echo 'Connection could not be established.';  
  27. }  
  28. if(count($tsAdmin->getDebugLog()) > 0) {  
  29.     foreach($tsAdmin->getDebugLog() as $logEntry) {  
  30.         echo '<script>alert("'.$logEntry.'");</script>';  
  31.     }  
  32. }  
  33. ?>  
  34. <html>  
  35.     <head>  
  36.         <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />  
  37.         <title></title>  
  38.         <style>  
  39.             * {  
  40.                 font-size:13px;  
  41.                 font-family:Verdana, Geneva, sans-serif;  
  42.                 color: #000  
  43.             }  
  44.         </style>  
  45.     </head>  
  46.     <body bgcolor="#5DAFF5">  
  47.         <table bgcolor="#5DAFF5" cellpadding="5" cellspacing="1" width="890px" border="0" align="center">  
  48.             <tr bgcolor="#5DAFF5">  
  49.                 <td width="50px" align="center"><b>ID<b></td>  
  50.                 <td width="300px" align="center"><b>Servername<b></td>  
  51.                 <td width="100px" align="center"><b>Port<b></td>  
  52.                 <td width="200px" align="center"><b>Current clients<b></td>  
  53.                 <td width="100px" align="center"><b>Status<b></td>  
  54.                 <form method="action">  
  55.                     <td><input type="image" src="../open-iconic/svg/media-play.svg"></td>  
  56.                     <td><input type="image" src="../open-iconic/svg/circle-x.svg"></td>  
  57.                 </form>  
  58.             </tr>  
  59.             <tr>  
  60.                 <td></td>  
  61.             </tr>  
  62.             <?PHP echo $output; ?>  
  63.         </table>  
  64.     </body>  
  65. </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