Montag, 8. Dezember 2008

ICQ zeigt Online-Kontakte offline an

Nachdem mein ICQ nun schon seit einigen Tagen absolut verrückt spielt und mir teilweise einige Kontakte einfach nicht mehr als online, geschweige denn in meiner Kontaktliste anzeigt, habe ich mir notdürftig mit ein wenig rumgeprogrammiere selbst geholfen und eine Art Online-Benachrichtigung für die paar nicht erscheinenden Kontakte gebastelt.

Das Ganze sieht dann ungefähr so aus:

icq_screenshot

In der linken oberen Ecke erscheint ein Feld, in dem steht, dass der Kontakt online ist. Außerdem wird in der Titelleiste des entsprechenden Fensters ebenfalls der aktuelle on-/ offline-Status angezeigt. Für diese Status-Abfrage rufe ich ein externes JavaScript von http://icq.apper.de/ auf, welches mir den Status des Kontaktes bei ICQ abfragt (ich vermute, dass das über den Web-Status des Kontaktes funktioniert - da den meine Kontakte allerdings glücklicherweise aktiviert haben, kann ich somit den Onlinestatus sehen).

Ich habe bis jetzt noch nicht herausfinden können, warum manche Personen bei mir im ICQ einfach nicht online angezeigt werden, aber solange ich der Lösung auf der Spur bin, verwende ich halt meine Notlösung.

Sollte jemand ebenfalls ein solches Problem haben, so darf er sich gerne des folgenden Quelltextes bedienen und ihn entsprechend nach seinen Wünschen anpassen.
Ich weise allerdings darauf hin, dass das kein ordentliches HTML, sondern nur ein schneller lauffähiger Rohentwurf ist, z.B. fehlen html- und body-Tags, und ob es in jedem Browser läuft sei auch mal dahingestellt - ich hab das grad mal eben schnell zusammengeschustert, dass es bei mir läuft, mehr nicht:

<head>
<script type="text/javascript">

function reFresh()
    {
        location.reload(true)
    }

window.setInterval("reFresh()",300000);

var p

function show_popup()
{
      p = window.createPopup()
      var pbody = p.document.body
      pbody.style.backgroundColor = "lime"
      pbody.style.border = "solid black 1px"
      pbody.innerHTML="&nbsp; &nbsp;XYZ ist online."
      p.show(0,0,115,20)
}

</script>

<script src=http://icq.apper.de/ICQNUMMER|online|offline|var.js type="text/javascript">
</script>

</head>

<script type="text/javascript">
if (ICQ == "online") {
    document.title = "Online";
    show_popup();
    }
    else
    {
    document.title = "Weg";
    }
</script>

(ICQNUMMER steht natürlich für die entsprechende ICQ-Nummer der anzuzeigenden Person) =P

Wenn ich mich nicht irre, bietet ICQ selbst auch eine API an, mit der man sämtliche Informationen des Kontaktes auslesen kann. Da mir das allerdings zu kompliziert zum Reinlesen war, habe ich diese Methode hier verwendet.

So, und morgen werde ich mich mal weiter auf die Suche nach der Ursache des Offline-Problems machen ...

2 Comments:

Notorius73 hat gesagt…

Jeder Nutzer von ICQ kann selbst festlegen, ob andere den "Online-Status" per Skript oder Widget abrufen können:

Hierzu muss unter "Optionen -> Datenschutz" der Punkt "Meinen Status für ICQ- und Web-Benutzer freigeben" aktiviert sein.

Ansonsten siehste nix... ;-)

Sky-Walker hat gesagt…

Ja, ich weiß. Mein Problem ist ja, dass ich diverse Leute aus meiner Kontaktliste in der eigentlichen Kontaktliste nicht online sehe. Sobald der vermeintliche Offline-User mir hingegen eine Nachricht geschrieben hat, sehe ich ihn online, solange bis ich mich reconnecten sollte.

Per Skript, beziehungsweise auch auf der jeweiligen persönlichen ICQ-Webseite des Users sehe ich ihn allerdings online.

Bin immernoch am tüfteln, woran es liegt, und solange muss ich halt auf meine Behelfslösung zurückgreifen ...

Kommentar veröffentlichen

Was denkst du darüber: