Add 'INFO' command to unlogged-in command set, so that we can be polled by Mudconnector and Mudstats.
This commit is contained in:
parent
6783d5faa0
commit
57b0c03ce5
2 changed files with 21 additions and 1 deletions
|
|
@ -23,3 +23,4 @@ class UnloggedinCmdSet(CmdSet):
|
||||||
self.add(unloggedin.CmdUnconnectedHelp())
|
self.add(unloggedin.CmdUnconnectedHelp())
|
||||||
self.add(unloggedin.CmdUnconnectedEncoding())
|
self.add(unloggedin.CmdUnconnectedEncoding())
|
||||||
self.add(unloggedin.CmdUnconnectedScreenreader())
|
self.add(unloggedin.CmdUnconnectedScreenreader())
|
||||||
|
self.add(unloggedin.CmdUnconnectedInfo())
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,7 @@ Commands that are available from the connect screen.
|
||||||
"""
|
"""
|
||||||
import re
|
import re
|
||||||
import time
|
import time
|
||||||
|
import datetime
|
||||||
from collections import defaultdict
|
from collections import defaultdict
|
||||||
from random import getrandbits
|
from random import getrandbits
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
|
|
@ -11,8 +12,9 @@ from evennia.accounts.models import AccountDB
|
||||||
from evennia.objects.models import ObjectDB
|
from evennia.objects.models import ObjectDB
|
||||||
from evennia.server.models import ServerConfig
|
from evennia.server.models import ServerConfig
|
||||||
from evennia.comms.models import ChannelDB
|
from evennia.comms.models import ChannelDB
|
||||||
|
from evennia.server.sessionhandler import SESSIONS
|
||||||
|
|
||||||
from evennia.utils import create, logger, utils
|
from evennia.utils import create, logger, utils, gametime
|
||||||
from evennia.commands.cmdhandler import CMD_LOGINSTART
|
from evennia.commands.cmdhandler import CMD_LOGINSTART
|
||||||
|
|
||||||
COMMAND_DEFAULT_CLASS = utils.class_from_module(settings.COMMAND_DEFAULT_CLASS)
|
COMMAND_DEFAULT_CLASS = utils.class_from_module(settings.COMMAND_DEFAULT_CLASS)
|
||||||
|
|
@ -516,6 +518,23 @@ class CmdUnconnectedScreenreader(COMMAND_DEFAULT_CLASS):
|
||||||
self.session.sessionhandler.session_portal_sync(self.session)
|
self.session.sessionhandler.session_portal_sync(self.session)
|
||||||
|
|
||||||
|
|
||||||
|
class CmdUnconnectedInfo(COMMAND_DEFAULT_CLASS):
|
||||||
|
"""
|
||||||
|
Provides MUDINFO output, so that Evennia games can be added to Mudconnector
|
||||||
|
and Mudstats.
|
||||||
|
"""
|
||||||
|
key = "info"
|
||||||
|
locks = "cmd:all()"
|
||||||
|
|
||||||
|
def func(self):
|
||||||
|
self.caller.msg("## BEGIN INFO 1.1")
|
||||||
|
self.caller.msg("Name: %s" % settings.SERVERNAME)
|
||||||
|
self.caller.msg("Uptime: %s" % datetime.datetime.fromtimestamp(gametime.SERVER_START_TIME).ctime())
|
||||||
|
self.caller.msg("Connected: %d" % SESSIONS.account_count())
|
||||||
|
self.caller.msg("Version: Evennia %s" % utils.get_evennia_version())
|
||||||
|
self.caller.msg("## END INFO")
|
||||||
|
|
||||||
|
|
||||||
def _create_account(session, accountname, password, permissions, typeclass=None, email=None):
|
def _create_account(session, accountname, password, permissions, typeclass=None, email=None):
|
||||||
"""
|
"""
|
||||||
Helper function, creates an account of the specified typeclass.
|
Helper function, creates an account of the specified typeclass.
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue