Onlinezeit von Clients bekommen [Java]

  • Hallo,

    wenn du die Client-Info eines Clients abfragst, enthält diese mehrere Werte. Einer davon ist lautet last_connected:

    Code
    1. clientinfo clid=23
    2. [...] last_connected=1538982902 [...]

    Das ist ein Unix-Timestamp, welcher mittels einer entsprechenden Funktion auch auf z.B. 08.10.2018 07:15 umgewandelt werden kann. Dieser Timestamp entspricht dem Zeitpunkt, wann der Client sich zuletzt verbunden hat.


    Du kannst die Onlinezeit dadurch wie folgt berechnen:

    Code
    1. Aktuelle Uhrzeit - Uhrzeit last_connected = Onlinezeit

    Sprich so:

    Code
    1. $online_time = time() - $client['last_connected'];

    Die $online_time beinhaltet nun die Zeitdifferenz in Sekunden, welche du wie gewünscht umwandeln kannst.


    Wie das ganze jedoch speziell unter Java aussieht, kann ich dir leider nicht sagen, da ich mit Java keine Erfahrung habe.

  • Danke.

    Ohne
    clientinfo und last_connected wäre ich nie drauf gekommen.

    Die Lösung ist:

    long time = Load.api.getClientInfo(clientId).getLastConnectedDate().getSeconds();

    long time2 = Load.api.getClientInfo(clientId).getTimeConnected();

    time2 = time2 / 1000;

    long time3 = time + time2;

    System.out.println("komplett sec : " +time3);