Inoffizielle API für WKchats

Eine Sammlung von PHP-Funktionen zum Auslesen von ChatDaten.
Benutzeravatar
Linus
Moderator
Beiträge: 1124
Registriert: 14.02.2005, 20:31
Wohnort: NRW
Kontaktdaten:

Re: Inoffizielle API für WKchats

Ungelesener Beitrag von Linus » 22.02.2010, 16:29

Bei mir funktioniert das noch tadellos. Hast du evtl. ein Beispiel, wo ich mir das mal "vor Ort" angucken kann? Und den Code den du benutzt (dein PW sollte natürlich nicht drinstehn wenn dus hier postest^^) bräuchte ich dann auch mal.

masterronnow
Beiträge: 182
Registriert: 18.04.2006, 18:33
Wohnort: Berlin

Re: Inoffizielle API für WKchats

Ungelesener Beitrag von masterronnow » 22.02.2010, 16:33

ähhmm....mir fällt da gerade was ein...

ich habe heute mein passwort geändert und werde das wohl nochmal änderen müssen :D

Ich probier das mal aus :D

EDIT: Funktioniert jetzt wieder! Trotzdem danke! *vorn kopp hau

Viele Grüße
masterronnow

karinsch
Beiträge: 29
Registriert: 02.12.2007, 14:47

User online / offline

Ungelesener Beitrag von karinsch » 04.03.2010, 11:49

Hallo!

Ich möchte gerne ausgeben lassen, ob ein User online oder offline ist oder gar nicht mehr existiert.
Das kann ich ja mit dem "checkUser", oder?
Ich übergebe jetzt in der URL einen Usernamen und möchte dann abfragen online/offline/existiert nicht.
Die URL sieht zb. so aus: http://www.domain.at/abfrage.php?user=test
Die abfrage.php sieht dann so aus:

Code: Alles auswählen

include("api.php");
$chat=new Webkicks("xx", 1, "karinsch", "", "xxx");
if ($_GET['user'] != "") {
	$user = $_GET['user'];
	$user_online = $chat->checkUser($user);
	echo($user_online);
}
Wenn ich "?user=karinsch" übergebe, zeigt er mir richtig die "1" an (weil nicht im Chat, aber existent). Wenn ich jetzt einen anderen User übergebe, der existiert, zb. "?user=huhu" dann bekomm ich als Rückmeldung die "0" (obwohl er existiert - da sollte ja dann auch die "1" aufscheinen)...? Warum?
Hab ich was falsch gemacht oder was falsch verstanden was den Befehl "checkUser" angeht?
Bitte um Hilfe!

Benutzeravatar
Linus
Moderator
Beiträge: 1124
Registriert: 14.02.2005, 20:31
Wohnort: NRW
Kontaktdaten:

Re: Inoffizielle API für WKchats

Ungelesener Beitrag von Linus » 04.03.2010, 12:07

Das Problem ist, das checkUser eine SID erwartet. Wenn keine gegeben ist, nimmt er die aus dem Webkicks-Objekt. Praktisch gesehen heißt das, das dein Aufruf checkUser($user) NUR funtkioniert, wenn die SID des Users mit deiner übereinstimmt. Da dies sehr suboptimal ist, werde ich mal versuchen diese Funktion umzuschreiben, damit es auch ohne die SID geht :)

karinsch
Beiträge: 29
Registriert: 02.12.2007, 14:47

Re: Inoffizielle API für WKchats

Ungelesener Beitrag von karinsch » 04.03.2010, 12:15

Linus hat geschrieben:Da dies sehr suboptimal ist, werde ich mal versuchen diese Funktion umzuschreiben, damit es auch ohne die SID geht :)
Das wäre ein Hit *freu* :D

Benutzeravatar
Linus
Moderator
Beiträge: 1124
Registriert: 14.02.2005, 20:31
Wohnort: NRW
Kontaktdaten:

Re: Inoffizielle API für WKchats

Ungelesener Beitrag von Linus » 04.03.2010, 12:28

Und schon erledigt, im Zuge dessen habe ich getOnlineUsers() aufgrund massiver Geschwindigkeitsprobleme seitens meines Hosters bei fsockopen für file_get_contents() umgeschrieben, was hierbei auch schneller ist.

Die jeweils aktuelle Version ist nun auch unter http://wkapi.wkstats.de zu finden, siehe Link im ersten Beitrag :)

karinsch
Beiträge: 29
Registriert: 02.12.2007, 14:47

Re: Inoffizielle API für WKchats

Ungelesener Beitrag von karinsch » 04.03.2010, 12:34

Wow, das ging ja schnell!
Vielen Dank Linus! :D

Benutzeravatar
Linus
Moderator
Beiträge: 1124
Registriert: 14.02.2005, 20:31
Wohnort: NRW
Kontaktdaten:

