Teamspeak script
ik heb een vraagje over een teamspeak script
is het mogelijk dat ik alleen de mensen laat zien in een channel die ik aangeef ?
en dus niet de hele server ?
ben hier al een tijdje naar opzoek
tnx alvast
Iets meer info...
ik wil juist dat de mensen die dat script zien, alleen de mensen in die channels die ik aangeef zien
dus niet in de hele server !
niemand ? :(
We hebben geen info...
Elwin
nouja nog een keer dan
Ik heb nu een script die alle mensen in de hele teamspeak server laat zien
ik wil het zo doen dan ik kan opgeven wat het script laat zien aan mensen
dus bijvoorbeeld alleen de mensen in de channel Home, en de rest van de mensen dus NIET
Hopelijk is dit genoeg info
als jullie het originele script ook willen hebben dan zeggen jullie het maar ;)
tnx
Met geen info bedoelen ze duz, laat stuk van het script zien oid.. Hoe kan je pannekoeken pakken zonder dat je het recept weet ;)
hier komt ie :
http://84.105.51.88/static.rar
tnx
Post gewoon het script of het deel van het script dat ermee te maken heeft. Ik denk niet dat iedereen tijd voor heeft om dat allemaal op te zoeken.
Ik neem aan dat je beetje PHP kan en weet welk deel ongeveer wat doet?
(kweet ik zeik nu ff maar ik denk niet dat er veel mensen gaan kijke daarna)
neej geef niej hoor ik zal ffies een deel posten waar ik denk dat het om gaat
ik denk dat ik hier iets moet aanpassen maar wat ik ook doe hij laat ze elke keer allemaal zien
code :
/*****************************************************
* Get all channels
*****************************************************/
function getChannels($ip,$port,$tPort)
{
$cArray = array();
$out = "";
$j = 0;
$k = 0;
$fp = fsockopen($ip, $tPort, $errno, $errstr, 30);
if($fp) {
fputs($fp, "cl ".$port."\n");
fputs($fp, "quit\n");
while(!feof($fp)) {
$out .= fgets($fp, 1024);
}
$out = str_replace("[TS]", "", $out);
$out = str_replace("\n", "\t", $out);
$data = explode("\t", $out);
$num = count($data);
for($i=0;$i<count($data);$i++) {
if($i>=10) {
$innerArray[$j] = $data[$i];
if($j>=8)
{
$cArray[$k]=$innerArray;
$j = 0;
$k = $k+1;
} else {
$j++;
}
}
}
fclose($fp);
}
return $cArray;
}
Gewijzigd op 30/10/2005 21:38:00 door wverbeek
al een idee ? :)
Gewijzigd op 30/10/2005 22:45:00 door Thijs X
zoals ik het hier zie denk ik het aan tal channels
want als ik het script verder inspecteer dan zie ik dat hij later pas de namen ophaald :S
/*****************************************************
* Get channel name
*****************************************************/
function getChannelName($id,$ip,$port,$tPort)
{
$name = "Uknown";
$cArray = getChannels($ip,$port,$tPort);
for($i=0;$i<count($cArray);$i++)
{
$innerArray=$cArray[$i];
if($innerArray[0]==$id)
$name = removeChar($innerArray[5]);
}
return $name;
}
Gewijzigd op 30/10/2005 22:50:00 door wverbeek
Daar kan je een check in maken bijv:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?
function getChannelName($id,$ip,$port,$tPort)
{
$name = "Uknown";
$cArray = getChannels($ip,$port,$tPort);
if(($cArray == "Channelnaam1") || ($cArray == "Channelnaam2")) // Etc
{
for($i=0;$i<count($cArray);$i++)
{
$innerArray=$cArray[$i];
if($innerArray[0]==$id)
$name = removeChar($innerArray[5]);
}
}
return $name;
}
}
?>
function getChannelName($id,$ip,$port,$tPort)
{
$name = "Uknown";
$cArray = getChannels($ip,$port,$tPort);
if(($cArray == "Channelnaam1") || ($cArray == "Channelnaam2")) // Etc
{
for($i=0;$i<count($cArray);$i++)
{
$innerArray=$cArray[$i];
if($innerArray[0]==$id)
$name = removeChar($innerArray[5]);
}
}
return $name;
}
}
?>
Gewijzigd op 30/10/2005 22:56:00 door Thijs X
http://84.105.51.88/static/ts2.php
edit:
als ik deze weghaal } dan krijg ik een golf foutmeldingen :)
Gewijzigd op 30/10/2005 23:09:00 door wverbeek
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?
function getChannelName($id,$ip,$port,$tPort)
{
$name = "Uknown";
$cArray = getChannels($ip,$port,$tPort);
if(($cArray == "Channelnaam1") || ($cArray == "Channelnaam2")) // Etc
{
for($i=0;$i<count($cArray);$i++)
{
$innerArray=$cArray[$i];
if($innerArray[0]==$id)
$name = removeChar($innerArray[5]);
}
}
return $name;
}
?>
function getChannelName($id,$ip,$port,$tPort)
{
$name = "Uknown";
$cArray = getChannels($ip,$port,$tPort);
if(($cArray == "Channelnaam1") || ($cArray == "Channelnaam2")) // Etc
{
for($i=0;$i<count($cArray);$i++)
{
$innerArray=$cArray[$i];
if($innerArray[0]==$id)
$name = removeChar($innerArray[5]);
}
}
return $name;
}
?>
ik doe het gewoon anders.
toch bedankt voor het kijken of het mogelijk was.
ik ga nu m'n bedje opzoeken
tnx
edit: het script werkt nu weer goed maar nu laat hij weer iedereen in de server zien
en bij User info geeft hij nu bij channel name Uknown
Gewijzigd op 30/10/2005 23:20:00 door wverbeek
Hier laat hij alle channels zien
ik ga me bed in ik zie het morgen wel
tnx alvast
/*****************************************************
* Channel and user info
*****************************************************/
function getTSChannelInfo($ip,$port,$tPort)
{
$uArray = getTSChannelUsers($ip,$port,$tPort);
$pcArray = array();
$ccArray = array();
$thisArray = array();
$listArray = array();
$usedArray = array();
$cArray = getChannels($ip,$port,$tPort);
$z = 0;
$x = 0;
for($i=0;$i<count($cArray);$i++)
{
$innerArray=$cArray[$i];
$listArray[$i]=$innerArray[3];
}
sort($listArray);
for($i=0;$i<count($listArray);$i++)
{
for($j=0;$j<count($cArray);$j++)
{
$innArray=$cArray[$j];
if($innArray[3]==$listArray[$i] and usedID($usedArray,$innArray[0]))
{
if($innArray[2]==-1)
{
$thisArray[0] = $innArray[0];
$thisArray[1] = $innArray[5];
$thisArray[2] = $innArray[2];
$pcArray[$z] = $thisArray;
$usedArray[count($usedArray)] = $innArray[0];
$z++;
}
else
{
$thisArray[0] = $innArray[0];
$thisArray[1] = $innArray[5];
$thisArray[2] = $innArray[2];
$ccArray[$x] = $thisArray;
$usedArray[count($usedArray)] = $innArray[0];
$x++;
}
}
}
}
for($i=0;$i<count($pcArray);$i++) {
$innerArray=$pcArray[$i];
echo "<tr>\n";
echo " <td><img src=\"icons/channel.gif\" width=\"14\" height=\"15\" border=\"0\"></td>\n";
echo " <td class=\"bread\"><a href=\"ccInfo.php?cID=".$innerArray[0]."&type=1\" target=\"info\" class=\"wrapCell\" onClick=\"vMenu(this,1,1)\" onblur=\"vMenu(this,0,1)\" onmouseover=\"javascript:window.status=''; return true;\"> ".removeChar($innerArray[1])." </a></td>\n";
echo "</tr>\n";
for($j=0;$j<count($ccArray);$j++) {
$innerCCArray=$ccArray[$j];
if($innerArray[0]==$innerCCArray[2]) {
echo "<tr>\n";
echo " <td></td>\n";
echo " <td class=\"bread\">\n";
echo " <table cellpadding=\"1\" cellspacing=\"0\">\n";
echo " <tr>\n";
echo " <td><img src=\"icons/channel.gif\" width=\"14\" height=\"15\" border=\"0\"></td>\n";
echo " <td class=\"bread\"><a href=\"ccInfo.php?cID=".$innerCCArray[0]."&type=1\" target=\"info\" class=\"wrapCell\" onClick=\"vMenu(this,1,1)\" onblur=\"vMenu(this,0,1)\" onmouseover=\"javascript:window.status=''; return true;\"> ".removeChar($innerCCArray[1])." </a></td>\n";
echo " </tr>\n";
for($p=1;$p<count($uArray);$p++) {
$innerUArray=$uArray[$p];
if($innerCCArray[0]==$innerUArray[1])
{
echo " <tr>\n";
echo " <td></td>\n";
echo " <td>\n";
echo " <table cellpadding=\"1\" cellspacing=\"0\">\n";
echo " <tr>\n";
echo " <td>".setUserStatus($innerUArray[12])."</td>\n";
echo " <td class=\"bread\"><a href=\"ccInfo.php?cID=".$innerUArray[0]."&type=2\" target=\"info\" class=\"wrapCell\" onClick=\"vMenu(this,1,1)\" onblur=\"vMenu(this,0,1)\" onmouseover=\"javascript:window.status=''; return true;\"> ".removeChar($innerUArray[14])." (".setPPriv($innerUArray[11])."".setCPriv($innerUArray[10]).") </a></td>\n";
echo " </tr>\n";
echo " </table>\n";
echo " </td>\n";
echo " </tr>\n";
}
}
echo " </table>\n";
echo "</tr>\n";
}
}
for($k=1;$k<count($uArray);$k++) {
$innerUArray=$uArray[$k];
if($innerArray[0]==$innerUArray[1]) {
echo "<tr>\n";
echo " <td></td>\n";
echo " <td class=\"bread\">\n";
echo " <table cellpadding=\"1\" cellspacing=\"0\">\n";
echo " <tr>\n";
echo " <td>".setUserStatus($innerUArray[12])."</td>\n";
echo " <td class=\"bread\"><a href=\"ccInfo.php?cID=".$innerUArray[0]."&type=2\" target=\"info\" class=\"wrapCell\" onClick=\"vMenu(this,1,1)\" onblur=\"vMenu(this,0,1)\" onmouseover=\"javascript:window.status=''; return true;\"> ".removeChar($innerUArray[14])."</b> (".setPPriv($innerUArray[11])."".setCPriv($innerUArray[10]).") </a></td>\n";
echo " </tr>\n";
echo " </table>\n";
echo "</tr>\n";
}
}
}
}
Gewijzigd op 30/10/2005 23:25:00 door wverbeek
wverbeek:
geen info ? ik heb het 2x gepost
Ja, 2x dat je een script hebt dat anders werkt dan jij wil...
Maar zal even kijken wat het probleem nu is...
Edit: Heb de preciese werking van het script even niet bekeken. Maar volgens mij ben je er op de manier:
Code (php)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
<?
// connectie
while($channel == "Home")
{
// Rest van het script qua weergeven enzo...
}
// Afhandelen overige script
?>
// connectie
while($channel == "Home")
{
// Rest van het script qua weergeven enzo...
}
// Afhandelen overige script
?>
Gewijzigd op 31/10/2005 00:00:00 door Willem Jan Z
het is echt een ingewikkeld script ik heb net nog even de code doorgespit maar ik kan er maar niet achter komen
voorbeeld : http://84.105.51.88/static/ts2.php
en de hele code : http://84.105.51.88/static.rar (is niej zo groot het zijn de plaatjes met 2 php pagina's
tnx
een idee ?