Lars: Wie feststellen, ob User noch auf Webseite verweilt?

Hallo ihr,

ich möchte gerne feststellen, ob ein Benutzer noch eingeloggt ist ... das ist eine "Wer ist online?"-Funktion hilfreich. Einfach die Session bei jedem Seitenaufruf zu erneuern, reicht leider nicht aus, da es sich um ein Chatportal mit WebClient handelt. So könnte es sein, dass der Benutzer stundenlang keine andere Seite aufruft, aber dennoch im Portal online ist.

Ich habe gedacht, ein iFrame würde ausreichen, der sich alle paar Minuten einmal aktualisiert und dem Portal mitteilt: Der User ist noch da.

Aber wirklich schön finde ich die Lösung nicht (grade auch wegen dem typischen "Klick" beim Aktualisieren), hat jemand vielleicht eine Idee, ob es auch eleganter geht?

Grüße
Lars

  1. hmm könnte man ajax für sowas nutzen?
    (ja ich weiß, das ist keine antwort, aber die frage passt ja zum thema)

    1. hmm könnte man ajax für sowas nutzen?

      Oder nur Javascript?

  2. Ich habe gedacht, ein iFrame würde ausreichen, der sich alle paar Minuten einmal aktualisiert und dem Portal mitteilt: Der User ist noch da.

    Hmja, gibt es eine bessere Lösung? Überlegen wir mal, der Nutzer muss sich per Browser irgendwie melden und das System muss nach einer Zeit ohne dieser Meldung davon ausgehen, dass der Nutzer nicht mehr "da" ist. Eigentlich würde man den Nutzer nach einer bestimmten Zeit (bspw. 20 Minuten) als nicht mehr "da" definieren, bei Deinem Projekt haben wir wohl die Besonderheit, dass der Nutzer (aus bestimmten, mir nicht ganz nachvollziehbaren Gründen) sehr wohl noch da sein kann.

    Ich glaube jetzt (nach einigem Nachdenken ;), dass Du:

    • entweder mit dem "IFRAME" kommen musst oder
    • den Nutzer nach einer bestimmten Zeit auf "inaktiv" setzen musst, also rauswerfen musst

    Letzteres fände ich ganz OK und für den Nutzer nachvollziehbar (ich kenne die Meldung von verschiedenen Systemen "Zu lange inaktiv, Sitzung wird unterbrochen, neu anmelden, blablabla...".