von adik |
ich hatte gerade erst kürzlich selber mal danach recherchiert und das gefunden:
http://www.icq.com/js/pcc.php?Uin=18006683
man erhält die daten als javascript variablen, aber das kann man ja konvertieren.
z.b. so:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62: |
<?
$file = fopen("http://www.icq.com/js/pcc.php?Uin=18006683","r");
while ($line = fgets($file, 1024)) {
$cont[] = $line;
}
fclose($file);
for($i=0;$i<count($cont);$i++){
$t = "";
$t = explode("=",$cont[$i]);
if(count($t) > 2){
$str = "";
for($j=2;$j<count($t);$j++){
$str .= $t[$j]."=";
}
$icqarr[(str_replace(" ","",$t[0]))] = str_replace(
"\n",
"",
str_replace(
"\r\n",
"",
str_replace(
"/whitepages",
"http://www.icq.com/whitepages",
html_entity_decode(
str_replace(
"src=\"/img","src=\"http://www.icq.com/img",
str_replace(
"&",
"&",
str_replace(
"/",
"/",
str_replace(
"\";",
"",
str_replace(
"\"; ",
"\";",
substr(
substr(
$str,
0,
-1
),
2
)
)
)
)
)
)
)
)
)
);
}
}
print_r($icqarr);
?>
|
|
von Andreas248 |
Hallo,
hätte da mal 2 Fragen zu dem letzten Code:
1. kann ich damit statt on und off auch abwesend mit abrufen?
und
2. hat jemand eine Idee, wieso der Status erkannt wird, wenn ich über ICQ rein gehe, nicht aber, wenn ich die gleiche ICQnr über Trillian nutze?
Danke im Voraus für die Antwort(en)!
Nachtrag:
Also hiermit funktioniert der 3. Status bei mir leider nicht:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22: | <?php
$icq = "XXXXXXXXX";
$fp = fsockopen ("status.icq.com", 80, &$errno, &$errstr, 30) or die("[ERROR - Could not connect to server (status.icq.com)]");
fputs($fp, "GET /online.gif?icq=$icq&img=5&online= HTTP/1.0\n\n");
while(!feof($fp) && !$icq_finished) {
$line = fgets ($fp,128);
if (substr($line,0,9) == 'Location:') {
if (substr($line,13,11) == 'online1.gif') { $online = "1"; $icq_finished = true;}
elseif (substr($line,13,11) == 'online0.gif') { $online = "0"; $icq_finished = true;}
elseif (substr($line,13,11) == 'online2.gif') { $online = "2"; $icq_finished = true;}
}
}
fclose($fp);
if($online == "1") { echo("Online"); }
elseif($online=="0") { echo("Offffffline"); }
elseif($online=="2") { echo("anders"); }
else { echo("da stimmt was nicht"); }
?> |
|
von MCM |
So, will nun mal dieses alte Thema noch mal hervorziehen, da ich soein script jetzt auch brauchte, hb ich mal in nem anderem Forum nachgefragt und dort konnte man mir weiterhelfen. Also, folgender Code, dann klappt es
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31: | <?php
$icq = "331715700";
$fp = fsockopen ("status.icq.com", 80, &$errno, &$errstr, 30) or die("[ERROR - Could not connect to server (status.icq.com)]");
fputs($fp, "GET /online.gif?icq=$icq&img=5&online= HTTP/1.0\n\n");
while(!feof($fp) && !$icq_finished) {
$line = fgets ($fp,128);
if (substr($line,0,9) == 'Location:') {
if (substr($line,13,11) == 'online1.gif') { // online
$online = "1";
$icq_finished = true;
} else {
$online = "0";
$icq_finished = true;
}
}
}
fclose($fp);
if($online == "1") {
echo("Online");
} elseif($online=="0") {
echo("Offffffline");
} else {
echo("da stimmt was nicht");
}
?> |
Musst halt nur die Textausgabe durch Bilde ersetzten. Kompletten Code gibts bei http://www.qatlantis.com/IMIndicator.php zum runterladen, allerdings noch mit allen möglichen Anhang, der eigentlich unnötig ist ;) |
von Xeal |
@ MCM:
Ich will aber nunmal nicht die standart bilder...
Auch wenn sie neutral sind |
von MCM |
Außerdem gibts unegefähr 25 verschiedene fertige Bilder von denen, wozu dann was eigenes. Einiges von denen ist sogar noch recht neutral
---
cya MCM
[Je mehr Bürger mit Zivilcourage ein Land hat, desto weniger Helden wird es einmal brauchen]
[by Franca Magnani] |
|