谁在线“API”?

我们正在研究使用 Grafana 等外部工具来监控论坛活动(例如随时间变化的在线用户数量)。既然我们已经使用了 whos-online 插件,我想知道是否可以通过某种 API 请求或路由获取该插件计算出的在线人数?即使返回的数据多于所需,只要能解析出来也没关系。

或者,是否还有更简单的方法可以通过现有的核心 API 实现这一功能,而我尚未了解?

您可以从 whos-online 插件的 /whosonline/get.json 端点获取数据,但请注意,该 URL 和数据格式不应被视为公开 API——它们随时可能被移除或更改。

另一种选择是执行数据探索器查询,并 通过 API 调用它。以下查询可实现与 whos-online 插件基本相同的功能:

SELECT id AS user_id 
FROM users 
WHERE last_seen_at >= NOW() - INTERVAL '5 minutes'