Add SERVER_HOSTNAME setting. Update website index to show telnet connect info
This commit is contained in:
parent
be3fea2af4
commit
063c44f38d
4 changed files with 97 additions and 31 deletions
|
|
@ -99,7 +99,8 @@ Up requirements to Django 3.2+, Twisted 21+
|
||||||
because it's used for handlers, and e.g. self.locks=[] is a common beginner mistake.
|
because it's used for handlers, and e.g. self.locks=[] is a common beginner mistake.
|
||||||
- Add `$pron()` inlinefunc for pronoun parsing in actor-stance strings using
|
- Add `$pron()` inlinefunc for pronoun parsing in actor-stance strings using
|
||||||
`msg_contents`.
|
`msg_contents`.
|
||||||
|
- Update defauklt website to show Telnet/SSL/SSH connect info. Added new
|
||||||
|
`SERVER_HOSTNAME` setting for use in the server:port stanza.
|
||||||
|
|
||||||
|
|
||||||
### Evennia 0.9.5 (2019-2020)
|
### Evennia 0.9.5 (2019-2020)
|
||||||
|
|
|
||||||
|
|
@ -27,6 +27,10 @@ SERVERNAME = "Evennia"
|
||||||
# Short one-sentence blurb describing your game. Shown under the title
|
# Short one-sentence blurb describing your game. Shown under the title
|
||||||
# on the website and could be used in online listings of your game etc.
|
# on the website and could be used in online listings of your game etc.
|
||||||
GAME_SLOGAN = "The Python MUD/MU* creation system"
|
GAME_SLOGAN = "The Python MUD/MU* creation system"
|
||||||
|
# The url address to your server, like mymudgame.com. This should be the publicly
|
||||||
|
# visible location. This is used e.g. on the web site to show how you connect to the
|
||||||
|
# game over telnet. Default is localhost (only on your machine).
|
||||||
|
SERVER_HOSTNAME = "localhost"
|
||||||
# Lockdown mode will cut off the game from any external connections
|
# Lockdown mode will cut off the game from any external connections
|
||||||
# and only allow connections from localhost. Requires a cold reboot.
|
# and only allow connections from localhost. Requires a cold reboot.
|
||||||
LOCKDOWN_MODE = False
|
LOCKDOWN_MODE = False
|
||||||
|
|
|
||||||
|
|
@ -28,17 +28,51 @@
|
||||||
<a href="{% url 'webclient:index' %}" class="playbutton">Play in the browser!</a>
|
<a href="{% url 'webclient:index' %}" class="playbutton">Play in the browser!</a>
|
||||||
</p>
|
</p>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
{% if telnet_enabled %}
|
||||||
<p>
|
<p>
|
||||||
For more info, take your time to
|
Telnet: <strong>{{ server_hostname }}</strong>, port
|
||||||
peruse Evennia's extensive online <a href="https://evennia.com/docs/latest">manual</a>.
|
{% for port in telnet_ports %}
|
||||||
|
{% if not forloop.first and forloop.last %} or
|
||||||
|
{% elif forloop.counter != 1 %},
|
||||||
|
{% endif %}
|
||||||
|
<strong>{{ port }}</strong>
|
||||||
|
{% endfor %}
|
||||||
|
</p>
|
||||||
|
{% endif %}
|
||||||
|
{% if telnet_ssl_enabled %}
|
||||||
|
<p>
|
||||||
|
Telnet (SSL): <strong>{{ server_hostname }}</strong>, port
|
||||||
|
{% for port in telnet_ssl_ports %}
|
||||||
|
{% if not forloop.first and forloop.last %} or
|
||||||
|
{% elif forloop.counter != 1 %},
|
||||||
|
{% endif %}
|
||||||
|
<strong>{{ port }}</strong>
|
||||||
|
{% endfor %}
|
||||||
|
</p>
|
||||||
|
{% endif %}
|
||||||
|
{% if ssh_enabled %}
|
||||||
|
<p>
|
||||||
|
SSH: <strong>{{ server_hostname }}</strong>, port
|
||||||
|
{% for port in ssh_ports %}
|
||||||
|
{% if not forloop.first and forloop.last %} or
|
||||||
|
{% elif forloop.counter != 1 %},
|
||||||
|
{% endif %}
|
||||||
|
<strong>{{ port }}</strong>
|
||||||
|
{% endfor %}
|
||||||
|
</p>
|
||||||
|
{% endif %}
|
||||||
|
<p>
|
||||||
|
For more info, see the <a href="https://www.evennia.com">Evennia homepage</a> or check
|
||||||
|
out our extensive <a href="https://evennia.com/docs/latest">online documentation</a>.
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p>
|
||||||
If you have any questions, don't hesitate to join the Evennia community! Drop a message in the <a href="https://github.com/evennia/evennia/discussions">Evennia forums</a>
|
Don't hesitate asking questions to the Evennia community!<br>Drop a message
|
||||||
or come say hi in the support/chat channels (<a href="http://webchat.freenode.net/?channels=evennia">IRC</a>
|
in the <a href="https://github.com/evennia/evennia/discussions">Evennia forums</a>
|
||||||
or <a href="https://discord.gg/NecFePw">Discord</a>).
|
or come say hi in the <a href="https://discord.gg/AJJpcRUhtF">Discord support channel</a>.
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p>
|
||||||
If you find bugs, please report them to our <a href="https://github.com/evennia/evennia/issues">Issue tracker</a> on GitHub.
|
Evennia is Open source and can be found on <a href="https://github.com/evennia/evennia">GitHub</a>.
|
||||||
|
If you find bugs, please report them to the <a href="https://github.com/evennia/evennia/issues">Issue tracker</a>.
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -15,24 +15,45 @@ from evennia.utils.utils import get_evennia_version
|
||||||
# Setup lists of the most relevant apps so
|
# Setup lists of the most relevant apps so
|
||||||
# the adminsite becomes more readable.
|
# the adminsite becomes more readable.
|
||||||
|
|
||||||
|
GAME_NAME = None
|
||||||
|
GAME_SLOGAN = None
|
||||||
|
SERVER_VERSION = None
|
||||||
|
SERVER_HOSTNAME = None
|
||||||
|
|
||||||
|
TELNET_ENABLED = None
|
||||||
|
TELNET_PORTS = None
|
||||||
|
TELNET_SSL_ENABLED = None
|
||||||
|
TELNET_SSL_PORTS = None
|
||||||
|
|
||||||
|
SSH_ENABLED = None
|
||||||
|
SSH_PORTS = None
|
||||||
|
|
||||||
|
WEBCLIENT_ENABLED = None
|
||||||
|
WEBSOCKET_CLIENT_ENABLED = None
|
||||||
|
WEBSOCKET_PORT = None
|
||||||
|
WEBSOCKET_URL = None
|
||||||
|
|
||||||
|
REST_API_ENABLED = False
|
||||||
|
|
||||||
ACCOUNT_RELATED = ["Accounts"]
|
ACCOUNT_RELATED = ["Accounts"]
|
||||||
GAME_ENTITIES = ["Objects", "Scripts", "Comms", "Help"]
|
GAME_ENTITIES = ["Objects", "Scripts", "Comms", "Help"]
|
||||||
GAME_SETUP = ["Permissions", "Config"]
|
GAME_SETUP = ["Permissions", "Config"]
|
||||||
CONNECTIONS = ["Irc"]
|
CONNECTIONS = ["Irc"]
|
||||||
WEBSITE = ["Flatpages", "News", "Sites"]
|
WEBSITE = ["Flatpages", "News", "Sites"]
|
||||||
REST_API_ENABLED = False
|
|
||||||
|
|
||||||
# Determine the site name and server version
|
|
||||||
def set_game_name_and_slogan():
|
def load_game_settings():
|
||||||
"""
|
"""
|
||||||
Sets global variables GAME_NAME and GAME_SLOGAN which are used by
|
Load and cache game settings.
|
||||||
general_context.
|
|
||||||
|
|
||||||
Notes:
|
|
||||||
This function is used for unit testing the values of the globals.
|
|
||||||
|
|
||||||
"""
|
"""
|
||||||
global GAME_NAME, GAME_SLOGAN, SERVER_VERSION, REST_API_ENABLED
|
global GAME_NAME, GAME_SLOGAN, SERVER_VERSION, SERVER_HOSTNAME
|
||||||
|
global TELNET_ENABLED, TELNET_PORTS
|
||||||
|
global TELNET_SSL_ENABLED, TELNET_SSL_PORTS
|
||||||
|
global SSH_ENABLED, SSH_PORTS
|
||||||
|
global WEBCLIENT_ENABLED, WEBSOCKET_CLIENT_ENABLED, WEBSOCKET_PORT, WEBSOCKET_URL
|
||||||
|
global REST_API_ENABLED
|
||||||
|
|
||||||
try:
|
try:
|
||||||
GAME_NAME = settings.SERVERNAME.strip()
|
GAME_NAME = settings.SERVERNAME.strip()
|
||||||
except AttributeError:
|
except AttributeError:
|
||||||
|
|
@ -42,19 +63,16 @@ def set_game_name_and_slogan():
|
||||||
GAME_SLOGAN = settings.GAME_SLOGAN.strip()
|
GAME_SLOGAN = settings.GAME_SLOGAN.strip()
|
||||||
except AttributeError:
|
except AttributeError:
|
||||||
GAME_SLOGAN = SERVER_VERSION
|
GAME_SLOGAN = SERVER_VERSION
|
||||||
|
SERVER_HOSTNAME = settings.SERVER_HOSTNAME
|
||||||
|
|
||||||
REST_API_ENABLED = settings.REST_API_ENABLED
|
TELNET_ENABLED = settings.TELNET_ENABLED
|
||||||
|
TELNET_PORTS = settings.TELNET_PORTS
|
||||||
|
TELNET_SSL_ENABLED = settings.SSL_ENABLED
|
||||||
|
TELNET_SSL_PORTS = settings.SSL_PORTS
|
||||||
|
|
||||||
def set_webclient_settings():
|
SSH_ENABLED = settings.SSH_ENABLED
|
||||||
"""
|
SSH_PORTS = settings.SSH_PORTS
|
||||||
As with set_game_name_and_slogan above, this sets global variables pertaining
|
|
||||||
to webclient settings.
|
|
||||||
|
|
||||||
Notes:
|
|
||||||
Used for unit testing.
|
|
||||||
|
|
||||||
"""
|
|
||||||
global WEBCLIENT_ENABLED, WEBSOCKET_CLIENT_ENABLED, WEBSOCKET_PORT, WEBSOCKET_URL
|
|
||||||
WEBCLIENT_ENABLED = settings.WEBCLIENT_ENABLED
|
WEBCLIENT_ENABLED = settings.WEBCLIENT_ENABLED
|
||||||
WEBSOCKET_CLIENT_ENABLED = settings.WEBSOCKET_CLIENT_ENABLED
|
WEBSOCKET_CLIENT_ENABLED = settings.WEBSOCKET_CLIENT_ENABLED
|
||||||
# if we are working through a proxy or uses docker port-remapping, the webclient port encoded
|
# if we are working through a proxy or uses docker port-remapping, the webclient port encoded
|
||||||
|
|
@ -66,9 +84,11 @@ def set_webclient_settings():
|
||||||
# this is determined dynamically by the client and is less of an issue
|
# this is determined dynamically by the client and is less of an issue
|
||||||
WEBSOCKET_URL = settings.WEBSOCKET_CLIENT_URL
|
WEBSOCKET_URL = settings.WEBSOCKET_CLIENT_URL
|
||||||
|
|
||||||
|
REST_API_ENABLED = settings.REST_API_ENABLED
|
||||||
|
|
||||||
|
|
||||||
|
load_game_settings()
|
||||||
|
|
||||||
set_game_name_and_slogan()
|
|
||||||
set_webclient_settings()
|
|
||||||
|
|
||||||
# The main context processor function
|
# The main context processor function
|
||||||
def general_context(request):
|
def general_context(request):
|
||||||
|
|
@ -91,11 +111,18 @@ def general_context(request):
|
||||||
"puppet": puppet,
|
"puppet": puppet,
|
||||||
"game_name": GAME_NAME,
|
"game_name": GAME_NAME,
|
||||||
"game_slogan": GAME_SLOGAN,
|
"game_slogan": GAME_SLOGAN,
|
||||||
|
"server_hostname": SERVER_HOSTNAME,
|
||||||
"evennia_userapps": ACCOUNT_RELATED,
|
"evennia_userapps": ACCOUNT_RELATED,
|
||||||
"evennia_entityapps": GAME_ENTITIES,
|
"evennia_entityapps": GAME_ENTITIES,
|
||||||
"evennia_setupapps": GAME_SETUP,
|
"evennia_setupapps": GAME_SETUP,
|
||||||
"evennia_connectapps": CONNECTIONS,
|
"evennia_connectapps": CONNECTIONS,
|
||||||
"evennia_websiteapps": WEBSITE,
|
"evennia_websiteapps": WEBSITE,
|
||||||
|
"telnet_enabled": TELNET_ENABLED,
|
||||||
|
"telnet_ports": TELNET_PORTS,
|
||||||
|
"telnet_ssl_enabled": TELNET_SSL_ENABLED,
|
||||||
|
"telnet_ssl_ports": TELNET_SSL_PORTS,
|
||||||
|
"ssh_enabled": SSH_ENABLED,
|
||||||
|
"ssh_ports": SSH_ENABLED,
|
||||||
"webclient_enabled": WEBCLIENT_ENABLED,
|
"webclient_enabled": WEBCLIENT_ENABLED,
|
||||||
"websocket_enabled": WEBSOCKET_CLIENT_ENABLED,
|
"websocket_enabled": WEBSOCKET_CLIENT_ENABLED,
|
||||||
"websocket_port": WEBSOCKET_PORT,
|
"websocket_port": WEBSOCKET_PORT,
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue