Per the linked Meta discussion, I would like to propose a feature where users of all Wikipedia projects could display their online status (Online, Offilne, and maybe "Custom") on their userpages.
Based on the meta discussion (which is also linked from en.wiki and Commons), the key use of this feature is to increase user response time, by enabling users to search for online/non-busy users to contact (i.e. ordinary editors contacting admins or sysops). And as said by another user, it would also be very helpful to the OTRS team.
This proposal is only for the implementation of a simple dot and text, that could either (depending on consensus here):
a). Change color and text, from Green/Orange/Red and Online/Away*/Offline, which is system-assigned and not editable by the user. Away shows when the editor is online, but haven't edit for, say 15 minutes.
b). Allow the user to create custom (editable) statuses and colors (limit to 5?). This would not be auto-selected by the system, and has to be manually selected by the user. *Has one major issue; see issues section (way below).
c). As (b), allow users to create custom statuses/colors, but also allow them to assign "rules" that, if met, would swap statuses automatically by the system.
A key point discussed for (b) was to make the statuses global (like the global change when changing email addresses). This is because, as a global user manually sets in his/her status on a particular Wiki, there is a high probability the s/he would forget to change the status back when leaving. A global status would make that happen less often.
Ways to implement this (based on my limited knowledge with MediaWiki):
- We could base the updates on a system similar to that of when changing the Watchlist, which doesn't really record a list of changes/contributions (as it would when a user assigns a special page like "User:Example/Status", and transclude it on his/her userpage, thus clogging the contribs on every
update). To me, it seems like only (a) could be done this way, but that's just me.
- Another way to work this out (which seems to be for only two statuses: Online/Offline), could be to use the [[Special:UserLogin]] and [[Special:UserLogout]]. Where logging in would automatically set the status to "Online", and logging out would set to "Offline". This is where one major issue, also mentioned at (b), comes to play:
What happens if:
- The user closes the browser instead of clicking [[Special:UserLogout]]?
- And what about the users who never close anything, and walks away when done?