Dybest set fungerer disse ting som følgende.
Hver gang brugeren foretager handlinger (chatopdatering, sendt besked, besøgt side osv.), opdateres et token, der er knyttet til brugeren (token, der er gemt på din server, f.eks. DB) med det aktuelle tidspunkt.
| User ID | Last action |
-------------------------------------
| 14 (mark) | 2012-02-09-10:34:53 |
| 56 (phil) | 2012-02-09-09:12:34 |
| 9 (john) | 2012-02-09-10:33:11 |
Og så beslutter du dig for, at en bruger er online hvis hans token ikke er for gammel (5/10 minutter?)
Du kan forbedre denne metode, hvis du bruger AJAX til at sende en periodisk anmodning til serveren hvert 1. minut eller deromkring. Denne AJAX-anmodning opdaterer tokenværdien. Så på denne måde kan du fortælle, at brugeren også er online, hvis han ikke gør andet end at stirre på siden. Og når han afslutter (luk browser eller fane), stopper AJAX periodiske opkald med at virke, så efter 5/10 minutter er brugeren erklæret offline .
Held og lykke!