Who's Online Plugin (discourse-whos-online)

Summary: discourse-whos-online displays a list of users currently active on the site

:link: GitHub: https://github.com/davidtaylorhq/discourse-whos-online
:arrow_right: Install: Follow the plugin installation guide.

Features

:information_source: Think carefully before installing this plugin. Discourse is designed for asynchronous discussion, and a list of online users can be harmful for some communities

:information_source: This plugin is marked #experimental because it is not optimized for very large forums. If you have more than 50 concurrent users, it might be best to wait until the #experimental tag is removed.

It can also optionally display a user’s online status on their avatar. Either with a “ring”, “glow”, or with a “flair” icon in the top left.
45 39 10

The plugin uses the MessageBus to keep up-to-date, so user status is reflected in real-time. Users which have enabled the “hide profile and presence” setting will not be displayed. You can customize a number of things using the available site settings and language strings:

Configuration

These are available in the “plugins” section of the admin settings panel.

  • whos_online_active_timeago: maximum “last seen” for which users are considered online (minutes)
  • whos_online_collapse_threshold: number of users before the avatars overlap each other (see gif above). Set very high to disable this feature
  • whos_online_maximum_display: the maximum number of avatars to display. The numeric counter will still count higher than this. The choice of who gets displayed is currently inconsistent
  • whos_online minimum_display: the minimum number of avatars to display. Below this, a “no users online” message is displayed
  • whos_online_hide_below_minimum_display: if enabled, the widget will be entirely hidden when the number of users is less than minimum_display
  • whos_online_display_public: should the plugin be displayed to people who aren’t logged in? Defaults to true.
  • whos_online_display_min_trust_level: the minimum trust level that this plugin is displayed to. Defaults to 0
  • whos_online_avatar_indicator: choose how to display online status on user avatars. Defaults to “ring”
  • whos_online_avatar_indicator_topic_lists: display avatar indicators in mobile topic lists, and the “Categories & Latest” view. Defaults to off.

:speech_balloon: Frontend Language Strings

These are available in the admin panel under Customize–>Text Content (search for whos_online)

  • js.whos_online.no_users | “No users currently online”:The message displayed when the number of users < whos online minimum display setting.
  • js.whos_online.title | “Online ({{count}})”: The text displayed before the list of avatars. {{count}} is the number of users online.
  • js.whos_online.tooltip | “Users seen in the last 5 minutes”: the text displayed on mouseover of the text.

CHANGELOG

TODO

120 Likes

At the moment, I’d recommend staying away from this plugin if you have more than ~50 concurrent users. That said, there are reports of people who have it working with many more users, and people who report issues with fewer users.

We are hoping to rewrite some parts of this plugin in the next few weeks/months so that it scales better, and we can remove the #experimental tag.

24 Likes

3 posts were split to a new topic: Split profile hiding and presence