11#include <Atlas/Objects/Entity.h>
14using Atlas::Objects::Entity::RootEntity;
21 Atlas::Message::Element element;
23 if (!svr->copyAttr(
"ruleset", element) && element.isString()) {
29 name = svr->getName();
30 if (!svr->copyAttr(
"clients", element) && element.isInt()) {
35 if (!svr->copyAttr(
"server", element) && element.isString()) {
40 if (!svr->copyAttr(
"uptime", element) && element.isFloat()) {
48 if (!svr->copyAttr(
"entities", element) && element.isInt()) {
52 if (!svr->copyAttr(
"version", element) && element.isString()) {
56 if (!svr->copyAttr(
"builddate", element) && element.isString()) {
60 if (!svr->copyAttr(
"protocol_version", element) && element.isInt()) {
64 if (!svr->copyAttr(
"assets", element) && element.isList()) {
65 for (
auto& url : element.List()) {
67 assets.emplace_back(url.String());
long entities
the number of entities on the server
std::string ruleset
retrieve a human-readable name of the ruleset (e.g. 'mason' or 'circe')
std::string buildDate
the server program build-date, as a free text string
long protocol_version
version of the protocol used
std::string server
the server program name, i.e 'stage' or 'cyphesis'
void processServer(const Atlas::Objects::Entity::RootEntity &svr)
std::string name
retrieve the human-readable name of the server (e.g 'Bob's Mason Server')
std::string version
the server program version, as a free text string
std::vector< std::string > assets
double uptime
the server's uptime in seconds
int clients
the number of clients currently connected to the server