Re: Inoffizielle API für WKchats

Ungelesener Beitrag von Linus » 04.03.2010, 14:14

Habe eben nach einem Hinweis von Keller noch ein weiteres Update erstellt, was die Performance mancher Scripts deutlich verbessern kann. Im Prinzip werden sämtliche Abfragen nun gespeichert, damit andere Funktionen nicht dieselbe Abfrage zweimal machen.

Ebenfalls habe ich die Funktion checkUser wieder in ihren Ursprungszustand zurückversetzt, da sie ursprünglich für etwas anderes gedacht war (Prüfung der Korrektheit der Logindaten). Als Alternative habe ich ein Beispiel hinzugefügt (s. Beitrag 2, S. 1), das denselben Effekt hat.

masterronnow
Beiträge: 182
Registriert: 18.04.2006, 18:33
Wohnort: Berlin

Re: Inoffizielle API für WKchats

Ungelesener Beitrag von masterronnow » 04.03.2010, 14:39

Hallo,

Update heißt, dass die API Datei auf dem Server aktualisiert werden muss?

Viele Grüße
masterronnow

Benutzeravatar
Linus
Moderator
Beiträge: 1124
Registriert: 14.02.2005, 20:31
Wohnort: NRW
Kontaktdaten:

Re: Inoffizielle API für WKchats

Ungelesener Beitrag von Linus » 04.03.2010, 15:07

Muss nicht, ist aber empfehlenswert ;)

Benutzeravatar
Linus
Moderator
Beiträge: 1124
Registriert: 14.02.2005, 20:31
Wohnort: NRW
Kontaktdaten:

Re: Inoffizielle API für WKchats

Ungelesener Beitrag von Linus » 02.04.2010, 15:16

Aufgrund eines Fehlers in getDetails (dessen Ursache mir noch immer nicht ganz klar ist) habe ich die Funktion nun überarbeitet, sodass sie wieder fehlerfrei funktioniert. Die korrigierte Version findet ihr wie immer unter dem Link im ersten Beitrag. Bei evtl. auftretenden Fehlern einfach melden ;)

karinsch
Beiträge: 29
Registriert: 02.12.2007, 14:47

Re: Inoffizielle API für WKchats

Ungelesener Beitrag von karinsch » 12.04.2010, 20:40

Hallo! :-)

Und zwar hab ich eine Frage zu "getDetails" bzw. dem Profil:
Ich möchte eine Abfrage einbauen, die - kommt mir zumindest so vor - schon geklappt hat, aber jetzt nicht mehr geht... Und zwar möchte ich abfragen, ob überhaupt ein Profil vorhanden ist (dann soll es angezeigt werden) und wenn kein Profil vorhanden ist, dann soll nichts angezeigt werden. Das hätt ich so gemacht:
$details = $chat->getDetails($user);
if ($details["profil"] != "") {
//Profillink wird angezeigt...
}
Aber irgendwie klappt das nicht mehr. $details["profil"] ist nie leer - auch nicht, wenn gar kein Profil vorhanden ist beim User... Dh. es wird bei jedem User ein Profillink angezeigt, obwohl teilweise gar kein Profil vorhanden ist...

Hab ich was falsch gemacht?
Bitte um Hilfe!
Dankeschön!

Benutzeravatar
Linus
Moderator
Beiträge: 1124
Registriert: 14.02.2005, 20:31
Wohnort: NRW
Kontaktdaten:

Re: Inoffizielle API für WKchats

Ungelesener Beitrag von Linus » 12.04.2010, 21:56

Code: Alles auswählen

if ($details["profil"] != "deaktiviert") {
So wäre es richtig. Kann sein, das das bei dem Update der API verändert wurde, da die ganze Funktion erneuert werden musste...

karinsch
Beiträge: 29
Registriert: 02.12.2007, 14:47

Re: Inoffizielle API für WKchats

Ungelesener Beitrag von karinsch » 13.04.2010, 08:12

Hi Linus!

Danke, so funktioniert es wieder. Ja, ich denke, dass es sich seit dem letzten Update der API geändert hat.

Jedenfalls dankeschön. :-)

Benutzeravatar
Linus
Moderator
Beiträge: 1124
Registriert: 14.02.2005, 20:31
Wohnort: NRW
Kontaktdaten:

Re: Inoffizielle API für WKchats

Ungelesener Beitrag von Linus » 29.06.2010, 14:51

Interessant, das niemand den folgenden Bug bemerkt hat:

War der Gastzugang aktiv, wurde false zurückgegeben, wenn die Funktion checkGuestLogin aufgerufen wurde, und true, wenn er deaktiviert war.

Wurde nun gefixt, also bitte den Code neu kopieren :)

Gesperrt

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast