mirror of
https://github.com/evennia/evennia.git
synced 2026-03-19 14:26:30 +01:00
3358 lines
No EOL
245 KiB
HTML
3358 lines
No EOL
245 KiB
HTML
|
||
<!DOCTYPE html>
|
||
|
||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||
<head>
|
||
<meta charset="utf-8" />
|
||
<title>evennia.server package — Evennia 1.0-dev documentation</title>
|
||
<link rel="stylesheet" href="../_static/alabaster.css" type="text/css" />
|
||
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
||
<script id="documentation_options" data-url_root="../" src="../_static/documentation_options.js"></script>
|
||
<script src="../_static/jquery.js"></script>
|
||
<script src="../_static/underscore.js"></script>
|
||
<script src="../_static/doctools.js"></script>
|
||
<script src="../_static/language_data.js"></script>
|
||
<link rel="index" title="Index" href="../genindex.html" />
|
||
<link rel="search" title="Search" href="../search.html" />
|
||
|
||
<link rel="stylesheet" href="../_static/custom.css" type="text/css" />
|
||
|
||
|
||
<meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" />
|
||
|
||
</head><body>
|
||
|
||
|
||
<div class="document">
|
||
<div class="documentwrapper">
|
||
<div class="bodywrapper">
|
||
|
||
|
||
<div class="body" role="main">
|
||
|
||
<div class="section" id="module-evennia.server">
|
||
<span id="evennia-server-package"></span><h1>evennia.server package<a class="headerlink" href="#module-evennia.server" title="Permalink to this headline">¶</a></h1>
|
||
<p>This sub-package holds the Server and Portal programs - the “core” of
|
||
Evennia. It also contains the SessionHandler that manages all
|
||
connected users as well as defines all the connection protocols used
|
||
to connect to the game.</p>
|
||
<div class="section" id="subpackages">
|
||
<h2>Subpackages<a class="headerlink" href="#subpackages" title="Permalink to this headline">¶</a></h2>
|
||
<div class="toctree-wrapper compound">
|
||
<ul>
|
||
<li class="toctree-l1"><a class="reference internal" href="evennia.server.game_index_client.html">evennia.server.game_index_client package</a><ul>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.game_index_client.html#submodules">Submodules</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.game_index_client.html#module-evennia.server.game_index_client.client">evennia.server.game_index_client.client module</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.game_index_client.html#module-evennia.server.game_index_client.service">evennia.server.game_index_client.service module</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l1"><a class="reference internal" href="evennia.server.portal.html">evennia.server.portal package</a><ul>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.portal.html#submodules">Submodules</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.portal.html#module-evennia.server.portal.amp">evennia.server.portal.amp module</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.portal.html#module-evennia.server.portal.amp_server">evennia.server.portal.amp_server module</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.portal.html#module-evennia.server.portal.grapevine">evennia.server.portal.grapevine module</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.portal.html#module-evennia.server.portal.irc">evennia.server.portal.irc module</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.portal.html#module-evennia.server.portal.mccp">evennia.server.portal.mccp module</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.portal.html#module-evennia.server.portal.mssp">evennia.server.portal.mssp module</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.portal.html#module-evennia.server.portal.mxp">evennia.server.portal.mxp module</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.portal.html#module-evennia.server.portal.naws">evennia.server.portal.naws module</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.portal.html#module-evennia.server.portal.portal">evennia.server.portal.portal module</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.portal.html#module-evennia.server.portal.portalsessionhandler">evennia.server.portal.portalsessionhandler module</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.portal.html#module-evennia.server.portal.rss">evennia.server.portal.rss module</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.portal.html#module-evennia.server.portal.ssh">evennia.server.portal.ssh module</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.portal.html#module-evennia.server.portal.ssl">evennia.server.portal.ssl module</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.portal.html#module-evennia.server.portal.suppress_ga">evennia.server.portal.suppress_ga module</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.portal.html#module-evennia.server.portal.telnet">evennia.server.portal.telnet module</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.portal.html#module-evennia.server.portal.telnet_oob">evennia.server.portal.telnet_oob module</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.portal.html#module-evennia.server.portal.telnet_ssl">evennia.server.portal.telnet_ssl module</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.portal.html#module-evennia.server.portal.tests">evennia.server.portal.tests module</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.portal.html#module-evennia.server.portal.ttype">evennia.server.portal.ttype module</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.portal.html#module-evennia.server.portal.webclient">evennia.server.portal.webclient module</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.portal.html#module-evennia.server.portal.webclient_ajax">evennia.server.portal.webclient_ajax module</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l1"><a class="reference internal" href="evennia.server.profiling.html">evennia.server.profiling package</a><ul>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.profiling.html#submodules">Submodules</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.profiling.html#module-evennia.server.profiling.dummyrunner">evennia.server.profiling.dummyrunner module</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.profiling.html#module-evennia.server.profiling.dummyrunner_settings">evennia.server.profiling.dummyrunner_settings module</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.profiling.html#module-evennia.server.profiling.memplot">evennia.server.profiling.memplot module</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.profiling.html#module-evennia.server.profiling.settings_mixin">evennia.server.profiling.settings_mixin module</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.profiling.html#module-evennia.server.profiling.test_queries">evennia.server.profiling.test_queries module</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.profiling.html#module-evennia.server.profiling.tests">evennia.server.profiling.tests module</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.profiling.html#module-evennia.server.profiling.timetrace">evennia.server.profiling.timetrace module</a></li>
|
||
</ul>
|
||
</li>
|
||
<li class="toctree-l1"><a class="reference internal" href="evennia.server.tests.html">evennia.server.tests package</a><ul>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.tests.html#submodules">Submodules</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.tests.html#module-evennia.server.tests.test_amp_connection">evennia.server.tests.test_amp_connection module</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.tests.html#module-evennia.server.tests.test_initial_setup">evennia.server.tests.test_initial_setup module</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.tests.html#module-evennia.server.tests.test_launcher">evennia.server.tests.test_launcher module</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.tests.html#module-evennia.server.tests.test_misc">evennia.server.tests.test_misc module</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.tests.html#module-evennia.server.tests.test_server">evennia.server.tests.test_server module</a></li>
|
||
<li class="toctree-l2"><a class="reference internal" href="evennia.server.tests.html#module-evennia.server.tests.testrunner">evennia.server.tests.testrunner module</a></li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
</div>
|
||
</div>
|
||
<div class="section" id="submodules">
|
||
<h2>Submodules<a class="headerlink" href="#submodules" title="Permalink to this headline">¶</a></h2>
|
||
</div>
|
||
<div class="section" id="module-evennia.server.admin">
|
||
<span id="evennia-server-admin-module"></span><h2>evennia.server.admin module<a class="headerlink" href="#module-evennia.server.admin" title="Permalink to this headline">¶</a></h2>
|
||
<dl class="class">
|
||
<dt id="evennia.server.admin.ServerConfigAdmin">
|
||
<em class="property">class </em><code class="sig-prename descclassname">evennia.server.admin.</code><code class="sig-name descname">ServerConfigAdmin</code><span class="sig-paren">(</span><em class="sig-param">model</em>, <em class="sig-param">admin_site</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/admin.html#ServerConfigAdmin"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.admin.ServerConfigAdmin" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">django.contrib.admin.options.ModelAdmin</span></code></p>
|
||
<p>Custom admin for server configs</p>
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.admin.ServerConfigAdmin.list_display">
|
||
<code class="sig-name descname">list_display</code><em class="property"> = ('db_key', 'db_value')</em><a class="headerlink" href="#evennia.server.admin.ServerConfigAdmin.list_display" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.admin.ServerConfigAdmin.list_display_links">
|
||
<code class="sig-name descname">list_display_links</code><em class="property"> = ('db_key',)</em><a class="headerlink" href="#evennia.server.admin.ServerConfigAdmin.list_display_links" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.admin.ServerConfigAdmin.list_select_related">
|
||
<code class="sig-name descname">list_select_related</code><em class="property"> = True</em><a class="headerlink" href="#evennia.server.admin.ServerConfigAdmin.list_select_related" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.admin.ServerConfigAdmin.media">
|
||
<em class="property">property </em><code class="sig-name descname">media</code><a class="headerlink" href="#evennia.server.admin.ServerConfigAdmin.media" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.admin.ServerConfigAdmin.ordering">
|
||
<code class="sig-name descname">ordering</code><em class="property"> = ['db_key', 'db_value']</em><a class="headerlink" href="#evennia.server.admin.ServerConfigAdmin.ordering" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.admin.ServerConfigAdmin.save_as">
|
||
<code class="sig-name descname">save_as</code><em class="property"> = True</em><a class="headerlink" href="#evennia.server.admin.ServerConfigAdmin.save_as" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.admin.ServerConfigAdmin.save_on_top">
|
||
<code class="sig-name descname">save_on_top</code><em class="property"> = True</em><a class="headerlink" href="#evennia.server.admin.ServerConfigAdmin.save_on_top" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.admin.ServerConfigAdmin.search_fields">
|
||
<code class="sig-name descname">search_fields</code><em class="property"> = ['db_key']</em><a class="headerlink" href="#evennia.server.admin.ServerConfigAdmin.search_fields" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
</div>
|
||
<div class="section" id="module-evennia.server.amp_client">
|
||
<span id="evennia-server-amp-client-module"></span><h2>evennia.server.amp_client module<a class="headerlink" href="#module-evennia.server.amp_client" title="Permalink to this headline">¶</a></h2>
|
||
<p>The Evennia Server service acts as an AMP-client when talking to the
|
||
Portal. This module sets up the Client-side communication.</p>
|
||
<dl class="class">
|
||
<dt id="evennia.server.amp_client.AMPClientFactory">
|
||
<em class="property">class </em><code class="sig-prename descclassname">evennia.server.amp_client.</code><code class="sig-name descname">AMPClientFactory</code><span class="sig-paren">(</span><em class="sig-param">server</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/amp_client.html#AMPClientFactory"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.amp_client.AMPClientFactory" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">twisted.internet.protocol.ReconnectingClientFactory</span></code></p>
|
||
<p>This factory creates an instance of an AMP client connection. This handles communication from
|
||
the be the Evennia ‘Server’ service to the ‘Portal’. The client will try to auto-reconnect on a
|
||
connection error.</p>
|
||
<dl class="method">
|
||
<dt id="evennia.server.amp_client.AMPClientFactory.__init__">
|
||
<code class="sig-name descname">__init__</code><span class="sig-paren">(</span><em class="sig-param">server</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/amp_client.html#AMPClientFactory.__init__"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.amp_client.AMPClientFactory.__init__" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Initializes the client factory.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>server</strong> (<em>server</em>) – server instance.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.amp_client.AMPClientFactory.buildProtocol">
|
||
<code class="sig-name descname">buildProtocol</code><span class="sig-paren">(</span><em class="sig-param">addr</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/amp_client.html#AMPClientFactory.buildProtocol"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.amp_client.AMPClientFactory.buildProtocol" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Creates an AMPProtocol instance when connecting to the AMP server.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>addr</strong> (<em>str</em>) – Connection address. Not used.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.amp_client.AMPClientFactory.clientConnectionFailed">
|
||
<code class="sig-name descname">clientConnectionFailed</code><span class="sig-paren">(</span><em class="sig-param">connector</em>, <em class="sig-param">reason</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/amp_client.html#AMPClientFactory.clientConnectionFailed"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.amp_client.AMPClientFactory.clientConnectionFailed" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called when an AMP connection attempt to the MUD server fails.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>connector</strong> (<em>Connector</em>) – Twisted Connector instance representing
|
||
this connection.</p></li>
|
||
<li><p><strong>reason</strong> (<em>str</em>) – Eventual text describing why connection failed.</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.amp_client.AMPClientFactory.clientConnectionLost">
|
||
<code class="sig-name descname">clientConnectionLost</code><span class="sig-paren">(</span><em class="sig-param">connector</em>, <em class="sig-param">reason</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/amp_client.html#AMPClientFactory.clientConnectionLost"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.amp_client.AMPClientFactory.clientConnectionLost" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called when the AMP connection to the MUD server is lost.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>connector</strong> (<em>Connector</em>) – Twisted Connector instance representing
|
||
this connection.</p></li>
|
||
<li><p><strong>reason</strong> (<em>str</em>) – Eventual text describing why connection was lost.</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.amp_client.AMPClientFactory.factor">
|
||
<code class="sig-name descname">factor</code><em class="property"> = 1.5</em><a class="headerlink" href="#evennia.server.amp_client.AMPClientFactory.factor" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.amp_client.AMPClientFactory.initialDelay">
|
||
<code class="sig-name descname">initialDelay</code><em class="property"> = 1</em><a class="headerlink" href="#evennia.server.amp_client.AMPClientFactory.initialDelay" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.amp_client.AMPClientFactory.maxDelay">
|
||
<code class="sig-name descname">maxDelay</code><em class="property"> = 1</em><a class="headerlink" href="#evennia.server.amp_client.AMPClientFactory.maxDelay" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.amp_client.AMPClientFactory.noisy">
|
||
<code class="sig-name descname">noisy</code><em class="property"> = False</em><a class="headerlink" href="#evennia.server.amp_client.AMPClientFactory.noisy" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.amp_client.AMPClientFactory.startedConnecting">
|
||
<code class="sig-name descname">startedConnecting</code><span class="sig-paren">(</span><em class="sig-param">connector</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/amp_client.html#AMPClientFactory.startedConnecting"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.amp_client.AMPClientFactory.startedConnecting" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called when starting to try to connect to the Portal AMP server.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>connector</strong> (<em>Connector</em>) – Twisted Connector instance representing
|
||
this connection.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
<dl class="class">
|
||
<dt id="evennia.server.amp_client.AMPServerClientProtocol">
|
||
<em class="property">class </em><code class="sig-prename descclassname">evennia.server.amp_client.</code><code class="sig-name descname">AMPServerClientProtocol</code><span class="sig-paren">(</span><em class="sig-param">*args</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/amp_client.html#AMPServerClientProtocol"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.amp_client.AMPServerClientProtocol" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="evennia.server.portal.html#evennia.server.portal.amp.AMPMultiConnectionProtocol" title="evennia.server.portal.amp.AMPMultiConnectionProtocol"><code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.server.portal.amp.AMPMultiConnectionProtocol</span></code></a></p>
|
||
<p>This protocol describes the Server service (acting as an AMP-client)’s communication with the
|
||
Portal (which acts as the AMP-server)</p>
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.amp_client.AMPServerClientProtocol._commandDispatch">
|
||
<code class="sig-name descname">_commandDispatch</code><em class="property"> = {b'AdminPortal2Server': (<class 'evennia.server.portal.amp.AdminPortal2Server'>, <function catch_traceback>), b'FunctionCall': (<class 'evennia.server.portal.amp.FunctionCall'>, <function catch_traceback>), b'MsgPortal2Server': (<class 'evennia.server.portal.amp.MsgPortal2Server'>, <function catch_traceback>), b'MsgStatus': (<class 'evennia.server.portal.amp.MsgStatus'>, <function AMPServerClientProtocol.server_receive_status>), b'StartTLS': (<class 'twisted.protocols.amp.StartTLS'>, <function BinaryBoxProtocol._defaultStartTLSResponder>)}</em><a class="headerlink" href="#evennia.server.amp_client.AMPServerClientProtocol._commandDispatch" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.amp_client.AMPServerClientProtocol.connectionMade">
|
||
<code class="sig-name descname">connectionMade</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/amp_client.html#AMPServerClientProtocol.connectionMade"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.amp_client.AMPServerClientProtocol.connectionMade" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called when a new connection is established.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.amp_client.AMPServerClientProtocol.data_to_portal">
|
||
<code class="sig-name descname">data_to_portal</code><span class="sig-paren">(</span><em class="sig-param">command</em>, <em class="sig-param">sessid</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/amp_client.html#AMPServerClientProtocol.data_to_portal"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.amp_client.AMPServerClientProtocol.data_to_portal" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Send data across the wire to the Portal</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>command</strong> (<em>AMP Command</em>) – A protocol send command.</p></li>
|
||
<li><p><strong>sessid</strong> (<em>int</em>) – A unique Session id.</p></li>
|
||
<li><p><strong>kwargs</strong> (<em>any</em>) – Any data to pickle into the command.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p>A deferred with an errback.</p>
|
||
</dd>
|
||
<dt class="field-odd">Return type</dt>
|
||
<dd class="field-odd"><p>deferred (deferred or None)</p>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>Data will be sent across the wire pickled as a tuple
|
||
(sessid, kwargs).</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.amp_client.AMPServerClientProtocol.send_AdminServer2Portal">
|
||
<code class="sig-name descname">send_AdminServer2Portal</code><span class="sig-paren">(</span><em class="sig-param">session</em>, <em class="sig-param">operation=''</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/amp_client.html#AMPServerClientProtocol.send_AdminServer2Portal"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.amp_client.AMPServerClientProtocol.send_AdminServer2Portal" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Administrative access method called by the Server to send an
|
||
instruction to the Portal.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>session</strong> (<a class="reference internal" href="#evennia.server.session.Session" title="evennia.server.session.Session"><em>Session</em></a>) – Session.</p></li>
|
||
<li><p><strong>operation</strong> (<em>char</em><em>, </em><em>optional</em>) – Identifier for the server
|
||
operation, as defined by the global variables in
|
||
<cite>evennia/server/amp.py</cite>.</p></li>
|
||
<li><p><strong>kwargs</strong> (<em>dict</em><em>, </em><em>optional</em>) – Data going into the adminstrative.</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.amp_client.AMPServerClientProtocol.send_MsgServer2Portal">
|
||
<code class="sig-name descname">send_MsgServer2Portal</code><span class="sig-paren">(</span><em class="sig-param">session</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/amp_client.html#AMPServerClientProtocol.send_MsgServer2Portal"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.amp_client.AMPServerClientProtocol.send_MsgServer2Portal" title="Permalink to this definition">¶</a></dt>
|
||
<dd><dl class="simple">
|
||
<dt>Access method - executed on the Server for sending data</dt><dd><p>to Portal.</p>
|
||
</dd>
|
||
</dl>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>session</strong> (<a class="reference internal" href="#evennia.server.session.Session" title="evennia.server.session.Session"><em>Session</em></a>) – Unique Session.</p></li>
|
||
<li><p><strong>kwargs</strong> (<em>any</em><em>, </em><em>optiona</em>) – Extra data.</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.amp_client.AMPServerClientProtocol.server_receive_adminportal2server">
|
||
<code class="sig-name descname">server_receive_adminportal2server</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#evennia.server.amp_client.AMPServerClientProtocol.server_receive_adminportal2server" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Helper decorator</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.amp_client.AMPServerClientProtocol.server_receive_msgportal2server">
|
||
<code class="sig-name descname">server_receive_msgportal2server</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#evennia.server.amp_client.AMPServerClientProtocol.server_receive_msgportal2server" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Helper decorator</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.amp_client.AMPServerClientProtocol.server_receive_status">
|
||
<code class="sig-name descname">server_receive_status</code><span class="sig-paren">(</span><em class="sig-param">question</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/amp_client.html#AMPServerClientProtocol.server_receive_status"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.amp_client.AMPServerClientProtocol.server_receive_status" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
</div>
|
||
<div class="section" id="module-evennia.server.connection_wizard">
|
||
<span id="evennia-server-connection-wizard-module"></span><h2>evennia.server.connection_wizard module<a class="headerlink" href="#module-evennia.server.connection_wizard" title="Permalink to this headline">¶</a></h2>
|
||
<p>Link Evennia to external resources (wizard plugin for evennia_launcher)</p>
|
||
<dl class="class">
|
||
<dt id="evennia.server.connection_wizard.ConnectionWizard">
|
||
<em class="property">class </em><code class="sig-prename descclassname">evennia.server.connection_wizard.</code><code class="sig-name descname">ConnectionWizard</code><a class="reference internal" href="../_modules/evennia/server/connection_wizard.html#ConnectionWizard"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.connection_wizard.ConnectionWizard" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
|
||
<dl class="method">
|
||
<dt id="evennia.server.connection_wizard.ConnectionWizard.__init__">
|
||
<code class="sig-name descname">__init__</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/connection_wizard.html#ConnectionWizard.__init__"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.connection_wizard.ConnectionWizard.__init__" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Initialize self. See help(type(self)) for accurate signature.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.connection_wizard.ConnectionWizard.ask_choice">
|
||
<code class="sig-name descname">ask_choice</code><span class="sig-paren">(</span><em class="sig-param">prompt=' > '</em>, <em class="sig-param">options=None</em>, <em class="sig-param">default=None</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/connection_wizard.html#ConnectionWizard.ask_choice"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.connection_wizard.ConnectionWizard.ask_choice" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Ask multiple-choice question, get response inline.</p>
|
||
<dl class="simple">
|
||
<dt>Kwargs:</dt><dd><p>prompt (str): Input prompt.
|
||
options (list): List of options. Will be indexable by sequence number 1…
|
||
default (int): The list index+1 of the default choice, if any</p>
|
||
</dd>
|
||
</dl>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Returns</dt>
|
||
<dd class="field-odd"><p>The answered reply.</p>
|
||
</dd>
|
||
<dt class="field-even">Return type</dt>
|
||
<dd class="field-even"><p>reply (str)</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.connection_wizard.ConnectionWizard.ask_continue">
|
||
<code class="sig-name descname">ask_continue</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/connection_wizard.html#ConnectionWizard.ask_continue"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.connection_wizard.ConnectionWizard.ask_continue" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>‘Press return to continue’-prompt</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.connection_wizard.ConnectionWizard.ask_input">
|
||
<code class="sig-name descname">ask_input</code><span class="sig-paren">(</span><em class="sig-param">prompt=' > '</em>, <em class="sig-param">default=None</em>, <em class="sig-param">validator=None</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/connection_wizard.html#ConnectionWizard.ask_input"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.connection_wizard.ConnectionWizard.ask_input" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Get arbitrary input inline.</p>
|
||
<dl>
|
||
<dt>Kwargs:</dt><dd><p>prompt (str): The display prompt.
|
||
default (str): If empty input, use this.
|
||
validator (callable): If given, the input will be passed</p>
|
||
<blockquote>
|
||
<div><p>into this callable. It should return True unless validation
|
||
fails (and is expected to echo why if so).</p>
|
||
</div></blockquote>
|
||
</dd>
|
||
</dl>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Returns</dt>
|
||
<dd class="field-odd"><p>The input given, or default.</p>
|
||
</dd>
|
||
<dt class="field-even">Return type</dt>
|
||
<dd class="field-even"><p>inp (str)</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.connection_wizard.ConnectionWizard.ask_node">
|
||
<code class="sig-name descname">ask_node</code><span class="sig-paren">(</span><em class="sig-param">options</em>, <em class="sig-param">prompt='Enter choice: '</em>, <em class="sig-param">default=None</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/connection_wizard.html#ConnectionWizard.ask_node"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.connection_wizard.ConnectionWizard.ask_node" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Retrieve options and jump to different menu nodes</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>options</strong> (<em>dict</em>) – Node options on the form {key: (desc, callback), }</p></li>
|
||
<li><p><strong>prompt</strong> (<em>str</em><em>, </em><em>optional</em>) – Question to ask</p></li>
|
||
<li><p><strong>default</strong> (<em>str</em><em>, </em><em>optional</em>) – Default value to use if user hits return.</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.connection_wizard.ConnectionWizard.ask_yesno">
|
||
<code class="sig-name descname">ask_yesno</code><span class="sig-paren">(</span><em class="sig-param">prompt</em>, <em class="sig-param">default='yes'</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/connection_wizard.html#ConnectionWizard.ask_yesno"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.connection_wizard.ConnectionWizard.ask_yesno" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Ask a yes/no question inline.</p>
|
||
<dl class="simple">
|
||
<dt>Kwargs:</dt><dd><p>prompt (str): The prompt to ask.
|
||
default (str): “yes” or “no”, used if pressing return.</p>
|
||
</dd>
|
||
</dl>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Returns</dt>
|
||
<dd class="field-odd"><p>Either ‘yes’ or ‘no’.</p>
|
||
</dd>
|
||
<dt class="field-even">Return type</dt>
|
||
<dd class="field-even"><p>reply (str)</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.connection_wizard.ConnectionWizard.display">
|
||
<code class="sig-name descname">display</code><span class="sig-paren">(</span><em class="sig-param">text</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/connection_wizard.html#ConnectionWizard.display"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.connection_wizard.ConnectionWizard.display" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Show text</p>
|
||
</dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.connection_wizard._save_changes">
|
||
<code class="sig-prename descclassname">evennia.server.connection_wizard.</code><code class="sig-name descname">_save_changes</code><span class="sig-paren">(</span><em class="sig-param">wizard</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/connection_wizard.html#_save_changes"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.connection_wizard._save_changes" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Perform the save</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.connection_wizard.node_game_index_fields">
|
||
<code class="sig-prename descclassname">evennia.server.connection_wizard.</code><code class="sig-name descname">node_game_index_fields</code><span class="sig-paren">(</span><em class="sig-param">wizard</em>, <em class="sig-param">status=None</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/connection_wizard.html#node_game_index_fields"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.connection_wizard.node_game_index_fields" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.connection_wizard.node_game_index_start">
|
||
<code class="sig-prename descclassname">evennia.server.connection_wizard.</code><code class="sig-name descname">node_game_index_start</code><span class="sig-paren">(</span><em class="sig-param">wizard</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/connection_wizard.html#node_game_index_start"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.connection_wizard.node_game_index_start" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.connection_wizard.node_mssp_start">
|
||
<code class="sig-prename descclassname">evennia.server.connection_wizard.</code><code class="sig-name descname">node_mssp_start</code><span class="sig-paren">(</span><em class="sig-param">wizard</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/connection_wizard.html#node_mssp_start"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.connection_wizard.node_mssp_start" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.connection_wizard.node_start">
|
||
<code class="sig-prename descclassname">evennia.server.connection_wizard.</code><code class="sig-name descname">node_start</code><span class="sig-paren">(</span><em class="sig-param">wizard</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/connection_wizard.html#node_start"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.connection_wizard.node_start" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.connection_wizard.node_view_and_apply_settings">
|
||
<code class="sig-prename descclassname">evennia.server.connection_wizard.</code><code class="sig-name descname">node_view_and_apply_settings</code><span class="sig-paren">(</span><em class="sig-param">wizard</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/connection_wizard.html#node_view_and_apply_settings"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.connection_wizard.node_view_and_apply_settings" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Inspect and save the data gathered in the other nodes</p>
|
||
</dd></dl>
|
||
|
||
</div>
|
||
<div class="section" id="module-evennia.server.deprecations">
|
||
<span id="evennia-server-deprecations-module"></span><h2>evennia.server.deprecations module<a class="headerlink" href="#module-evennia.server.deprecations" title="Permalink to this headline">¶</a></h2>
|
||
<p>This module contains historical deprecations that the Evennia launcher
|
||
checks for.</p>
|
||
<p>These all print to the terminal.</p>
|
||
<dl class="function">
|
||
<dt id="evennia.server.deprecations.check_errors">
|
||
<code class="sig-prename descclassname">evennia.server.deprecations.</code><code class="sig-name descname">check_errors</code><span class="sig-paren">(</span><em class="sig-param">settings</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/deprecations.html#check_errors"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.deprecations.check_errors" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Check for deprecations that are critical errors and should stop
|
||
the launcher.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>settings</strong> (<em>Settings</em>) – The Django settings file</p>
|
||
</dd>
|
||
<dt class="field-even">Raises</dt>
|
||
<dd class="field-even"><p><strong>DeprecationWarning if a critical deprecation is found.</strong> – </p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.deprecations.check_warnings">
|
||
<code class="sig-prename descclassname">evennia.server.deprecations.</code><code class="sig-name descname">check_warnings</code><span class="sig-paren">(</span><em class="sig-param">settings</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/deprecations.html#check_warnings"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.deprecations.check_warnings" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Check conditions and deprecations that should produce warnings but which
|
||
does not stop launch.</p>
|
||
</dd></dl>
|
||
|
||
</div>
|
||
<div class="section" id="module-evennia.server.evennia_launcher">
|
||
<span id="evennia-server-evennia-launcher-module"></span><h2>evennia.server.evennia_launcher module<a class="headerlink" href="#module-evennia.server.evennia_launcher" title="Permalink to this headline">¶</a></h2>
|
||
<p>Evennia launcher program</p>
|
||
<p>This is the start point for running Evennia.</p>
|
||
<p>Sets the appropriate environmental variables for managing an Evennia game. It will start and connect
|
||
to the Portal, through which the Server is also controlled. This pprogram</p>
|
||
<p>Run the script with the -h flag to see usage information.</p>
|
||
<dl class="class">
|
||
<dt id="evennia.server.evennia_launcher.AMPLauncherProtocol">
|
||
<em class="property">class </em><code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">AMPLauncherProtocol</code><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#AMPLauncherProtocol"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.AMPLauncherProtocol" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">twisted.protocols.amp.AMP</span></code></p>
|
||
<p>Defines callbacks to the launcher</p>
|
||
<dl class="method">
|
||
<dt id="evennia.server.evennia_launcher.AMPLauncherProtocol.__init__">
|
||
<code class="sig-name descname">__init__</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#AMPLauncherProtocol.__init__"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.AMPLauncherProtocol.__init__" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Initialize self. See help(type(self)) for accurate signature.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.evennia_launcher.AMPLauncherProtocol._commandDispatch">
|
||
<code class="sig-name descname">_commandDispatch</code><em class="property"> = {b'MsgStatus': (<class 'evennia.server.evennia_launcher.MsgStatus'>, <function AMPLauncherProtocol.receive_status_from_portal>), b'StartTLS': (<class 'twisted.protocols.amp.StartTLS'>, <function BinaryBoxProtocol._defaultStartTLSResponder>)}</em><a class="headerlink" href="#evennia.server.evennia_launcher.AMPLauncherProtocol._commandDispatch" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.evennia_launcher.AMPLauncherProtocol.receive_status_from_portal">
|
||
<code class="sig-name descname">receive_status_from_portal</code><span class="sig-paren">(</span><em class="sig-param">status</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#AMPLauncherProtocol.receive_status_from_portal"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.AMPLauncherProtocol.receive_status_from_portal" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Get a status signal from portal - fire next queued
|
||
callback</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.evennia_launcher.AMPLauncherProtocol.wait_for_status">
|
||
<code class="sig-name descname">wait_for_status</code><span class="sig-paren">(</span><em class="sig-param">callback</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#AMPLauncherProtocol.wait_for_status"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.AMPLauncherProtocol.wait_for_status" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Register a waiter for a status return.</p>
|
||
</dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
<dl class="class">
|
||
<dt id="evennia.server.evennia_launcher.MsgLauncher2Portal">
|
||
<em class="property">class </em><code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">MsgLauncher2Portal</code><span class="sig-paren">(</span><em class="sig-param">**kw</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#MsgLauncher2Portal"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.MsgLauncher2Portal" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">twisted.protocols.amp.Command</span></code></p>
|
||
<p>Message Launcher -> Portal</p>
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.evennia_launcher.MsgLauncher2Portal.allErrors">
|
||
<code class="sig-name descname">allErrors</code><em class="property"> = {<class 'Exception'>: b'EXCEPTION'}</em><a class="headerlink" href="#evennia.server.evennia_launcher.MsgLauncher2Portal.allErrors" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.evennia_launcher.MsgLauncher2Portal.arguments">
|
||
<code class="sig-name descname">arguments</code><em class="property"> = [(b'operation', <twisted.protocols.amp.String object>), (b'arguments', <twisted.protocols.amp.String object>)]</em><a class="headerlink" href="#evennia.server.evennia_launcher.MsgLauncher2Portal.arguments" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.evennia_launcher.MsgLauncher2Portal.commandName">
|
||
<code class="sig-name descname">commandName</code><em class="property"> = b'MsgLauncher2Portal'</em><a class="headerlink" href="#evennia.server.evennia_launcher.MsgLauncher2Portal.commandName" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.evennia_launcher.MsgLauncher2Portal.errors">
|
||
<code class="sig-name descname">errors</code><em class="property"> = {<class 'Exception'>: b'EXCEPTION'}</em><a class="headerlink" href="#evennia.server.evennia_launcher.MsgLauncher2Portal.errors" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.evennia_launcher.MsgLauncher2Portal.key">
|
||
<code class="sig-name descname">key</code><em class="property"> = 'MsgLauncher2Portal'</em><a class="headerlink" href="#evennia.server.evennia_launcher.MsgLauncher2Portal.key" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.evennia_launcher.MsgLauncher2Portal.response">
|
||
<code class="sig-name descname">response</code><em class="property"> = []</em><a class="headerlink" href="#evennia.server.evennia_launcher.MsgLauncher2Portal.response" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.evennia_launcher.MsgLauncher2Portal.reverseErrors">
|
||
<code class="sig-name descname">reverseErrors</code><em class="property"> = {b'EXCEPTION': <class 'Exception'>}</em><a class="headerlink" href="#evennia.server.evennia_launcher.MsgLauncher2Portal.reverseErrors" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
<dl class="class">
|
||
<dt id="evennia.server.evennia_launcher.MsgStatus">
|
||
<em class="property">class </em><code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">MsgStatus</code><span class="sig-paren">(</span><em class="sig-param">**kw</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#MsgStatus"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.MsgStatus" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">twisted.protocols.amp.Command</span></code></p>
|
||
<p>Ping between AMP services</p>
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.evennia_launcher.MsgStatus.allErrors">
|
||
<code class="sig-name descname">allErrors</code><em class="property"> = {<class 'Exception'>: b'EXCEPTION'}</em><a class="headerlink" href="#evennia.server.evennia_launcher.MsgStatus.allErrors" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.evennia_launcher.MsgStatus.arguments">
|
||
<code class="sig-name descname">arguments</code><em class="property"> = [(b'status', <twisted.protocols.amp.String object>)]</em><a class="headerlink" href="#evennia.server.evennia_launcher.MsgStatus.arguments" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.evennia_launcher.MsgStatus.commandName">
|
||
<code class="sig-name descname">commandName</code><em class="property"> = b'MsgStatus'</em><a class="headerlink" href="#evennia.server.evennia_launcher.MsgStatus.commandName" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.evennia_launcher.MsgStatus.errors">
|
||
<code class="sig-name descname">errors</code><em class="property"> = {<class 'Exception'>: b'EXCEPTION'}</em><a class="headerlink" href="#evennia.server.evennia_launcher.MsgStatus.errors" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.evennia_launcher.MsgStatus.key">
|
||
<code class="sig-name descname">key</code><em class="property"> = 'MsgStatus'</em><a class="headerlink" href="#evennia.server.evennia_launcher.MsgStatus.key" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.evennia_launcher.MsgStatus.response">
|
||
<code class="sig-name descname">response</code><em class="property"> = [(b'status', <twisted.protocols.amp.String object>)]</em><a class="headerlink" href="#evennia.server.evennia_launcher.MsgStatus.response" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.evennia_launcher.MsgStatus.reverseErrors">
|
||
<code class="sig-name descname">reverseErrors</code><em class="property"> = {b'EXCEPTION': <class 'Exception'>}</em><a class="headerlink" href="#evennia.server.evennia_launcher.MsgStatus.reverseErrors" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher._file_names_compact">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">_file_names_compact</code><span class="sig-paren">(</span><em class="sig-param">filepath1</em>, <em class="sig-param">filepath2</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#_file_names_compact"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher._file_names_compact" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Compact the output of filenames with same base dir</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher._get_twistd_cmdline">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">_get_twistd_cmdline</code><span class="sig-paren">(</span><em class="sig-param">pprofiler</em>, <em class="sig-param">sprofiler</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#_get_twistd_cmdline"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher._get_twistd_cmdline" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Compile the command line for starting a Twisted application using the ‘twistd’ executable.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher._is_windows">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">_is_windows</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#_is_windows"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher._is_windows" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher._parse_status">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">_parse_status</code><span class="sig-paren">(</span><em class="sig-param">response</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#_parse_status"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher._parse_status" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Unpack the status information</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher._print_info">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">_print_info</code><span class="sig-paren">(</span><em class="sig-param">portal_info_dict</em>, <em class="sig-param">server_info_dict</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#_print_info"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher._print_info" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Format info dicts from the Portal/Server for display</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher._reactor_stop">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">_reactor_stop</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#_reactor_stop"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher._reactor_stop" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher.check_database">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">check_database</code><span class="sig-paren">(</span><em class="sig-param">always_return=False</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#check_database"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.check_database" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Check so the database exists.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>always_return</strong> (<em>bool</em><em>, </em><em>optional</em>) – If set, will always return True/False
|
||
also on critical errors. No output will be printed.</p>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><cite>True</cite> if the database exists, otherwise <cite>False</cite>.</p>
|
||
</dd>
|
||
<dt class="field-odd">Return type</dt>
|
||
<dd class="field-odd"><p>exists (bool)</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher.check_main_evennia_dependencies">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">check_main_evennia_dependencies</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#check_main_evennia_dependencies"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.check_main_evennia_dependencies" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Checks and imports the Evennia dependencies. This must be done
|
||
already before the paths are set up.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Returns</dt>
|
||
<dd class="field-odd"><p>True if no dependency error was found.</p>
|
||
</dd>
|
||
<dt class="field-even">Return type</dt>
|
||
<dd class="field-even"><p>not_error (bool)</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher.collectstatic">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">collectstatic</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#collectstatic"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.collectstatic" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Run the collectstatic django command</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher.create_game_directory">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">create_game_directory</code><span class="sig-paren">(</span><em class="sig-param">dirname</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#create_game_directory"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.create_game_directory" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Initialize a new game directory named dirname
|
||
at the current path. This means copying the
|
||
template directory from evennia’s root.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>dirname</strong> (<em>str</em>) – The directory name to create.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher.create_secret_key">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">create_secret_key</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#create_secret_key"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.create_secret_key" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Randomly create the secret key for the settings file</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher.create_settings_file">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">create_settings_file</code><span class="sig-paren">(</span><em class="sig-param">init=True</em>, <em class="sig-param">secret_settings=False</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#create_settings_file"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.create_settings_file" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Uses the template settings file to build a working settings file.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>init</strong> (<em>bool</em>) – This is part of the normal evennia –init
|
||
operation. If false, this function will copy a fresh
|
||
template file in (asking if it already exists).</p></li>
|
||
<li><p><strong>secret_settings</strong> (<em>bool</em><em>, </em><em>optional</em>) – If False, create settings.py, otherwise
|
||
create the secret_settings.py file.</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher.create_superuser">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">create_superuser</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#create_superuser"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.create_superuser" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Create the superuser account</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher.del_pid">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">del_pid</code><span class="sig-paren">(</span><em class="sig-param">pidfile</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#del_pid"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.del_pid" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>The pidfile should normally be removed after a process has
|
||
finished, but when sending certain signals they remain, so we need
|
||
to clean them manually.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>pidfile</strong> (<em>str</em>) – The path of the pid file.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher.error_check_python_modules">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">error_check_python_modules</code><span class="sig-paren">(</span><em class="sig-param">show_warnings=False</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#error_check_python_modules"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.error_check_python_modules" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Import settings modules in settings. This will raise exceptions on
|
||
pure python-syntax issues which are hard to catch gracefully with
|
||
exceptions in the engine (since they are formatting errors in the
|
||
python source files themselves). Best they fail already here
|
||
before we get any further.</p>
|
||
<dl class="simple">
|
||
<dt>Kwargs:</dt><dd><p>show_warnings (bool): If non-fatal warning messages should be shown.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher.evennia_version">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">evennia_version</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#evennia_version"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.evennia_version" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Get the Evennia version info from the main package.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher.get_pid">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">get_pid</code><span class="sig-paren">(</span><em class="sig-param">pidfile</em>, <em class="sig-param">default=None</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#get_pid"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.get_pid" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Get the PID (Process ID) by trying to access an PID file.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>pidfile</strong> (<em>str</em>) – The path of the pid file.</p></li>
|
||
<li><p><strong>default</strong> (<em>int</em><em>, </em><em>optional</em>) – What to return if file does not exist.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p>The process id or <cite>default</cite>.</p>
|
||
</dd>
|
||
<dt class="field-odd">Return type</dt>
|
||
<dd class="field-odd"><p>pid (str)</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher.getenv">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">getenv</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#getenv"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.getenv" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Get current environment and add PYTHONPATH.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Returns</dt>
|
||
<dd class="field-odd"><p>Environment global dict.</p>
|
||
</dd>
|
||
<dt class="field-even">Return type</dt>
|
||
<dd class="field-even"><p>env (dict)</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher.init_game_directory">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">init_game_directory</code><span class="sig-paren">(</span><em class="sig-param">path</em>, <em class="sig-param">check_db=True</em>, <em class="sig-param">need_gamedir=True</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#init_game_directory"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.init_game_directory" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Try to analyze the given path to find settings.py - this defines
|
||
the game directory and also sets PYTHONPATH as well as the django
|
||
path.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>path</strong> (<em>str</em>) – Path to new game directory, including its name.</p></li>
|
||
<li><p><strong>check_db</strong> (<em>bool</em><em>, </em><em>optional</em>) – Check if the databae exists.</p></li>
|
||
<li><p><strong>need_gamedir</strong> (<em>bool</em><em>, </em><em>optional</em>) – set to False if Evennia doesn’t require to
|
||
be run in a valid game directory.</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher.kill">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">kill</code><span class="sig-paren">(</span><em class="sig-param">pidfile</em>, <em class="sig-param">component='Server'</em>, <em class="sig-param">callback=None</em>, <em class="sig-param">errback=None</em>, <em class="sig-param">killsignal=<Signals.SIGINT: 2></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#kill"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.kill" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Send a kill signal to a process based on PID. A customized
|
||
success/error message will be returned. If clean=True, the system
|
||
will attempt to manually remove the pid file. On Windows, no arguments
|
||
are useful since Windows has no ability to direct signals except to all
|
||
children of a console.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>pidfile</strong> (<em>str</em>) – The path of the pidfile to get the PID from. This is ignored
|
||
on Windows.</p></li>
|
||
<li><p><strong>component</strong> (<em>str</em><em>, </em><em>optional</em>) – Usually one of ‘Server’ or ‘Portal’. This is
|
||
ignored on Windows.</p></li>
|
||
<li><p><strong>errback</strong> (<em>callable</em><em>, </em><em>optional</em>) – Called if signal failed to send. This
|
||
is ignored on Windows.</p></li>
|
||
<li><p><strong>callback</strong> (<em>callable</em><em>, </em><em>optional</em>) – Called if kill signal was sent successfully.
|
||
This is ignored on Windows.</p></li>
|
||
<li><p><strong>killsignal</strong> (<em>int</em><em>, </em><em>optional</em>) – Signal identifier for signal to send. This is
|
||
ignored on Windows.</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher.list_settings">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">list_settings</code><span class="sig-paren">(</span><em class="sig-param">keys</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#list_settings"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.list_settings" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Display the server settings. We only display the Evennia specific
|
||
settings here. The result will be printed to the terminal.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>keys</strong> (<em>str</em><em> or </em><em>list</em>) – Setting key or keys to inspect.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher.main">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">main</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#main"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.main" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Run the evennia launcher main program.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher.query_info">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">query_info</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#query_info"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.query_info" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Display the info strings from the running Evennia</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher.query_status">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">query_status</code><span class="sig-paren">(</span><em class="sig-param">callback=None</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#query_status"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.query_status" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Send status ping to portal</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher.reboot_evennia">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">reboot_evennia</code><span class="sig-paren">(</span><em class="sig-param">pprofiler=False</em>, <em class="sig-param">sprofiler=False</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#reboot_evennia"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.reboot_evennia" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This is essentially an evennia stop && evennia start except we make sure
|
||
the system has successfully shut down before starting it again.</p>
|
||
<p>If evennia was not running, start it.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher.reload_evennia">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">reload_evennia</code><span class="sig-paren">(</span><em class="sig-param">sprofiler=False</em>, <em class="sig-param">reset=False</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#reload_evennia"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.reload_evennia" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This will instruct the Portal to reboot the Server component. We
|
||
do this manually by telling the server to shutdown (in reload mode)
|
||
and wait for the portal to report back, at which point we start the
|
||
server again. This way we control the process exactly.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher.run_connect_wizard">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">run_connect_wizard</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#run_connect_wizard"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.run_connect_wizard" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Run the linking wizard, for adding new external connections.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher.run_dummyrunner">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">run_dummyrunner</code><span class="sig-paren">(</span><em class="sig-param">number_of_dummies</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#run_dummyrunner"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.run_dummyrunner" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Start an instance of the dummyrunner</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>number_of_dummies</strong> (<em>int</em>) – The number of dummy accounts to start.</p>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>The dummy accounts’ behavior can be customized by adding a
|
||
<cite>dummyrunner_settings.py</cite> config file in the game’s conf/
|
||
directory.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher.run_menu">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">run_menu</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#run_menu"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.run_menu" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This launches an interactive menu.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher.send_instruction">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">send_instruction</code><span class="sig-paren">(</span><em class="sig-param">operation</em>, <em class="sig-param">arguments</em>, <em class="sig-param">callback=None</em>, <em class="sig-param">errback=None</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#send_instruction"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.send_instruction" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Send instruction and handle the response.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher.set_gamedir">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">set_gamedir</code><span class="sig-paren">(</span><em class="sig-param">path</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#set_gamedir"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.set_gamedir" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Set GAMEDIR based on path, by figuring out where the setting file
|
||
is inside the directory tree. This allows for running the launcher
|
||
from elsewhere than the top of the gamedir folder.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher.show_version_info">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">show_version_info</code><span class="sig-paren">(</span><em class="sig-param">about=False</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#show_version_info"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.show_version_info" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Display version info.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>about</strong> (<em>bool</em>) – Include ABOUT info as well as version numbers.</p>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p>A complete version info string.</p>
|
||
</dd>
|
||
<dt class="field-odd">Return type</dt>
|
||
<dd class="field-odd"><p>version_info (str)</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher.start_evennia">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">start_evennia</code><span class="sig-paren">(</span><em class="sig-param">pprofiler=False</em>, <em class="sig-param">sprofiler=False</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#start_evennia"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.start_evennia" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This will start Evennia anew by launching the Evennia Portal (which in turn
|
||
will start the Server)</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher.start_only_server">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">start_only_server</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#start_only_server"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.start_only_server" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Tell portal to start server (debug)</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher.start_portal_interactive">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">start_portal_interactive</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#start_portal_interactive"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.start_portal_interactive" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Start the Portal under control of the launcher process (foreground)</p>
|
||
<p class="rubric">Notes</p>
|
||
<p>In a normal start, the launcher waits for the Portal to start, then
|
||
tells it to start the Server. Since we can’t do this here, we instead
|
||
start the Server first and then starts the Portal - the Server will
|
||
auto-reconnect to the Portal. To allow the Server to be reloaded, this
|
||
relies on a fixed server server-cmdline stored as a fallback on the
|
||
portal application in evennia/server/portal/portal.py.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher.start_server_interactive">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">start_server_interactive</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#start_server_interactive"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.start_server_interactive" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Start the Server under control of the launcher process (foreground)</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher.stop_evennia">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">stop_evennia</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#stop_evennia"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.stop_evennia" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This instructs the Portal to stop the Server and then itself.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher.stop_server_only">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">stop_server_only</code><span class="sig-paren">(</span><em class="sig-param">when_stopped=None</em>, <em class="sig-param">interactive=False</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#stop_server_only"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.stop_server_only" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Only stop the Server-component of Evennia (this is not useful except for debug)</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>when_stopped</strong> (<em>callable</em>) – This will be called with no arguments when Server has stopped (or
|
||
if it had already stopped when this is called).</p></li>
|
||
<li><p><strong>interactive</strong> (<em>bool</em><em>, </em><em>optional</em>) – Set if this is called as part of the interactive reload
|
||
mechanism.</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher.tail_log_files">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">tail_log_files</code><span class="sig-paren">(</span><em class="sig-param">filename1</em>, <em class="sig-param">filename2</em>, <em class="sig-param">start_lines1=20</em>, <em class="sig-param">start_lines2=20</em>, <em class="sig-param">rate=1</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#tail_log_files"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.tail_log_files" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Tail two logfiles interactively, combining their output to stdout</p>
|
||
<p>When first starting, this will display the tail of the log files. After
|
||
that it will poll the log files repeatedly and display changes.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>filename1</strong> (<em>str</em>) – Path to first log file.</p></li>
|
||
<li><p><strong>filename2</strong> (<em>str</em>) – Path to second log file.</p></li>
|
||
<li><p><strong>start_lines1</strong> (<em>int</em>) – How many lines to show from existing first log.</p></li>
|
||
<li><p><strong>start_lines2</strong> (<em>int</em>) – How many lines to show from existing second log.</p></li>
|
||
<li><p><strong>rate</strong> (<em>int</em><em>, </em><em>optional</em>) – How often to poll the log file.</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher.wait_for_status">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">wait_for_status</code><span class="sig-paren">(</span><em class="sig-param">portal_running=True</em>, <em class="sig-param">server_running=True</em>, <em class="sig-param">callback=None</em>, <em class="sig-param">errback=None</em>, <em class="sig-param">rate=0.5</em>, <em class="sig-param">retries=20</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#wait_for_status"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.wait_for_status" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Repeat the status ping until the desired state combination is achieved.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>portal_running</strong> (<em>bool</em><em> or </em><em>None</em>) – Desired portal run-state. If None, any state
|
||
is accepted.</p></li>
|
||
<li><p><strong>server_running</strong> (<em>bool</em><em> or </em><em>None</em>) – Desired server run-state. If None, any state
|
||
is accepted. The portal must be running.</p></li>
|
||
<li><p><strong>callback</strong> (<em>callable</em>) – Will be called with portal_state, server_state when
|
||
condition is fulfilled.</p></li>
|
||
<li><p><strong>errback</strong> (<em>callable</em>) – Will be called with portal_state, server_state if the
|
||
request is timed out.</p></li>
|
||
<li><p><strong>rate</strong> (<em>float</em>) – How often to retry.</p></li>
|
||
<li><p><strong>retries</strong> (<em>int</em>) – How many times to retry before timing out and calling <cite>errback</cite>.</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.evennia_launcher.wait_for_status_reply">
|
||
<code class="sig-prename descclassname">evennia.server.evennia_launcher.</code><code class="sig-name descname">wait_for_status_reply</code><span class="sig-paren">(</span><em class="sig-param">callback</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/evennia_launcher.html#wait_for_status_reply"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.evennia_launcher.wait_for_status_reply" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Wait for an explicit STATUS signal to be sent back from Evennia.</p>
|
||
</dd></dl>
|
||
|
||
</div>
|
||
<div class="section" id="module-evennia.server.initial_setup">
|
||
<span id="evennia-server-initial-setup-module"></span><h2>evennia.server.initial_setup module<a class="headerlink" href="#module-evennia.server.initial_setup" title="Permalink to this headline">¶</a></h2>
|
||
<p>This module handles initial database propagation, which is only run the first
|
||
time the game starts. It will create some default channels, objects, and
|
||
other things.</p>
|
||
<p>Everything starts at handle_setup()</p>
|
||
<dl class="function">
|
||
<dt id="evennia.server.initial_setup.at_initial_setup">
|
||
<code class="sig-prename descclassname">evennia.server.initial_setup.</code><code class="sig-name descname">at_initial_setup</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/initial_setup.html#at_initial_setup"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.initial_setup.at_initial_setup" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Custom hook for users to overload some or all parts of the initial
|
||
setup. Called very last in the sequence. It tries to import and
|
||
srun a module settings.AT_INITIAL_SETUP_HOOK_MODULE and will fail
|
||
silently if this does not exist or fails to load.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.initial_setup.collectstatic">
|
||
<code class="sig-prename descclassname">evennia.server.initial_setup.</code><code class="sig-name descname">collectstatic</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/initial_setup.html#collectstatic"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.initial_setup.collectstatic" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Run collectstatic to make sure all web assets are loaded.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.initial_setup.create_channels">
|
||
<code class="sig-prename descclassname">evennia.server.initial_setup.</code><code class="sig-name descname">create_channels</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/initial_setup.html#create_channels"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.initial_setup.create_channels" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Creates some sensible default channels.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.initial_setup.create_objects">
|
||
<code class="sig-prename descclassname">evennia.server.initial_setup.</code><code class="sig-name descname">create_objects</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/initial_setup.html#create_objects"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.initial_setup.create_objects" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Creates the #1 account and Limbo room.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.initial_setup.get_god_account">
|
||
<code class="sig-prename descclassname">evennia.server.initial_setup.</code><code class="sig-name descname">get_god_account</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/initial_setup.html#get_god_account"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.initial_setup.get_god_account" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Creates the god user and don’t take no for an answer.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.initial_setup.handle_setup">
|
||
<code class="sig-prename descclassname">evennia.server.initial_setup.</code><code class="sig-name descname">handle_setup</code><span class="sig-paren">(</span><em class="sig-param">last_step</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/initial_setup.html#handle_setup"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.initial_setup.handle_setup" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Main logic for the module. It allows for restarting the
|
||
initialization at any point if one of the modules should crash.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>last_step</strong> (<em>int</em>) – The last stored successful step, for starting
|
||
over on errors. If <cite>< 0</cite>, initialization has finished and no
|
||
steps need to be redone.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.initial_setup.reset_server">
|
||
<code class="sig-prename descclassname">evennia.server.initial_setup.</code><code class="sig-name descname">reset_server</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/initial_setup.html#reset_server"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.initial_setup.reset_server" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>We end the initialization by resetting the server. This makes sure
|
||
the first login is the same as all the following ones,
|
||
particularly it cleans all caches for the special objects. It
|
||
also checks so the warm-reset mechanism works as it should.</p>
|
||
</dd></dl>
|
||
|
||
</div>
|
||
<div class="section" id="module-evennia.server.inputfuncs">
|
||
<span id="evennia-server-inputfuncs-module"></span><h2>evennia.server.inputfuncs module<a class="headerlink" href="#module-evennia.server.inputfuncs" title="Permalink to this headline">¶</a></h2>
|
||
<p>Functions for processing input commands.</p>
|
||
<p>All global functions in this module whose name does not start with “_”
|
||
is considered an inputfunc. Each function must have the following
|
||
callsign (where inputfunc name is always lower-case, no matter what the
|
||
OOB input name looked like):</p>
|
||
<blockquote>
|
||
<div><p>inputfunc(session, <a href="#id1"><span class="problematic" id="id2">*</span></a>args, <a href="#id3"><span class="problematic" id="id4">**</span></a>kwargs)</p>
|
||
</div></blockquote>
|
||
<p>Where “options” is always one of the kwargs, containing eventual
|
||
protocol-options.
|
||
There is one special function, the “default” function, which is called
|
||
on a no-match. It has this callsign:</p>
|
||
<blockquote>
|
||
<div><p>default(session, cmdname, <a href="#id5"><span class="problematic" id="id6">*</span></a>args, <a href="#id7"><span class="problematic" id="id8">**</span></a>kwargs)</p>
|
||
</div></blockquote>
|
||
<p>Evennia knows which modules to use for inputfuncs by
|
||
settings.INPUT_FUNC_MODULES.</p>
|
||
<dl class="function">
|
||
<dt id="evennia.server.inputfuncs._GA">
|
||
<code class="sig-prename descclassname">evennia.server.inputfuncs.</code><code class="sig-name descname">_GA</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#evennia.server.inputfuncs._GA" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Return getattr(self, name).</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.inputfuncs._NA">
|
||
<code class="sig-prename descclassname">evennia.server.inputfuncs.</code><code class="sig-name descname">_NA</code><span class="sig-paren">(</span><em class="sig-param">o</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/inputfuncs.html#_NA"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.inputfuncs._NA" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.inputfuncs._SA">
|
||
<code class="sig-prename descclassname">evennia.server.inputfuncs.</code><code class="sig-name descname">_SA</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#evennia.server.inputfuncs._SA" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Implement setattr(self, name, value).</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.inputfuncs._on_monitor_change">
|
||
<code class="sig-prename descclassname">evennia.server.inputfuncs.</code><code class="sig-name descname">_on_monitor_change</code><span class="sig-paren">(</span><em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/inputfuncs.html#_on_monitor_change"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.inputfuncs._on_monitor_change" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.inputfuncs._on_webclient_options_change">
|
||
<code class="sig-prename descclassname">evennia.server.inputfuncs.</code><code class="sig-name descname">_on_webclient_options_change</code><span class="sig-paren">(</span><em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/inputfuncs.html#_on_webclient_options_change"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.inputfuncs._on_webclient_options_change" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called when the webclient options stored on the account changes.
|
||
Inform the interested clients of this change.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.inputfuncs._testrepeat">
|
||
<code class="sig-prename descclassname">evennia.server.inputfuncs.</code><code class="sig-name descname">_testrepeat</code><span class="sig-paren">(</span><em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/inputfuncs.html#_testrepeat"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.inputfuncs._testrepeat" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This is a test function for using with the repeat
|
||
inputfunc.</p>
|
||
<dl class="simple">
|
||
<dt>Kwargs:</dt><dd><p>session (Session): Session to return to.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.inputfuncs.bot_data_in">
|
||
<code class="sig-prename descclassname">evennia.server.inputfuncs.</code><code class="sig-name descname">bot_data_in</code><span class="sig-paren">(</span><em class="sig-param">session</em>, <em class="sig-param">*args</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/inputfuncs.html#bot_data_in"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.inputfuncs.bot_data_in" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Text input from the IRC and RSS bots.
|
||
This will trigger the execute_cmd method on the bots in-game counterpart.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>session</strong> (<a class="reference internal" href="#evennia.server.session.Session" title="evennia.server.session.Session"><em>Session</em></a>) – The active Session to receive the input.</p></li>
|
||
<li><p><strong>text</strong> (<em>str</em>) – First arg is text input. Other arguments are ignored.</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.inputfuncs.client_options">
|
||
<code class="sig-prename descclassname">evennia.server.inputfuncs.</code><code class="sig-name descname">client_options</code><span class="sig-paren">(</span><em class="sig-param">session</em>, <em class="sig-param">*args</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/inputfuncs.html#client_options"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.inputfuncs.client_options" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This allows the client an OOB way to inform us about its name and capabilities.
|
||
This will be integrated into the session settings</p>
|
||
<dl>
|
||
<dt>Kwargs:</dt><dd><dl class="simple">
|
||
<dt>get (bool): If this is true, return the settings as a dict</dt><dd><p>(ignore all other kwargs).</p>
|
||
</dd>
|
||
</dl>
|
||
<p>client (str): A client identifier, like “mushclient”.
|
||
version (str): A client version
|
||
ansi (bool): Supports ansi colors
|
||
xterm256 (bool): Supports xterm256 colors or not
|
||
mxp (bool): Supports MXP or not
|
||
utf-8 (bool): Supports UTF-8 or not
|
||
screenreader (bool): Screen-reader mode on/off
|
||
mccp (bool): MCCP compression on/off
|
||
screenheight (int): Screen height in lines
|
||
screenwidth (int): Screen width in characters
|
||
inputdebug (bool): Debug input functions
|
||
nocolor (bool): Strip color
|
||
raw (bool): Turn off parsing</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.inputfuncs.default">
|
||
<code class="sig-prename descclassname">evennia.server.inputfuncs.</code><code class="sig-name descname">default</code><span class="sig-paren">(</span><em class="sig-param">session</em>, <em class="sig-param">cmdname</em>, <em class="sig-param">*args</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/inputfuncs.html#default"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.inputfuncs.default" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Default catch-function. This is like all other input functions except
|
||
it will get <cite>cmdname</cite> as the first argument.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.inputfuncs.echo">
|
||
<code class="sig-prename descclassname">evennia.server.inputfuncs.</code><code class="sig-name descname">echo</code><span class="sig-paren">(</span><em class="sig-param">session</em>, <em class="sig-param">*args</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/inputfuncs.html#echo"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.inputfuncs.echo" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Echo test function</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.inputfuncs.external_discord_hello">
|
||
<code class="sig-prename descclassname">evennia.server.inputfuncs.</code><code class="sig-name descname">external_discord_hello</code><span class="sig-paren">(</span><em class="sig-param">session</em>, <em class="sig-param">*args</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/inputfuncs.html#external_discord_hello"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.inputfuncs.external_discord_hello" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Sent by Mudlet as a greeting; added here to avoid
|
||
logging a missing inputfunc for it.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.inputfuncs.get_client_options">
|
||
<code class="sig-prename descclassname">evennia.server.inputfuncs.</code><code class="sig-name descname">get_client_options</code><span class="sig-paren">(</span><em class="sig-param">session</em>, <em class="sig-param">*args</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/inputfuncs.html#get_client_options"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.inputfuncs.get_client_options" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Alias wrapper for getting options.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.inputfuncs.get_inputfuncs">
|
||
<code class="sig-prename descclassname">evennia.server.inputfuncs.</code><code class="sig-name descname">get_inputfuncs</code><span class="sig-paren">(</span><em class="sig-param">session</em>, <em class="sig-param">*args</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/inputfuncs.html#get_inputfuncs"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.inputfuncs.get_inputfuncs" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Get the keys of all available inputfuncs. Note that we don’t get
|
||
it from this module alone since multiple modules could be added.
|
||
So we get it from the sessionhandler.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.inputfuncs.get_value">
|
||
<code class="sig-prename descclassname">evennia.server.inputfuncs.</code><code class="sig-name descname">get_value</code><span class="sig-paren">(</span><em class="sig-param">session</em>, <em class="sig-param">*args</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/inputfuncs.html#get_value"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.inputfuncs.get_value" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Return the value of a given attribute or db_property on the
|
||
session’s current account or character.</p>
|
||
<dl class="simple">
|
||
<dt>Kwargs:</dt><dd><dl class="simple">
|
||
<dt>name (str): Name of info value to return. Only names</dt><dd><p>in the _gettable dictionary earlier in this module
|
||
are accepted.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.inputfuncs.hello">
|
||
<code class="sig-prename descclassname">evennia.server.inputfuncs.</code><code class="sig-name descname">hello</code><span class="sig-paren">(</span><em class="sig-param">session</em>, <em class="sig-param">*args</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#evennia.server.inputfuncs.hello" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This allows the client an OOB way to inform us about its name and capabilities.
|
||
This will be integrated into the session settings</p>
|
||
<dl>
|
||
<dt>Kwargs:</dt><dd><dl class="simple">
|
||
<dt>get (bool): If this is true, return the settings as a dict</dt><dd><p>(ignore all other kwargs).</p>
|
||
</dd>
|
||
</dl>
|
||
<p>client (str): A client identifier, like “mushclient”.
|
||
version (str): A client version
|
||
ansi (bool): Supports ansi colors
|
||
xterm256 (bool): Supports xterm256 colors or not
|
||
mxp (bool): Supports MXP or not
|
||
utf-8 (bool): Supports UTF-8 or not
|
||
screenreader (bool): Screen-reader mode on/off
|
||
mccp (bool): MCCP compression on/off
|
||
screenheight (int): Screen height in lines
|
||
screenwidth (int): Screen width in characters
|
||
inputdebug (bool): Debug input functions
|
||
nocolor (bool): Strip color
|
||
raw (bool): Turn off parsing</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.inputfuncs.login">
|
||
<code class="sig-prename descclassname">evennia.server.inputfuncs.</code><code class="sig-name descname">login</code><span class="sig-paren">(</span><em class="sig-param">session</em>, <em class="sig-param">*args</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/inputfuncs.html#login"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.inputfuncs.login" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Peform a login. This only works if session is currently not logged
|
||
in. This will also automatically throttle too quick attempts.</p>
|
||
<dl class="simple">
|
||
<dt>Kwargs:</dt><dd><p>name (str): Account name
|
||
password (str): Plain-text password</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.inputfuncs.monitor">
|
||
<code class="sig-prename descclassname">evennia.server.inputfuncs.</code><code class="sig-name descname">monitor</code><span class="sig-paren">(</span><em class="sig-param">session</em>, <em class="sig-param">*args</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/inputfuncs.html#monitor"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.inputfuncs.monitor" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Adds monitoring to a given property or Attribute.</p>
|
||
<dl>
|
||
<dt>Kwargs:</dt><dd><dl class="simple">
|
||
<dt>name (str): The name of the property or Attribute</dt><dd><p>to report. No db_* prefix is needed. Only names
|
||
in the _monitorable dict earlier in this module
|
||
are accepted.</p>
|
||
</dd>
|
||
</dl>
|
||
<p>stop (bool): Stop monitoring the above name.
|
||
outputfunc_name (str, optional): Change the name of</p>
|
||
<blockquote>
|
||
<div><p>the outputfunc name. This is used e.g. by MSDP which
|
||
has its own specific output format.</p>
|
||
</div></blockquote>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.inputfuncs.monitored">
|
||
<code class="sig-prename descclassname">evennia.server.inputfuncs.</code><code class="sig-name descname">monitored</code><span class="sig-paren">(</span><em class="sig-param">session</em>, <em class="sig-param">*args</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/inputfuncs.html#monitored"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.inputfuncs.monitored" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Report on what is being monitored</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.inputfuncs.msdp_list">
|
||
<code class="sig-prename descclassname">evennia.server.inputfuncs.</code><code class="sig-name descname">msdp_list</code><span class="sig-paren">(</span><em class="sig-param">session</em>, <em class="sig-param">*args</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/inputfuncs.html#msdp_list"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.inputfuncs.msdp_list" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>MSDP LIST command</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.inputfuncs.msdp_report">
|
||
<code class="sig-prename descclassname">evennia.server.inputfuncs.</code><code class="sig-name descname">msdp_report</code><span class="sig-paren">(</span><em class="sig-param">session</em>, <em class="sig-param">*args</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/inputfuncs.html#msdp_report"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.inputfuncs.msdp_report" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>MSDP REPORT command</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.inputfuncs.msdp_send">
|
||
<code class="sig-prename descclassname">evennia.server.inputfuncs.</code><code class="sig-name descname">msdp_send</code><span class="sig-paren">(</span><em class="sig-param">session</em>, <em class="sig-param">*args</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/inputfuncs.html#msdp_send"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.inputfuncs.msdp_send" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>MSDP SEND command</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.inputfuncs.msdp_unreport">
|
||
<code class="sig-prename descclassname">evennia.server.inputfuncs.</code><code class="sig-name descname">msdp_unreport</code><span class="sig-paren">(</span><em class="sig-param">session</em>, <em class="sig-param">*args</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/inputfuncs.html#msdp_unreport"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.inputfuncs.msdp_unreport" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>MSDP UNREPORT command</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.inputfuncs.repeat">
|
||
<code class="sig-prename descclassname">evennia.server.inputfuncs.</code><code class="sig-name descname">repeat</code><span class="sig-paren">(</span><em class="sig-param">session</em>, <em class="sig-param">*args</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/inputfuncs.html#repeat"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.inputfuncs.repeat" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Call a named function repeatedly. Note that
|
||
this is meant as an example of limiting the number of
|
||
possible call functions.</p>
|
||
<dl class="simple">
|
||
<dt>Kwargs:</dt><dd><dl class="simple">
|
||
<dt>callback (str): The function to call. Only functions</dt><dd><p>from the _repeatable dictionary earlier in this
|
||
module are available.</p>
|
||
</dd>
|
||
<dt>interval (int): How often to call function (s).</dt><dd><dl class="simple">
|
||
<dt>Defaults to once every 60 seconds with a minimum</dt><dd><p>of 5 seconds.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd>
|
||
<dt>stop (bool): Stop a previously assigned ticker with</dt><dd><p>the above settings.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.inputfuncs.supports_set">
|
||
<code class="sig-prename descclassname">evennia.server.inputfuncs.</code><code class="sig-name descname">supports_set</code><span class="sig-paren">(</span><em class="sig-param">session</em>, <em class="sig-param">*args</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="headerlink" href="#evennia.server.inputfuncs.supports_set" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This allows the client an OOB way to inform us about its name and capabilities.
|
||
This will be integrated into the session settings</p>
|
||
<dl>
|
||
<dt>Kwargs:</dt><dd><dl class="simple">
|
||
<dt>get (bool): If this is true, return the settings as a dict</dt><dd><p>(ignore all other kwargs).</p>
|
||
</dd>
|
||
</dl>
|
||
<p>client (str): A client identifier, like “mushclient”.
|
||
version (str): A client version
|
||
ansi (bool): Supports ansi colors
|
||
xterm256 (bool): Supports xterm256 colors or not
|
||
mxp (bool): Supports MXP or not
|
||
utf-8 (bool): Supports UTF-8 or not
|
||
screenreader (bool): Screen-reader mode on/off
|
||
mccp (bool): MCCP compression on/off
|
||
screenheight (int): Screen height in lines
|
||
screenwidth (int): Screen width in characters
|
||
inputdebug (bool): Debug input functions
|
||
nocolor (bool): Strip color
|
||
raw (bool): Turn off parsing</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.inputfuncs.text">
|
||
<code class="sig-prename descclassname">evennia.server.inputfuncs.</code><code class="sig-name descname">text</code><span class="sig-paren">(</span><em class="sig-param">session</em>, <em class="sig-param">*args</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/inputfuncs.html#text"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.inputfuncs.text" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Main text input from the client. This will execute a command
|
||
string on the server.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>session</strong> (<a class="reference internal" href="#evennia.server.session.Session" title="evennia.server.session.Session"><em>Session</em></a>) – The active Session to receive the input.</p></li>
|
||
<li><p><strong>text</strong> (<em>str</em>) – First arg is used as text-command input. Other
|
||
arguments are ignored.</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.inputfuncs.unmonitor">
|
||
<code class="sig-prename descclassname">evennia.server.inputfuncs.</code><code class="sig-name descname">unmonitor</code><span class="sig-paren">(</span><em class="sig-param">session</em>, <em class="sig-param">*args</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/inputfuncs.html#unmonitor"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.inputfuncs.unmonitor" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Wrapper for turning off monitoring</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.inputfuncs.unrepeat">
|
||
<code class="sig-prename descclassname">evennia.server.inputfuncs.</code><code class="sig-name descname">unrepeat</code><span class="sig-paren">(</span><em class="sig-param">session</em>, <em class="sig-param">*args</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/inputfuncs.html#unrepeat"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.inputfuncs.unrepeat" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Wrapper for OOB use</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.inputfuncs.webclient_options">
|
||
<code class="sig-prename descclassname">evennia.server.inputfuncs.</code><code class="sig-name descname">webclient_options</code><span class="sig-paren">(</span><em class="sig-param">session</em>, <em class="sig-param">*args</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/inputfuncs.html#webclient_options"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.inputfuncs.webclient_options" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Handles retrieving and changing of options related to the webclient.</p>
|
||
<p>If kwargs is empty (or contains just a “cmdid”), the saved options will be
|
||
sent back to the session.
|
||
A monitor handler will be created to inform the client of any future options
|
||
that changes.</p>
|
||
<p>If kwargs is not empty, the key/values stored in there will be persisted
|
||
to the account object.</p>
|
||
<dl class="simple">
|
||
<dt>Kwargs:</dt><dd><p><option name>: an option to save</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
</div>
|
||
<div class="section" id="module-evennia.server.manager">
|
||
<span id="evennia-server-manager-module"></span><h2>evennia.server.manager module<a class="headerlink" href="#module-evennia.server.manager" title="Permalink to this headline">¶</a></h2>
|
||
<p>Custom manager for ServerConfig objects.</p>
|
||
<dl class="class">
|
||
<dt id="evennia.server.manager.ServerConfigManager">
|
||
<em class="property">class </em><code class="sig-prename descclassname">evennia.server.manager.</code><code class="sig-name descname">ServerConfigManager</code><a class="reference internal" href="../_modules/evennia/server/manager.html#ServerConfigManager"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.manager.ServerConfigManager" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">django.db.models.manager.Manager</span></code></p>
|
||
<p>This ServerConfigManager implements methods for searching and
|
||
manipulating ServerConfigs directly from the database.</p>
|
||
<p>These methods will all return database objects (or QuerySets)
|
||
directly.</p>
|
||
<p>ServerConfigs are used to store certain persistent settings for
|
||
the server at run-time.</p>
|
||
<dl class="method">
|
||
<dt id="evennia.server.manager.ServerConfigManager.conf">
|
||
<code class="sig-name descname">conf</code><span class="sig-paren">(</span><em class="sig-param">key=None</em>, <em class="sig-param">value=None</em>, <em class="sig-param">delete=False</em>, <em class="sig-param">default=None</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/manager.html#ServerConfigManager.conf"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.manager.ServerConfigManager.conf" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Add, retrieve and manipulate config values.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>key</strong> (<em>str</em><em>, </em><em>optional</em>) – Name of config.</p></li>
|
||
<li><p><strong>value</strong> (<em>str</em><em>, </em><em>optional</em>) – Data to store in this config value.</p></li>
|
||
<li><p><strong>delete</strong> (<em>bool</em><em>, </em><em>optional</em>) – If <cite>True</cite>, delete config with <cite>key</cite>.</p></li>
|
||
<li><p><strong>default</strong> (<em>str</em><em>, </em><em>optional</em>) – Use when retrieving a config value
|
||
by a key that does not exist.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><p>If <cite>key</cite> was not given - all stored config values.
|
||
value (str): If <cite>key</cite> was given, this is the stored value, or</p>
|
||
<blockquote>
|
||
<div><p><cite>default</cite> if no matching <cite>key</cite> was found.</p>
|
||
</div></blockquote>
|
||
</p>
|
||
</dd>
|
||
<dt class="field-odd">Return type</dt>
|
||
<dd class="field-odd"><p>all (list)</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
</div>
|
||
<div class="section" id="module-evennia.server.models">
|
||
<span id="evennia-server-models-module"></span><h2>evennia.server.models module<a class="headerlink" href="#module-evennia.server.models" title="Permalink to this headline">¶</a></h2>
|
||
<p>Server Configuration flags</p>
|
||
<p>This holds persistent server configuration flags.</p>
|
||
<p>Config values should usually be set through the
|
||
manager’s conf() method.</p>
|
||
<dl class="class">
|
||
<dt id="evennia.server.models.ServerConfig">
|
||
<em class="property">class </em><code class="sig-prename descclassname">evennia.server.models.</code><code class="sig-name descname">ServerConfig</code><span class="sig-paren">(</span><em class="sig-param">*args</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/models.html#ServerConfig"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.models.ServerConfig" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="evennia.utils.idmapper.html#evennia.utils.idmapper.models.WeakSharedMemoryModel" title="evennia.utils.idmapper.models.WeakSharedMemoryModel"><code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.utils.idmapper.models.WeakSharedMemoryModel</span></code></a></p>
|
||
<p>On-the fly storage of global settings.</p>
|
||
<p>Properties defined on ServerConfig:</p>
|
||
<blockquote>
|
||
<div><ul class="simple">
|
||
<li><p>key: Main identifier</p></li>
|
||
<li><p>value: Value stored in key. This is a pickled storage.</p></li>
|
||
</ul>
|
||
</div></blockquote>
|
||
<dl class="exception">
|
||
<dt id="evennia.server.models.ServerConfig.DoesNotExist">
|
||
<em class="property">exception </em><code class="sig-name descname">DoesNotExist</code><a class="headerlink" href="#evennia.server.models.ServerConfig.DoesNotExist" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">django.core.exceptions.ObjectDoesNotExist</span></code></p>
|
||
</dd></dl>
|
||
|
||
<dl class="exception">
|
||
<dt id="evennia.server.models.ServerConfig.MultipleObjectsReturned">
|
||
<em class="property">exception </em><code class="sig-name descname">MultipleObjectsReturned</code><a class="headerlink" href="#evennia.server.models.ServerConfig.MultipleObjectsReturned" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">django.core.exceptions.MultipleObjectsReturned</span></code></p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.models.ServerConfig._ServerConfig__key_del">
|
||
<code class="sig-name descname">_ServerConfig__key_del</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#evennia.server.models.ServerConfig._ServerConfig__key_del" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Deleter. Allows for del self.key. Deletes entry.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.models.ServerConfig._ServerConfig__key_get">
|
||
<code class="sig-name descname">_ServerConfig__key_get</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#evennia.server.models.ServerConfig._ServerConfig__key_get" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Getter. Allows for value = self.key</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.models.ServerConfig._ServerConfig__key_set">
|
||
<code class="sig-name descname">_ServerConfig__key_set</code><span class="sig-paren">(</span><em class="sig-param">value</em><span class="sig-paren">)</span><a class="headerlink" href="#evennia.server.models.ServerConfig._ServerConfig__key_set" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Setter. Allows for self.key = value</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.models.ServerConfig._ServerConfig__value_del">
|
||
<code class="sig-name descname">_ServerConfig__value_del</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#evennia.server.models.ServerConfig._ServerConfig__value_del" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Deleter. Allows for del self.value. Deletes entry.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.models.ServerConfig._ServerConfig__value_get">
|
||
<code class="sig-name descname">_ServerConfig__value_get</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#evennia.server.models.ServerConfig._ServerConfig__value_get" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Getter. Allows for value = self.value</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.models.ServerConfig._ServerConfig__value_set">
|
||
<code class="sig-name descname">_ServerConfig__value_set</code><span class="sig-paren">(</span><em class="sig-param">value</em><span class="sig-paren">)</span><a class="headerlink" href="#evennia.server.models.ServerConfig._ServerConfig__value_set" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Setter. Allows for self.value = value</p>
|
||
</dd></dl>
|
||
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.models.ServerConfig._is_deleted">
|
||
<code class="sig-name descname">_is_deleted</code><em class="property"> = False</em><a class="headerlink" href="#evennia.server.models.ServerConfig._is_deleted" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.models.ServerConfig._meta">
|
||
<code class="sig-name descname">_meta</code><em class="property"> = <Options for ServerConfig></em><a class="headerlink" href="#evennia.server.models.ServerConfig._meta" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.models.ServerConfig.db_key">
|
||
<code class="sig-name descname">db_key</code><a class="headerlink" href="#evennia.server.models.ServerConfig.db_key" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>A wrapper for a deferred-loading field. When the value is read from this
|
||
object the first time, the query is executed.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.models.ServerConfig.db_value">
|
||
<code class="sig-name descname">db_value</code><a class="headerlink" href="#evennia.server.models.ServerConfig.db_value" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>A wrapper for a deferred-loading field. When the value is read from this
|
||
object the first time, the query is executed.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.models.ServerConfig.id">
|
||
<code class="sig-name descname">id</code><a class="headerlink" href="#evennia.server.models.ServerConfig.id" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>A wrapper for a deferred-loading field. When the value is read from this
|
||
object the first time, the query is executed.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.models.ServerConfig.key">
|
||
<em class="property">property </em><code class="sig-name descname">key</code><a class="headerlink" href="#evennia.server.models.ServerConfig.key" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Getter. Allows for value = self.key</p>
|
||
</dd></dl>
|
||
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.models.ServerConfig.objects">
|
||
<code class="sig-name descname">objects</code><em class="property"> = <evennia.server.manager.ServerConfigManager object></em><a class="headerlink" href="#evennia.server.models.ServerConfig.objects" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.models.ServerConfig.path">
|
||
<code class="sig-name descname">path</code><em class="property"> = 'evennia.server.models.ServerConfig'</em><a class="headerlink" href="#evennia.server.models.ServerConfig.path" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.models.ServerConfig.store">
|
||
<code class="sig-name descname">store</code><span class="sig-paren">(</span><em class="sig-param">key</em>, <em class="sig-param">value</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/models.html#ServerConfig.store"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.models.ServerConfig.store" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Wrap the storage.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>key</strong> (<em>str</em>) – The name of this store.</p></li>
|
||
<li><p><strong>value</strong> (<em>str</em>) – The data to store with this <cite>key</cite>.</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.models.ServerConfig.typename">
|
||
<code class="sig-name descname">typename</code><em class="property"> = 'WeakSharedMemoryModelBase'</em><a class="headerlink" href="#evennia.server.models.ServerConfig.typename" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.models.ServerConfig.value">
|
||
<em class="property">property </em><code class="sig-name descname">value</code><a class="headerlink" href="#evennia.server.models.ServerConfig.value" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Getter. Allows for value = self.value</p>
|
||
</dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
</div>
|
||
<div class="section" id="module-evennia.server.server">
|
||
<span id="evennia-server-server-module"></span><h2>evennia.server.server module<a class="headerlink" href="#module-evennia.server.server" title="Permalink to this headline">¶</a></h2>
|
||
<p>This module implements the main Evennia server process, the core of
|
||
the game engine.</p>
|
||
<p>This module should be started with the ‘twistd’ executable since it
|
||
sets up all the networking features. (this is done automatically
|
||
by evennia/server/server_runner.py).</p>
|
||
<dl class="class">
|
||
<dt id="evennia.server.server.Evennia">
|
||
<em class="property">class </em><code class="sig-prename descclassname">evennia.server.server.</code><code class="sig-name descname">Evennia</code><span class="sig-paren">(</span><em class="sig-param">application</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/server.html#Evennia"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.server.Evennia" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
|
||
<p>The main Evennia server handler. This object sets up the database and
|
||
tracks and interlinks all the twisted network services that make up
|
||
evennia.</p>
|
||
<dl class="method">
|
||
<dt id="evennia.server.server.Evennia.__init__">
|
||
<code class="sig-name descname">__init__</code><span class="sig-paren">(</span><em class="sig-param">application</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/server.html#Evennia.__init__"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.server.Evennia.__init__" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Setup the server.</p>
|
||
<p>application - an instantiated Twisted application</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.server.Evennia.at_post_portal_sync">
|
||
<code class="sig-name descname">at_post_portal_sync</code><span class="sig-paren">(</span><em class="sig-param">mode</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/server.html#Evennia.at_post_portal_sync"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.server.Evennia.at_post_portal_sync" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This is called just after the portal has finished syncing back data to the server
|
||
after reconnecting.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>mode</strong> (<em>str</em>) – One of reload, reset or shutdown.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.server.Evennia.at_server_cold_start">
|
||
<code class="sig-name descname">at_server_cold_start</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/server.html#Evennia.at_server_cold_start"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.server.Evennia.at_server_cold_start" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This is called only when the server starts “cold”, i.e. after a
|
||
shutdown or a reset.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.server.Evennia.at_server_cold_stop">
|
||
<code class="sig-name descname">at_server_cold_stop</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/server.html#Evennia.at_server_cold_stop"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.server.Evennia.at_server_cold_stop" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This is called only when the server goes down due to a shutdown or reset.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.server.Evennia.at_server_reload_start">
|
||
<code class="sig-name descname">at_server_reload_start</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/server.html#Evennia.at_server_reload_start"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.server.Evennia.at_server_reload_start" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This is called only when server starts back up after a reload.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.server.Evennia.at_server_reload_stop">
|
||
<code class="sig-name descname">at_server_reload_stop</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/server.html#Evennia.at_server_reload_stop"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.server.Evennia.at_server_reload_stop" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This is called only time the server stops before a reload.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.server.Evennia.at_server_start">
|
||
<code class="sig-name descname">at_server_start</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/server.html#Evennia.at_server_start"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.server.Evennia.at_server_start" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This is called every time the server starts up, regardless of
|
||
how it was shut down.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.server.Evennia.at_server_stop">
|
||
<code class="sig-name descname">at_server_stop</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/server.html#Evennia.at_server_stop"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.server.Evennia.at_server_stop" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This is called just before a server is shut down, regardless
|
||
of it is fore a reload, reset or shutdown.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.server.Evennia.get_info_dict">
|
||
<code class="sig-name descname">get_info_dict</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/server.html#Evennia.get_info_dict"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.server.Evennia.get_info_dict" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Return the server info, for display.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.server.Evennia.run_init_hooks">
|
||
<code class="sig-name descname">run_init_hooks</code><span class="sig-paren">(</span><em class="sig-param">mode</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/server.html#Evennia.run_init_hooks"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.server.Evennia.run_init_hooks" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called by the amp client once receiving sync back from Portal</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>mode</strong> (<em>str</em>) – One of shutdown, reload or reset</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.server.Evennia.run_initial_setup">
|
||
<code class="sig-name descname">run_initial_setup</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/server.html#Evennia.run_initial_setup"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.server.Evennia.run_initial_setup" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This is triggered by the amp protocol when the connection
|
||
to the portal has been established.
|
||
This attempts to run the initial_setup script of the server.
|
||
It returns if this is not the first time the server starts.
|
||
Once finished the last_initial_setup_step is set to -1.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.server.Evennia.shutdown">
|
||
<code class="sig-name descname">shutdown</code><span class="sig-paren">(</span><em class="sig-param">mode='reload'</em>, <em class="sig-param">_reactor_stopping=False</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/server.html#Evennia.shutdown"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.server.Evennia.shutdown" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Shuts down the server from inside it.</p>
|
||
<dl>
|
||
<dt>mode - sets the server restart mode.</dt><dd><dl class="simple">
|
||
<dt>‘reload’ - server restarts, no “persistent” scripts</dt><dd><p>are stopped, at_reload hooks called.</p>
|
||
</dd>
|
||
<dt>‘reset’ - server restarts, non-persistent scripts stopped,</dt><dd><p>at_shutdown hooks called but sessions will not
|
||
be disconnected.</p>
|
||
</dd>
|
||
</dl>
|
||
<p>‘shutdown’ - like reset, but server will not auto-restart.</p>
|
||
</dd>
|
||
<dt>_reactor_stopping - this is set if server is stopped by a kill</dt><dd><dl class="simple">
|
||
<dt>command OR this method was already called</dt><dd><p>once - in both cases the reactor is
|
||
dead/stopping already.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.server.Evennia.sqlite3_prep">
|
||
<code class="sig-name descname">sqlite3_prep</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/server.html#Evennia.sqlite3_prep"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.server.Evennia.sqlite3_prep" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Optimize some SQLite stuff at startup since we
|
||
can’t save it to the database.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.server.Evennia.update_defaults">
|
||
<code class="sig-name descname">update_defaults</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/server.html#Evennia.update_defaults"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.server.Evennia.update_defaults" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>We make sure to store the most important object defaults here, so
|
||
we can catch if they change and update them on-objects automatically.
|
||
This allows for changing default cmdset locations and default
|
||
typeclasses in the settings file and have them auto-update all
|
||
already existing objects.</p>
|
||
</dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.server._SA">
|
||
<code class="sig-prename descclassname">evennia.server.server.</code><code class="sig-name descname">_SA</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#evennia.server.server._SA" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Implement setattr(self, name, value).</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.server._server_maintenance">
|
||
<code class="sig-prename descclassname">evennia.server.server.</code><code class="sig-name descname">_server_maintenance</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/server.html#_server_maintenance"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.server._server_maintenance" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This maintenance function handles repeated checks and updates that
|
||
the server needs to do. It is called every minute.</p>
|
||
</dd></dl>
|
||
|
||
</div>
|
||
<div class="section" id="module-evennia.server.serversession">
|
||
<span id="evennia-server-serversession-module"></span><h2>evennia.server.serversession module<a class="headerlink" href="#module-evennia.server.serversession" title="Permalink to this headline">¶</a></h2>
|
||
<p>This defines a the Server’s generic session object. This object represents
|
||
a connection to the outside world but don’t know any details about how the
|
||
connection actually happens (so it’s the same for telnet, web, ssh etc).</p>
|
||
<p>It is stored on the Server side (as opposed to protocol-specific sessions which
|
||
are stored on the Portal side)</p>
|
||
<dl class="class">
|
||
<dt id="evennia.server.serversession.ServerSession">
|
||
<em class="property">class </em><code class="sig-prename descclassname">evennia.server.serversession.</code><code class="sig-name descname">ServerSession</code><a class="reference internal" href="../_modules/evennia/server/serversession.html#ServerSession"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.serversession.ServerSession" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="#evennia.server.session.Session" title="evennia.server.session.Session"><code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.server.session.Session</span></code></a></p>
|
||
<p>This class represents an account’s session and is a template for
|
||
individual protocols to communicate with Evennia.</p>
|
||
<p>Each account gets a session assigned to them whenever they connect
|
||
to the game server. All communication between game and account goes
|
||
through their session.</p>
|
||
<dl class="method">
|
||
<dt id="evennia.server.serversession.ServerSession._ServerSession__cmdset_storage_get">
|
||
<code class="sig-name descname">_ServerSession__cmdset_storage_get</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#evennia.server.serversession.ServerSession._ServerSession__cmdset_storage_get" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.serversession.ServerSession._ServerSession__cmdset_storage_set">
|
||
<code class="sig-name descname">_ServerSession__cmdset_storage_set</code><span class="sig-paren">(</span><em class="sig-param">value</em><span class="sig-paren">)</span><a class="headerlink" href="#evennia.server.serversession.ServerSession._ServerSession__cmdset_storage_set" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.serversession.ServerSession.__init__">
|
||
<code class="sig-name descname">__init__</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/serversession.html#ServerSession.__init__"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.serversession.ServerSession.__init__" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Initiate to avoid AttributeErrors down the line</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.serversession.ServerSession.access">
|
||
<code class="sig-name descname">access</code><span class="sig-paren">(</span><em class="sig-param">*args</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/serversession.html#ServerSession.access"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.serversession.ServerSession.access" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Dummy method to mimic the logged-in API.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.serversession.ServerSession.at_cmdset_get">
|
||
<code class="sig-name descname">at_cmdset_get</code><span class="sig-paren">(</span><em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/serversession.html#ServerSession.at_cmdset_get"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.serversession.ServerSession.at_cmdset_get" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>A dummy hook all objects with cmdsets need to have</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.serversession.ServerSession.at_disconnect">
|
||
<code class="sig-name descname">at_disconnect</code><span class="sig-paren">(</span><em class="sig-param">reason=None</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/serversession.html#ServerSession.at_disconnect"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.serversession.ServerSession.at_disconnect" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Hook called by sessionhandler when disconnecting this session.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.serversession.ServerSession.at_login">
|
||
<code class="sig-name descname">at_login</code><span class="sig-paren">(</span><em class="sig-param">account</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/serversession.html#ServerSession.at_login"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.serversession.ServerSession.at_login" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Hook called by sessionhandler when the session becomes authenticated.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>account</strong> (<em>Account</em>) – The account associated with the session.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.serversession.ServerSession.at_sync">
|
||
<code class="sig-name descname">at_sync</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/serversession.html#ServerSession.at_sync"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.serversession.ServerSession.at_sync" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This is called whenever a session has been resynced with the
|
||
portal. At this point all relevant attributes have already
|
||
been set and self.account been assigned (if applicable).</p>
|
||
<p>Since this is often called after a server restart we need to
|
||
set up the session as it was.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.serversession.ServerSession.attributes">
|
||
<code class="sig-name descname">attributes</code><a class="reference internal" href="../_modules/evennia/server/serversession.html#ServerSession.attributes"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.serversession.ServerSession.attributes" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.serversession.ServerSession.cmdset_storage">
|
||
<em class="property">property </em><code class="sig-name descname">cmdset_storage</code><a class="headerlink" href="#evennia.server.serversession.ServerSession.cmdset_storage" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.serversession.ServerSession.data_in">
|
||
<code class="sig-name descname">data_in</code><span class="sig-paren">(</span><em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/serversession.html#ServerSession.data_in"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.serversession.ServerSession.data_in" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Receiving data from the client, sending it off to
|
||
the respective inputfuncs.</p>
|
||
<dl class="simple">
|
||
<dt>Kwargs:</dt><dd><dl class="simple">
|
||
<dt>kwargs (any): Incoming data from protocol on</dt><dd><p>the form <cite>{“commandname”: ((args), {kwargs}),…}</cite></p>
|
||
</dd>
|
||
</dl>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>This method is here in order to give the user
|
||
a single place to catch and possibly process all incoming data from
|
||
the client. It should usually always end by sending
|
||
this data off to <cite>self.sessionhandler.call_inputfuncs(self, **kwargs)</cite>.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.serversession.ServerSession.data_out">
|
||
<code class="sig-name descname">data_out</code><span class="sig-paren">(</span><em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/serversession.html#ServerSession.data_out"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.serversession.ServerSession.data_out" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Sending data from Evennia->Client</p>
|
||
<dl>
|
||
<dt>Kwargs:</dt><dd><p>text (str or tuple)
|
||
any (str or tuple): Send-commands identified</p>
|
||
<blockquote>
|
||
<div><p>by their keys. Or “options”, carrying options
|
||
for the protocol(s).</p>
|
||
</div></blockquote>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.serversession.ServerSession.db">
|
||
<em class="property">property </em><code class="sig-name descname">db</code><a class="headerlink" href="#evennia.server.serversession.ServerSession.db" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>NonDataBase). Everything stored
|
||
to this is guaranteed to be cleared when a server is shutdown.
|
||
Syntax is same as for the _get_db_holder() method and
|
||
property, e.g. obj.ndb.attr = value etc.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Type</dt>
|
||
<dd class="field-odd"><p>A non-persistent store (ndb</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.serversession.ServerSession.execute_cmd">
|
||
<code class="sig-name descname">execute_cmd</code><span class="sig-paren">(</span><em class="sig-param">raw_string</em>, <em class="sig-param">session=None</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/serversession.html#ServerSession.execute_cmd"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.serversession.ServerSession.execute_cmd" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Do something as this object. This method is normally never
|
||
called directly, instead incoming command instructions are
|
||
sent to the appropriate inputfunc already at the sessionhandler
|
||
level. This method allows Python code to inject commands into
|
||
this stream, and will lead to the text inputfunc be called.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>raw_string</strong> (<em>string</em>) – Raw command input</p></li>
|
||
<li><p><strong>session</strong> (<a class="reference internal" href="#evennia.server.session.Session" title="evennia.server.session.Session"><em>Session</em></a>) – This is here to make API consistent with
|
||
Account/Object.execute_cmd. If given, data is passed to
|
||
that Session, otherwise use self.</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
<dl class="simple">
|
||
<dt>Kwargs:</dt><dd><p>Other keyword arguments will be added to the found command
|
||
object instace as variables before it executes. This is
|
||
unused by default Evennia but may be used to set flags and
|
||
change operating paramaters for commands at run-time.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.serversession.ServerSession.get_account">
|
||
<code class="sig-name descname">get_account</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/serversession.html#ServerSession.get_account"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.serversession.ServerSession.get_account" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Get the account associated with this session</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Returns</dt>
|
||
<dd class="field-odd"><p>The associated Account.</p>
|
||
</dd>
|
||
<dt class="field-even">Return type</dt>
|
||
<dd class="field-even"><p>account (Account)</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.serversession.ServerSession.get_character">
|
||
<code class="sig-name descname">get_character</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#evennia.server.serversession.ServerSession.get_character" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Get the in-game character associated with this session.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Returns</dt>
|
||
<dd class="field-odd"><p>The puppeted object, if any.</p>
|
||
</dd>
|
||
<dt class="field-even">Return type</dt>
|
||
<dd class="field-even"><p>puppet (Object)</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.serversession.ServerSession.get_client_size">
|
||
<code class="sig-name descname">get_client_size</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/serversession.html#ServerSession.get_client_size"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.serversession.ServerSession.get_client_size" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Return eventual eventual width and height reported by the
|
||
client. Note that this currently only deals with a single
|
||
client window (windowID==0) as in a traditional telnet session.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.serversession.ServerSession.get_puppet">
|
||
<code class="sig-name descname">get_puppet</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/serversession.html#ServerSession.get_puppet"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.serversession.ServerSession.get_puppet" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Get the in-game character associated with this session.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Returns</dt>
|
||
<dd class="field-odd"><p>The puppeted object, if any.</p>
|
||
</dd>
|
||
<dt class="field-even">Return type</dt>
|
||
<dd class="field-even"><p>puppet (Object)</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.serversession.ServerSession.get_puppet_or_account">
|
||
<code class="sig-name descname">get_puppet_or_account</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/serversession.html#ServerSession.get_puppet_or_account"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.serversession.ServerSession.get_puppet_or_account" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Get puppet or account.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Returns</dt>
|
||
<dd class="field-odd"><p><dl class="simple">
|
||
<dt>The puppet if one exists,</dt><dd><p>otherwise return the account.</p>
|
||
</dd>
|
||
</dl>
|
||
</p>
|
||
</dd>
|
||
<dt class="field-even">Return type</dt>
|
||
<dd class="field-even"><p>controller (Object or Account)</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.serversession.ServerSession.id">
|
||
<em class="property">property </em><code class="sig-name descname">id</code><a class="headerlink" href="#evennia.server.serversession.ServerSession.id" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.serversession.ServerSession.log">
|
||
<code class="sig-name descname">log</code><span class="sig-paren">(</span><em class="sig-param">message</em>, <em class="sig-param">channel=True</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/serversession.html#ServerSession.log"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.serversession.ServerSession.log" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Emits session info to the appropriate outputs and info channels.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>message</strong> (<em>str</em>) – The message to log.</p></li>
|
||
<li><p><strong>channel</strong> (<em>bool</em><em>, </em><em>optional</em>) – Log to the CHANNEL_CONNECTINFO channel
|
||
in addition to the server log.</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.serversession.ServerSession.msg">
|
||
<code class="sig-name descname">msg</code><span class="sig-paren">(</span><em class="sig-param">text=None</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/serversession.html#ServerSession.msg"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.serversession.ServerSession.msg" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Wrapper to mimic msg() functionality of Objects and Accounts.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>text</strong> (<em>str</em>) – String input.</p>
|
||
</dd>
|
||
</dl>
|
||
<dl class="simple">
|
||
<dt>Kwargs:</dt><dd><dl class="simple">
|
||
<dt>any (str or tuple): Send-commands identified</dt><dd><p>by their keys. Or “options”, carrying options
|
||
for the protocol(s).</p>
|
||
</dd>
|
||
</dl>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.serversession.ServerSession.nattributes">
|
||
<code class="sig-name descname">nattributes</code><a class="reference internal" href="../_modules/evennia/server/serversession.html#ServerSession.nattributes"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.serversession.ServerSession.nattributes" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.serversession.ServerSession.ndb">
|
||
<em class="property">property </em><code class="sig-name descname">ndb</code><a class="headerlink" href="#evennia.server.serversession.ServerSession.ndb" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>NonDataBase). Everything stored
|
||
to this is guaranteed to be cleared when a server is shutdown.
|
||
Syntax is same as for the _get_db_holder() method and
|
||
property, e.g. obj.ndb.attr = value etc.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Type</dt>
|
||
<dd class="field-odd"><p>A non-persistent store (ndb</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.serversession.ServerSession.ndb_del">
|
||
<code class="sig-name descname">ndb_del</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/serversession.html#ServerSession.ndb_del"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.serversession.ServerSession.ndb_del" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Stop accidental deletion.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.serversession.ServerSession.ndb_get">
|
||
<code class="sig-name descname">ndb_get</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/serversession.html#ServerSession.ndb_get"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.serversession.ServerSession.ndb_get" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>A non-persistent store (ndb: NonDataBase). Everything stored
|
||
to this is guaranteed to be cleared when a server is shutdown.
|
||
Syntax is same as for the _get_db_holder() method and
|
||
property, e.g. obj.ndb.attr = value etc.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.serversession.ServerSession.ndb_set">
|
||
<code class="sig-name descname">ndb_set</code><span class="sig-paren">(</span><em class="sig-param">value</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/serversession.html#ServerSession.ndb_set"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.serversession.ServerSession.ndb_set" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Stop accidentally replacing the db object</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>value</strong> (<em>any</em>) – A value to store in the ndb.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.serversession.ServerSession.update_flags">
|
||
<code class="sig-name descname">update_flags</code><span class="sig-paren">(</span><em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/serversession.html#ServerSession.update_flags"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.serversession.ServerSession.update_flags" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Update the protocol_flags and sync them with Portal.</p>
|
||
<dl class="simple">
|
||
<dt>Kwargs:</dt><dd><dl class="simple">
|
||
<dt>key, value - A key:value pair to set in the</dt><dd><p>protocol_flags dictionary.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>Since protocols can vary, no checking is done
|
||
as to the existene of the flag or not. The input
|
||
data should have been validated before this call.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.serversession.ServerSession.update_session_counters">
|
||
<code class="sig-name descname">update_session_counters</code><span class="sig-paren">(</span><em class="sig-param">idle=False</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/serversession.html#ServerSession.update_session_counters"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.serversession.ServerSession.update_session_counters" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Hit this when the user enters a command in order to update
|
||
idle timers and command counters.</p>
|
||
</dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.serversession._GA">
|
||
<code class="sig-prename descclassname">evennia.server.serversession.</code><code class="sig-name descname">_GA</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#evennia.server.serversession._GA" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Return getattr(self, name).</p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.serversession._SA">
|
||
<code class="sig-prename descclassname">evennia.server.serversession.</code><code class="sig-name descname">_SA</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#evennia.server.serversession._SA" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Implement setattr(self, name, value).</p>
|
||
</dd></dl>
|
||
|
||
</div>
|
||
<div class="section" id="module-evennia.server.session">
|
||
<span id="evennia-server-session-module"></span><h2>evennia.server.session module<a class="headerlink" href="#module-evennia.server.session" title="Permalink to this headline">¶</a></h2>
|
||
<p>This module defines a generic session class. All connection instances
|
||
(both on Portal and Server side) should inherit from this class.</p>
|
||
<dl class="class">
|
||
<dt id="evennia.server.session.Session">
|
||
<em class="property">class </em><code class="sig-prename descclassname">evennia.server.session.</code><code class="sig-name descname">Session</code><a class="reference internal" href="../_modules/evennia/server/session.html#Session"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.session.Session" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
|
||
<p>This class represents a player’s session and is a template for
|
||
both portal- and server-side sessions.</p>
|
||
<p>Each connection will see two session instances created:</p>
|
||
<blockquote>
|
||
<div><ol class="arabic simple">
|
||
<li><p>A Portal session. This is customized for the respective connection
|
||
protocols that Evennia supports, like Telnet, SSH etc. The Portal
|
||
session must call init_session() as part of its initialization. The
|
||
respective hook methods should be connected to the methods unique
|
||
for the respective protocol so that there is a unified interface
|
||
to Evennia.</p></li>
|
||
<li><p>A Server session. This is the same for all connected accounts,
|
||
regardless of how they connect.</p></li>
|
||
</ol>
|
||
</div></blockquote>
|
||
<p>The Portal and Server have their own respective sessionhandlers. These
|
||
are synced whenever new connections happen or the Server restarts etc,
|
||
which means much of the same information must be stored in both places
|
||
e.g. the portal can re-sync with the server when the server reboots.</p>
|
||
<dl class="method">
|
||
<dt id="evennia.server.session.Session.at_sync">
|
||
<code class="sig-name descname">at_sync</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/session.html#Session.at_sync"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.session.Session.at_sync" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called after a session has been fully synced (including
|
||
secondary operations such as setting self.account based
|
||
on uid etc).</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.session.Session.data_in">
|
||
<code class="sig-name descname">data_in</code><span class="sig-paren">(</span><em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/session.html#Session.data_in"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.session.Session.data_in" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Hook for protocols to send incoming data to the engine.</p>
|
||
<dl class="simple">
|
||
<dt>Kwargs:</dt><dd><p>kwargs (any): Other data from the protocol.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.session.Session.data_out">
|
||
<code class="sig-name descname">data_out</code><span class="sig-paren">(</span><em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/session.html#Session.data_out"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.session.Session.data_out" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Generic hook for sending data out through the protocol. Server
|
||
protocols can use this right away. Portal sessions
|
||
should overload this to format/handle the outgoing data as needed.</p>
|
||
<dl class="simple">
|
||
<dt>Kwargs:</dt><dd><p>kwargs (any): Other data to the protocol.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.session.Session.disconnect">
|
||
<code class="sig-name descname">disconnect</code><span class="sig-paren">(</span><em class="sig-param">reason=None</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/session.html#Session.disconnect"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.session.Session.disconnect" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>generic hook called from the outside to disconnect this session
|
||
should be connected to the protocols actual disconnect mechanism.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>reason</strong> (<em>str</em>) – Eventual text motivating the disconnect.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.session.Session.get_sync_data">
|
||
<code class="sig-name descname">get_sync_data</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/session.html#Session.get_sync_data"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.session.Session.get_sync_data" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Get all data relevant to sync the session.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>syncdata</strong> (<em>dict</em>) – All syncdata values, based on
|
||
the keys given by self._attrs_to_sync.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.session.Session.init_session">
|
||
<code class="sig-name descname">init_session</code><span class="sig-paren">(</span><em class="sig-param">protocol_key</em>, <em class="sig-param">address</em>, <em class="sig-param">sessionhandler</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/session.html#Session.init_session"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.session.Session.init_session" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Initialize the Session. This should be called by the protocol when
|
||
a new session is established.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>protocol_key</strong> (<em>str</em>) – By default, one of ‘telnet’, ‘telnet/ssl’, ‘ssh’,
|
||
‘webclient/websocket’ or ‘webclient/ajax’.</p></li>
|
||
<li><p><strong>address</strong> (<em>str</em>) – Client address.</p></li>
|
||
<li><p><strong>sessionhandler</strong> (<a class="reference internal" href="#evennia.server.sessionhandler.SessionHandler" title="evennia.server.sessionhandler.SessionHandler"><em>SessionHandler</em></a>) – Reference to the
|
||
main sessionhandler instance.</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.session.Session.load_sync_data">
|
||
<code class="sig-name descname">load_sync_data</code><span class="sig-paren">(</span><em class="sig-param">sessdata</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/session.html#Session.load_sync_data"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.session.Session.load_sync_data" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Takes a session dictionary, as created by get_sync_data, and
|
||
loads it into the correct properties of the session.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>sessdata</strong> (<em>dict</em>) – Session data dictionary.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
</div>
|
||
<div class="section" id="module-evennia.server.sessionhandler">
|
||
<span id="evennia-server-sessionhandler-module"></span><h2>evennia.server.sessionhandler module<a class="headerlink" href="#module-evennia.server.sessionhandler" title="Permalink to this headline">¶</a></h2>
|
||
<p>This module defines handlers for storing sessions when handles
|
||
sessions of users connecting to the server.</p>
|
||
<p>There are two similar but separate stores of sessions:</p>
|
||
<blockquote>
|
||
<div><ul class="simple">
|
||
<li><dl class="simple">
|
||
<dt>ServerSessionHandler - this stores generic game sessions</dt><dd><p>for the game. These sessions has no knowledge about
|
||
how they are connected to the world.</p>
|
||
</dd>
|
||
</dl>
|
||
</li>
|
||
<li><dl class="simple">
|
||
<dt>PortalSessionHandler - this stores sessions created by</dt><dd><p>twisted protocols. These are dumb connectors that
|
||
handle network communication but holds no game info.</p>
|
||
</dd>
|
||
</dl>
|
||
</li>
|
||
</ul>
|
||
</div></blockquote>
|
||
<dl class="class">
|
||
<dt id="evennia.server.sessionhandler.DummySession">
|
||
<em class="property">class </em><code class="sig-prename descclassname">evennia.server.sessionhandler.</code><code class="sig-name descname">DummySession</code><a class="reference internal" href="../_modules/evennia/server/sessionhandler.html#DummySession"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.sessionhandler.DummySession" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.sessionhandler.DummySession.sessid">
|
||
<code class="sig-name descname">sessid</code><em class="property"> = 0</em><a class="headerlink" href="#evennia.server.sessionhandler.DummySession.sessid" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
<dl class="class">
|
||
<dt id="evennia.server.sessionhandler.ServerSessionHandler">
|
||
<em class="property">class </em><code class="sig-prename descclassname">evennia.server.sessionhandler.</code><code class="sig-name descname">ServerSessionHandler</code><span class="sig-paren">(</span><em class="sig-param">*args</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/sessionhandler.html#ServerSessionHandler"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.sessionhandler.ServerSessionHandler" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <a class="reference internal" href="#evennia.server.sessionhandler.SessionHandler" title="evennia.server.sessionhandler.SessionHandler"><code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.server.sessionhandler.SessionHandler</span></code></a></p>
|
||
<p>This object holds the stack of sessions active in the game at
|
||
any time.</p>
|
||
<p>A session register with the handler in two steps, first by
|
||
registering itself with the connect() method. This indicates an
|
||
non-authenticated session. Whenever the session is authenticated
|
||
the session together with the related account is sent to the login()
|
||
method.</p>
|
||
<dl class="method">
|
||
<dt id="evennia.server.sessionhandler.ServerSessionHandler.__init__">
|
||
<code class="sig-name descname">__init__</code><span class="sig-paren">(</span><em class="sig-param">*args</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/sessionhandler.html#ServerSessionHandler.__init__"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.sessionhandler.ServerSessionHandler.__init__" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Init the handler.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.sessionhandler.ServerSessionHandler._run_cmd_login">
|
||
<code class="sig-name descname">_run_cmd_login</code><span class="sig-paren">(</span><em class="sig-param">session</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/sessionhandler.html#ServerSessionHandler._run_cmd_login"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.sessionhandler.ServerSessionHandler._run_cmd_login" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Launch the CMD_LOGINSTART command. This is wrapped
|
||
for delays.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.sessionhandler.ServerSessionHandler.account_count">
|
||
<code class="sig-name descname">account_count</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/sessionhandler.html#ServerSessionHandler.account_count"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.sessionhandler.ServerSessionHandler.account_count" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Get the number of connected accounts (not sessions since a
|
||
account may have more than one session depending on settings).
|
||
Only logged-in accounts are counted here.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Returns</dt>
|
||
<dd class="field-odd"><p>Number of connected accounts</p>
|
||
</dd>
|
||
<dt class="field-even">Return type</dt>
|
||
<dd class="field-even"><p>naccount (int)</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.sessionhandler.ServerSessionHandler.all_connected_accounts">
|
||
<code class="sig-name descname">all_connected_accounts</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/sessionhandler.html#ServerSessionHandler.all_connected_accounts"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.sessionhandler.ServerSessionHandler.all_connected_accounts" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Get a unique list of connected and logged-in Accounts.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Returns</dt>
|
||
<dd class="field-odd"><p><dl class="simple">
|
||
<dt>All conected Accounts (which may be fewer than the</dt><dd><p>amount of Sessions due to multi-playing).</p>
|
||
</dd>
|
||
</dl>
|
||
</p>
|
||
</dd>
|
||
<dt class="field-even">Return type</dt>
|
||
<dd class="field-even"><p>accounts (list)</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.sessionhandler.ServerSessionHandler.all_sessions_portal_sync">
|
||
<code class="sig-name descname">all_sessions_portal_sync</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/sessionhandler.html#ServerSessionHandler.all_sessions_portal_sync"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.sessionhandler.ServerSessionHandler.all_sessions_portal_sync" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This is called by the server when it reboots. It syncs all session data
|
||
to the portal. Returns a deferred!</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.sessionhandler.ServerSessionHandler.announce_all">
|
||
<code class="sig-name descname">announce_all</code><span class="sig-paren">(</span><em class="sig-param">message</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/sessionhandler.html#ServerSessionHandler.announce_all"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.sessionhandler.ServerSessionHandler.announce_all" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Send message to all connected sessions</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>message</strong> (<em>str</em>) – Message to send.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.sessionhandler.ServerSessionHandler.call_inputfuncs">
|
||
<code class="sig-name descname">call_inputfuncs</code><span class="sig-paren">(</span><em class="sig-param">session</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/sessionhandler.html#ServerSessionHandler.call_inputfuncs"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.sessionhandler.ServerSessionHandler.call_inputfuncs" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Split incoming data into its inputfunc counterparts.
|
||
This should be called by the serversession.data_in
|
||
as sessionhandler.call_inputfunc(self, <a href="#id9"><span class="problematic" id="id10">**</span></a>kwargs).</p>
|
||
<p>We also intercept OOB communication here.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>sessions</strong> (<a class="reference internal" href="#evennia.server.session.Session" title="evennia.server.session.Session"><em>Session</em></a>) – Session.</p>
|
||
</dd>
|
||
</dl>
|
||
<dl class="simple">
|
||
<dt>Kwargs:</dt><dd><dl class="simple">
|
||
<dt>kwargs (any): Incoming data from protocol on</dt><dd><p>the form <cite>{“commandname”: ((args), {kwargs}),…}</cite></p>
|
||
</dd>
|
||
</dl>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.sessionhandler.ServerSessionHandler.data_in">
|
||
<code class="sig-name descname">data_in</code><span class="sig-paren">(</span><em class="sig-param">session</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/sessionhandler.html#ServerSessionHandler.data_in"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.sessionhandler.ServerSessionHandler.data_in" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>We let the data take a “detour” to session.data_in
|
||
so the user can override and see it all in one place.
|
||
That method is responsible to in turn always call
|
||
this class’ <cite>sessionhandler.call_inputfunc</cite> with the
|
||
(possibly processed) data.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.sessionhandler.ServerSessionHandler.data_out">
|
||
<code class="sig-name descname">data_out</code><span class="sig-paren">(</span><em class="sig-param">session</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/sessionhandler.html#ServerSessionHandler.data_out"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.sessionhandler.ServerSessionHandler.data_out" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Sending data Server -> Portal</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>session</strong> (<a class="reference internal" href="#evennia.server.session.Session" title="evennia.server.session.Session"><em>Session</em></a>) – Session to relay to.</p></li>
|
||
<li><p><strong>text</strong> (<em>str</em><em>, </em><em>optional</em>) – text data to return</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>The outdata will be scrubbed for sending across
|
||
the wire here.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.sessionhandler.ServerSessionHandler.disconnect">
|
||
<code class="sig-name descname">disconnect</code><span class="sig-paren">(</span><em class="sig-param">session</em>, <em class="sig-param">reason=''</em>, <em class="sig-param">sync_portal=True</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/sessionhandler.html#ServerSessionHandler.disconnect"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.sessionhandler.ServerSessionHandler.disconnect" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called from server side to remove session and inform portal
|
||
of this fact.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>session</strong> (<a class="reference internal" href="#evennia.server.session.Session" title="evennia.server.session.Session"><em>Session</em></a>) – The Session to disconnect.</p></li>
|
||
<li><p><strong>reason</strong> (<em>str</em><em>, </em><em>optional</em>) – A motivation for the disconnect.</p></li>
|
||
<li><p><strong>sync_portal</strong> (<em>bool</em><em>, </em><em>optional</em>) – Sync the disconnect to
|
||
Portal side. This should be done unless this was
|
||
called by self.portal_disconnect().</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.sessionhandler.ServerSessionHandler.disconnect_all_sessions">
|
||
<code class="sig-name descname">disconnect_all_sessions</code><span class="sig-paren">(</span><em class="sig-param">reason='You have been disconnected.'</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/sessionhandler.html#ServerSessionHandler.disconnect_all_sessions"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.sessionhandler.ServerSessionHandler.disconnect_all_sessions" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Cleanly disconnect all of the connected sessions.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>reason</strong> (<em>str</em><em>, </em><em>optional</em>) – The reason for the disconnection.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.sessionhandler.ServerSessionHandler.disconnect_duplicate_sessions">
|
||
<code class="sig-name descname">disconnect_duplicate_sessions</code><span class="sig-paren">(</span><em class="sig-param">curr_session</em>, <em class="sig-param">reason='Logged in from elsewhere. Disconnecting.'</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/sessionhandler.html#ServerSessionHandler.disconnect_duplicate_sessions"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.sessionhandler.ServerSessionHandler.disconnect_duplicate_sessions" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Disconnects any existing sessions with the same user.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>curr_session</strong> (<a class="reference internal" href="#evennia.server.session.Session" title="evennia.server.session.Session"><em>Session</em></a>) – Disconnect all Sessions matching this one.</p></li>
|
||
<li><p><strong>reason</strong> (<em>str</em><em>, </em><em>optional</em>) – A motivation for disconnecting.</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.sessionhandler.ServerSessionHandler.get_inputfuncs">
|
||
<code class="sig-name descname">get_inputfuncs</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/sessionhandler.html#ServerSessionHandler.get_inputfuncs"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.sessionhandler.ServerSessionHandler.get_inputfuncs" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Get all registered inputfuncs (access function)</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Returns</dt>
|
||
<dd class="field-odd"><p>A dict of {key:inputfunc,…}</p>
|
||
</dd>
|
||
<dt class="field-even">Return type</dt>
|
||
<dd class="field-even"><p>inputfuncs (dict)</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.sessionhandler.ServerSessionHandler.login">
|
||
<code class="sig-name descname">login</code><span class="sig-paren">(</span><em class="sig-param">session</em>, <em class="sig-param">account</em>, <em class="sig-param">force=False</em>, <em class="sig-param">testmode=False</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/sessionhandler.html#ServerSessionHandler.login"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.sessionhandler.ServerSessionHandler.login" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Log in the previously unloggedin session and the account we by
|
||
now should know is connected to it. After this point we assume
|
||
the session to be logged in one way or another.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>session</strong> (<a class="reference internal" href="#evennia.server.session.Session" title="evennia.server.session.Session"><em>Session</em></a>) – The Session to authenticate.</p></li>
|
||
<li><p><strong>account</strong> (<em>Account</em>) – The Account identified as associated with this Session.</p></li>
|
||
<li><p><strong>force</strong> (<em>bool</em>) – Login also if the session thinks it’s already logged in
|
||
(this can happen for auto-authenticating protocols)</p></li>
|
||
<li><p><strong>testmode</strong> (<em>bool</em><em>, </em><em>optional</em>) – This is used by unittesting for
|
||
faking login without any AMP being actually active.</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.sessionhandler.ServerSessionHandler.portal_connect">
|
||
<code class="sig-name descname">portal_connect</code><span class="sig-paren">(</span><em class="sig-param">portalsessiondata</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/sessionhandler.html#ServerSessionHandler.portal_connect"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.sessionhandler.ServerSessionHandler.portal_connect" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called by Portal when a new session has connected.
|
||
Creates a new, unlogged-in game session.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>portalsessiondata</strong> (<em>dict</em>) – a dictionary of all property:value
|
||
keys defining the session and which is marked to be
|
||
synced.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.sessionhandler.ServerSessionHandler.portal_disconnect">
|
||
<code class="sig-name descname">portal_disconnect</code><span class="sig-paren">(</span><em class="sig-param">session</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/sessionhandler.html#ServerSessionHandler.portal_disconnect"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.sessionhandler.ServerSessionHandler.portal_disconnect" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called from Portal when Portal session closed from the portal
|
||
side. There is no message to report in this case.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>session</strong> (<a class="reference internal" href="#evennia.server.session.Session" title="evennia.server.session.Session"><em>Session</em></a>) – The Session to disconnect</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.sessionhandler.ServerSessionHandler.portal_disconnect_all">
|
||
<code class="sig-name descname">portal_disconnect_all</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/sessionhandler.html#ServerSessionHandler.portal_disconnect_all"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.sessionhandler.ServerSessionHandler.portal_disconnect_all" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called from Portal when Portal is closing down. All
|
||
Sessions should die. The Portal should not be informed.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.sessionhandler.ServerSessionHandler.portal_reset_server">
|
||
<code class="sig-name descname">portal_reset_server</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/sessionhandler.html#ServerSessionHandler.portal_reset_server"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.sessionhandler.ServerSessionHandler.portal_reset_server" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called by server when reloading. We tell the portal to start a new server instance.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.sessionhandler.ServerSessionHandler.portal_restart_server">
|
||
<code class="sig-name descname">portal_restart_server</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/sessionhandler.html#ServerSessionHandler.portal_restart_server"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.sessionhandler.ServerSessionHandler.portal_restart_server" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called by server when reloading. We tell the portal to start a new server instance.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.sessionhandler.ServerSessionHandler.portal_session_sync">
|
||
<code class="sig-name descname">portal_session_sync</code><span class="sig-paren">(</span><em class="sig-param">portalsessiondata</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/sessionhandler.html#ServerSessionHandler.portal_session_sync"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.sessionhandler.ServerSessionHandler.portal_session_sync" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called by Portal when it wants to update a single session (e.g.
|
||
because of all negotiation protocols have finally replied)</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>portalsessiondata</strong> (<em>dict</em>) – a dictionary of all property:value
|
||
keys defining the session and which is marked to be
|
||
synced.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.sessionhandler.ServerSessionHandler.portal_sessions_sync">
|
||
<code class="sig-name descname">portal_sessions_sync</code><span class="sig-paren">(</span><em class="sig-param">portalsessionsdata</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/sessionhandler.html#ServerSessionHandler.portal_sessions_sync"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.sessionhandler.ServerSessionHandler.portal_sessions_sync" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Syncing all session ids of the portal with the ones of the
|
||
server. This is instantiated by the portal when reconnecting.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>portalsessionsdata</strong> (<em>dict</em>) – A dictionary
|
||
<cite>{sessid: {property:value},…}</cite> defining each session and
|
||
the properties in it which should be synced.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.sessionhandler.ServerSessionHandler.portal_shutdown">
|
||
<code class="sig-name descname">portal_shutdown</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/sessionhandler.html#ServerSessionHandler.portal_shutdown"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.sessionhandler.ServerSessionHandler.portal_shutdown" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Called by server when it’s time to shut down (the portal will shut us down and then shut
|
||
itself down)</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.sessionhandler.ServerSessionHandler.session_from_account">
|
||
<code class="sig-name descname">session_from_account</code><span class="sig-paren">(</span><em class="sig-param">account</em>, <em class="sig-param">sessid</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/sessionhandler.html#ServerSessionHandler.session_from_account"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.sessionhandler.ServerSessionHandler.session_from_account" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Given an account and a session id, return the actual session
|
||
object.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>account</strong> (<em>Account</em>) – The Account to get the Session from.</p></li>
|
||
<li><p><strong>sessid</strong> (<em>int</em><em> or </em><em>list</em>) – Session id(s).</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p>Session(s) found.</p>
|
||
</dd>
|
||
<dt class="field-odd">Return type</dt>
|
||
<dd class="field-odd"><p>sessions (<a class="reference internal" href="#evennia.server.session.Session" title="evennia.server.session.Session">Session</a> or list)</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.sessionhandler.ServerSessionHandler.session_from_sessid">
|
||
<code class="sig-name descname">session_from_sessid</code><span class="sig-paren">(</span><em class="sig-param">sessid</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/sessionhandler.html#ServerSessionHandler.session_from_sessid"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.sessionhandler.ServerSessionHandler.session_from_sessid" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Get session based on sessid, or None if not found</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>sessid</strong> (<em>int</em><em> or </em><em>list</em>) – Session id(s).</p>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><dl class="simple">
|
||
<dt>Session(s) found. This</dt><dd><p>is a list if input was a list.</p>
|
||
</dd>
|
||
</dl>
|
||
</p>
|
||
</dd>
|
||
<dt class="field-odd">Return type</dt>
|
||
<dd class="field-odd"><p>sessions (<a class="reference internal" href="#evennia.server.session.Session" title="evennia.server.session.Session">Session</a> or list)</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.sessionhandler.ServerSessionHandler.session_portal_partial_sync">
|
||
<code class="sig-name descname">session_portal_partial_sync</code><span class="sig-paren">(</span><em class="sig-param">session_data</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/sessionhandler.html#ServerSessionHandler.session_portal_partial_sync"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.sessionhandler.ServerSessionHandler.session_portal_partial_sync" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Call to make a partial update of the session, such as only a particular property.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>session_data</strong> (<em>dict</em>) – Store <cite>{sessid: {property:value}, …}</cite> defining one or
|
||
more sessions in detail.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.sessionhandler.ServerSessionHandler.session_portal_sync">
|
||
<code class="sig-name descname">session_portal_sync</code><span class="sig-paren">(</span><em class="sig-param">session</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/sessionhandler.html#ServerSessionHandler.session_portal_sync"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.sessionhandler.ServerSessionHandler.session_portal_sync" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This is called by the server when it wants to sync a single session
|
||
with the Portal for whatever reason. Returns a deferred!</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.sessionhandler.ServerSessionHandler.sessions_from_account">
|
||
<code class="sig-name descname">sessions_from_account</code><span class="sig-paren">(</span><em class="sig-param">account</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/sessionhandler.html#ServerSessionHandler.sessions_from_account"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.sessionhandler.ServerSessionHandler.sessions_from_account" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Given an account, return all matching sessions.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>account</strong> (<em>Account</em>) – Account to get sessions from.</p>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p>All Sessions associated with this account.</p>
|
||
</dd>
|
||
<dt class="field-odd">Return type</dt>
|
||
<dd class="field-odd"><p>sessions (list)</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.sessionhandler.ServerSessionHandler.sessions_from_character">
|
||
<code class="sig-name descname">sessions_from_character</code><span class="sig-paren">(</span><em class="sig-param">puppet</em><span class="sig-paren">)</span><a class="headerlink" href="#evennia.server.sessionhandler.ServerSessionHandler.sessions_from_character" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Given a puppeted object, return all controlling sessions.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>puppet</strong> (<em>Object</em>) – Object puppeted</p>
|
||
</dd>
|
||
</dl>
|
||
<dl class="simple">
|
||
<dt>Returns.</dt><dd><dl class="simple">
|
||
<dt>sessions (Session or list): Can be more than one of Object is controlled by</dt><dd><p>more than one Session (MULTISESSION_MODE > 1).</p>
|
||
</dd>
|
||
</dl>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.sessionhandler.ServerSessionHandler.sessions_from_csessid">
|
||
<code class="sig-name descname">sessions_from_csessid</code><span class="sig-paren">(</span><em class="sig-param">csessid</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/sessionhandler.html#ServerSessionHandler.sessions_from_csessid"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.sessionhandler.ServerSessionHandler.sessions_from_csessid" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Given a client identification hash (for session types that offer them)
|
||
return all sessions with a matching hash.</p>
|
||
<dl class="simple">
|
||
<dt>Args</dt><dd><p>csessid (str): The session hash.</p>
|
||
</dd>
|
||
</dl>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Returns</dt>
|
||
<dd class="field-odd"><p>The sessions with matching .csessid, if any.</p>
|
||
</dd>
|
||
<dt class="field-even">Return type</dt>
|
||
<dd class="field-even"><p>sessions (list)</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.sessionhandler.ServerSessionHandler.sessions_from_puppet">
|
||
<code class="sig-name descname">sessions_from_puppet</code><span class="sig-paren">(</span><em class="sig-param">puppet</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/sessionhandler.html#ServerSessionHandler.sessions_from_puppet"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.sessionhandler.ServerSessionHandler.sessions_from_puppet" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Given a puppeted object, return all controlling sessions.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>puppet</strong> (<em>Object</em>) – Object puppeted</p>
|
||
</dd>
|
||
</dl>
|
||
<dl class="simple">
|
||
<dt>Returns.</dt><dd><dl class="simple">
|
||
<dt>sessions (Session or list): Can be more than one of Object is controlled by</dt><dd><p>more than one Session (MULTISESSION_MODE > 1).</p>
|
||
</dd>
|
||
</dl>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.sessionhandler.ServerSessionHandler.start_bot_session">
|
||
<code class="sig-name descname">start_bot_session</code><span class="sig-paren">(</span><em class="sig-param">protocol_path</em>, <em class="sig-param">configdict</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/sessionhandler.html#ServerSessionHandler.start_bot_session"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.sessionhandler.ServerSessionHandler.start_bot_session" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This method allows the server-side to force the Portal to
|
||
create a new bot session.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>protocol_path</strong> (<em>str</em>) – The full python path to the bot’s
|
||
class.</p></li>
|
||
<li><p><strong>configdict</strong> (<em>dict</em>) – This dict will be used to configure
|
||
the bot (this depends on the bot protocol).</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Examples</p>
|
||
<dl class="simple">
|
||
<dt>start_bot_session(“evennia.server.portal.irc.IRCClient”,</dt><dd><dl class="simple">
|
||
<dt>{“uid”:1, “botname”:”evbot”, “channel”:”#evennia”,</dt><dd><p>“network:”irc.freenode.net”, “port”: 6667})</p>
|
||
</dd>
|
||
</dl>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>The new session will use the supplied account-bot uid to
|
||
initiate an already logged-in connection. The Portal will
|
||
treat this as a normal connection and henceforth so will
|
||
the Server.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.sessionhandler.ServerSessionHandler.validate_sessions">
|
||
<code class="sig-name descname">validate_sessions</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/sessionhandler.html#ServerSessionHandler.validate_sessions"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.sessionhandler.ServerSessionHandler.validate_sessions" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Check all currently connected sessions (logged in and not) and
|
||
see if any are dead or idle.</p>
|
||
</dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
<dl class="class">
|
||
<dt id="evennia.server.sessionhandler.SessionHandler">
|
||
<em class="property">class </em><code class="sig-prename descclassname">evennia.server.sessionhandler.</code><code class="sig-name descname">SessionHandler</code><a class="reference internal" href="../_modules/evennia/server/sessionhandler.html#SessionHandler"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.sessionhandler.SessionHandler" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">dict</span></code></p>
|
||
<p>This handler holds a stack of sessions.</p>
|
||
<dl class="method">
|
||
<dt id="evennia.server.sessionhandler.SessionHandler.clean_senddata">
|
||
<code class="sig-name descname">clean_senddata</code><span class="sig-paren">(</span><em class="sig-param">session</em>, <em class="sig-param">kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/sessionhandler.html#SessionHandler.clean_senddata"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.sessionhandler.SessionHandler.clean_senddata" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Clean up data for sending across the AMP wire. Also apply INLINEFUNCS.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>session</strong> (<a class="reference internal" href="#evennia.server.session.Session" title="evennia.server.session.Session"><em>Session</em></a>) – The relevant session instance.</p></li>
|
||
<li><p><strong>kwargs</strong> (<em>dict</em>) – <p>send-instruction, with the keyword itself being the name
|
||
of the instruction (like “text”). Suitable values for each
|
||
keyword are:</p>
|
||
<blockquote>
|
||
<div><ul>
|
||
<li><p>arg -> [[arg], {}]</p></li>
|
||
<li><p>[args] -> [[args], {}]</p></li>
|
||
<li><p>{kwargs} -> [[], {kwargs}]</p></li>
|
||
<li><p>[args, {kwargs}] -> [[arg], {kwargs}]</p></li>
|
||
<li><p>[[args], {kwargs}] -> [[args], {kwargs}]</p></li>
|
||
</ul>
|
||
</div></blockquote>
|
||
</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><dl class="simple">
|
||
<dt>A cleaned dictionary of cmdname:[[args],{kwargs}] pairs,</dt><dd><p>where the keys, args and kwargs have all been converted to
|
||
send-safe entities (strings or numbers), and inlinefuncs have been
|
||
applied.</p>
|
||
</dd>
|
||
</dl>
|
||
</p>
|
||
</dd>
|
||
<dt class="field-odd">Return type</dt>
|
||
<dd class="field-odd"><p>kwargs (dict)</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.sessionhandler.SessionHandler.get">
|
||
<code class="sig-name descname">get</code><span class="sig-paren">(</span><em class="sig-param">key</em>, <em class="sig-param">default=None</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/sessionhandler.html#SessionHandler.get"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.sessionhandler.SessionHandler.get" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Clean out None-sessions automatically.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.sessionhandler.SessionHandler.get_all_sync_data">
|
||
<code class="sig-name descname">get_all_sync_data</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/sessionhandler.html#SessionHandler.get_all_sync_data"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.sessionhandler.SessionHandler.get_all_sync_data" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Create a dictionary of sessdata dicts representing all
|
||
sessions in store.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Returns</dt>
|
||
<dd class="field-odd"><p>A dict of sync data.</p>
|
||
</dd>
|
||
<dt class="field-even">Return type</dt>
|
||
<dd class="field-even"><p>syncdata (dict)</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.sessionhandler.SessionHandler.get_sessions">
|
||
<code class="sig-name descname">get_sessions</code><span class="sig-paren">(</span><em class="sig-param">include_unloggedin=False</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/sessionhandler.html#SessionHandler.get_sessions"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.sessionhandler.SessionHandler.get_sessions" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Returns the connected session objects.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>include_unloggedin</strong> (<em>bool</em><em>, </em><em>optional</em>) – Also list Sessions
|
||
that have not yet authenticated.</p>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p>A list of <cite>Session</cite> objects.</p>
|
||
</dd>
|
||
<dt class="field-odd">Return type</dt>
|
||
<dd class="field-odd"><p>sessions (list)</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.sessionhandler._SESSION_HANDLER_CLASS">
|
||
<code class="sig-prename descclassname">evennia.server.sessionhandler.</code><code class="sig-name descname">_SESSION_HANDLER_CLASS</code><a class="headerlink" href="#evennia.server.sessionhandler._SESSION_HANDLER_CLASS" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>alias of <a class="reference internal" href="#evennia.server.sessionhandler.ServerSessionHandler" title="evennia.server.sessionhandler.ServerSessionHandler"><code class="xref py py-class docutils literal notranslate"><span class="pre">evennia.server.sessionhandler.ServerSessionHandler</span></code></a></p>
|
||
</dd></dl>
|
||
|
||
<dl class="function">
|
||
<dt id="evennia.server.sessionhandler.delayed_import">
|
||
<code class="sig-prename descclassname">evennia.server.sessionhandler.</code><code class="sig-name descname">delayed_import</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/sessionhandler.html#delayed_import"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.sessionhandler.delayed_import" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Helper method for delayed import of all needed entities.</p>
|
||
</dd></dl>
|
||
|
||
</div>
|
||
<div class="section" id="module-evennia.server.signals">
|
||
<span id="evennia-server-signals-module"></span><h2>evennia.server.signals module<a class="headerlink" href="#module-evennia.server.signals" title="Permalink to this headline">¶</a></h2>
|
||
<p>This module brings Django Signals into Evennia. These are events that
|
||
can be subscribed to by importing a given Signal and using the
|
||
following code.</p>
|
||
<p>THIS_SIGNAL.connect(callback, sender_object)</p>
|
||
<p>When other code calls THIS_SIGNAL.send(sender, <a href="#id11"><span class="problematic" id="id12">**</span></a>kwargs), the callback
|
||
will be triggered.</p>
|
||
<p>Callbacks must be in the following format:</p>
|
||
<dl class="simple">
|
||
<dt>def my_callback(sender, <a href="#id13"><span class="problematic" id="id14">**</span></a>kwargs):</dt><dd><p>…</p>
|
||
</dd>
|
||
</dl>
|
||
<p>This is used on top of hooks to make certain features easier to
|
||
add to contribs without necessitating a full takeover of hooks
|
||
that may be in high demand.</p>
|
||
</div>
|
||
<div class="section" id="module-evennia.server.throttle">
|
||
<span id="evennia-server-throttle-module"></span><h2>evennia.server.throttle module<a class="headerlink" href="#module-evennia.server.throttle" title="Permalink to this headline">¶</a></h2>
|
||
<dl class="class">
|
||
<dt id="evennia.server.throttle.Throttle">
|
||
<em class="property">class </em><code class="sig-prename descclassname">evennia.server.throttle.</code><code class="sig-name descname">Throttle</code><span class="sig-paren">(</span><em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/throttle.html#Throttle"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.throttle.Throttle" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
|
||
<p>Keeps a running count of failed actions per IP address.</p>
|
||
<p>Available methods indicate whether or not the number of failures exceeds a
|
||
particular threshold.</p>
|
||
<p>This version of the throttle is usable by both the terminal server as well
|
||
as the web server, imposes limits on memory consumption by using deques
|
||
with length limits instead of open-ended lists, and removes sparse keys when
|
||
no recent failures have been recorded.</p>
|
||
<dl class="method">
|
||
<dt id="evennia.server.throttle.Throttle.__init__">
|
||
<code class="sig-name descname">__init__</code><span class="sig-paren">(</span><em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/throttle.html#Throttle.__init__"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.throttle.Throttle.__init__" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Allows setting of throttle parameters.</p>
|
||
<dl>
|
||
<dt>Kwargs:</dt><dd><p>limit (int): Max number of failures before imposing limiter
|
||
timeout (int): number of timeout seconds after</p>
|
||
<blockquote>
|
||
<div><p>max number of tries has been reached.</p>
|
||
</div></blockquote>
|
||
<dl class="simple">
|
||
<dt>cache_size (int): Max number of attempts to record per IP within a</dt><dd><p>rolling window; this is NOT the same as the limit after which
|
||
the throttle is imposed!</p>
|
||
</dd>
|
||
</dl>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.throttle.Throttle.check">
|
||
<code class="sig-name descname">check</code><span class="sig-paren">(</span><em class="sig-param">ip</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/throttle.html#Throttle.check"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.throttle.Throttle.check" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This will check the session’s address against the
|
||
storage dictionary to check they haven’t spammed too many
|
||
fails recently.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>ip</strong> (<em>str</em>) – IP address of requestor</p>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><dl class="simple">
|
||
<dt>True if throttling is active,</dt><dd><p>False otherwise.</p>
|
||
</dd>
|
||
</dl>
|
||
</p>
|
||
</dd>
|
||
<dt class="field-odd">Return type</dt>
|
||
<dd class="field-odd"><p>throttled (bool)</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.throttle.Throttle.error_msg">
|
||
<code class="sig-name descname">error_msg</code><em class="property"> = 'Too many failed attempts; you must wait a few minutes before trying again.'</em><a class="headerlink" href="#evennia.server.throttle.Throttle.error_msg" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.throttle.Throttle.get">
|
||
<code class="sig-name descname">get</code><span class="sig-paren">(</span><em class="sig-param">ip=None</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/throttle.html#Throttle.get"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.throttle.Throttle.get" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Convenience function that returns the storage table, or part of.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>ip</strong> (<em>str</em><em>, </em><em>optional</em>) – IP address of requestor</p>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><dl class="simple">
|
||
<dt>When no IP is provided, returns a dict of all</dt><dd><p>current IPs being tracked and the timestamps of their recent
|
||
failures.</p>
|
||
</dd>
|
||
<dt>timestamps (deque): When an IP is provided, returns a deque of</dt><dd><p>timestamps of recent failures only for that IP.</p>
|
||
</dd>
|
||
</dl>
|
||
</p>
|
||
</dd>
|
||
<dt class="field-odd">Return type</dt>
|
||
<dd class="field-odd"><p>storage (dict)</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.throttle.Throttle.update">
|
||
<code class="sig-name descname">update</code><span class="sig-paren">(</span><em class="sig-param">ip</em>, <em class="sig-param">failmsg='Exceeded threshold.'</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/throttle.html#Throttle.update"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.throttle.Throttle.update" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Store the time of the latest failure.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>ip</strong> (<em>str</em>) – IP address of requestor</p></li>
|
||
<li><p><strong>failmsg</strong> (<em>str</em><em>, </em><em>optional</em>) – Message to display in logs upon activation
|
||
of throttle.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p>None</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
</div>
|
||
<div class="section" id="module-evennia.server.validators">
|
||
<span id="evennia-server-validators-module"></span><h2>evennia.server.validators module<a class="headerlink" href="#module-evennia.server.validators" title="Permalink to this headline">¶</a></h2>
|
||
<dl class="class">
|
||
<dt id="evennia.server.validators.EvenniaPasswordValidator">
|
||
<em class="property">class </em><code class="sig-prename descclassname">evennia.server.validators.</code><code class="sig-name descname">EvenniaPasswordValidator</code><span class="sig-paren">(</span><em class="sig-param">regex="^[\w. @+\-',]+$", policy="Password should contain a mix of letters, spaces, digits and @/./+/-/_/'/, only."</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/validators.html#EvenniaPasswordValidator"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.validators.EvenniaPasswordValidator" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
|
||
<dl class="method">
|
||
<dt id="evennia.server.validators.EvenniaPasswordValidator.__init__">
|
||
<code class="sig-name descname">__init__</code><span class="sig-paren">(</span><em class="sig-param">regex="^[\\w. @+\\-',]+$", policy="Password should contain a mix of letters, spaces, digits and @/./+/-/_/'/, only."</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/validators.html#EvenniaPasswordValidator.__init__"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.validators.EvenniaPasswordValidator.__init__" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Constructs a standard Django password validator.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>regex</strong> (<em>str</em>) – Regex pattern of valid characters to allow.</p></li>
|
||
<li><p><strong>policy</strong> (<em>str</em>) – Brief explanation of what the defined regex permits.</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.validators.EvenniaPasswordValidator.get_help_text">
|
||
<code class="sig-name descname">get_help_text</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/validators.html#EvenniaPasswordValidator.get_help_text"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.validators.EvenniaPasswordValidator.get_help_text" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Returns a user-facing explanation of the password policy defined
|
||
by this validator.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Returns</dt>
|
||
<dd class="field-odd"><p>Explanation of password policy.</p>
|
||
</dd>
|
||
<dt class="field-even">Return type</dt>
|
||
<dd class="field-even"><p>text (str)</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.validators.EvenniaPasswordValidator.validate">
|
||
<code class="sig-name descname">validate</code><span class="sig-paren">(</span><em class="sig-param">password</em>, <em class="sig-param">user=None</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/validators.html#EvenniaPasswordValidator.validate"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.validators.EvenniaPasswordValidator.validate" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Validates a password string to make sure it meets predefined Evennia
|
||
acceptable character policy.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>password</strong> (<em>str</em>) – Password to validate</p></li>
|
||
<li><p><strong>user</strong> (<em>None</em>) – Unused argument but required by Django</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p><dl class="simple">
|
||
<dt>None if password successfully validated,</dt><dd><p>raises ValidationError otherwise.</p>
|
||
</dd>
|
||
</dl>
|
||
</p>
|
||
</dd>
|
||
<dt class="field-odd">Return type</dt>
|
||
<dd class="field-odd"><p>None (None)</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
<dl class="class">
|
||
<dt id="evennia.server.validators.EvenniaUsernameAvailabilityValidator">
|
||
<em class="property">class </em><code class="sig-prename descclassname">evennia.server.validators.</code><code class="sig-name descname">EvenniaUsernameAvailabilityValidator</code><a class="reference internal" href="../_modules/evennia/server/validators.html#EvenniaUsernameAvailabilityValidator"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.validators.EvenniaUsernameAvailabilityValidator" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
|
||
<p>Checks to make sure a given username is not taken or otherwise reserved.</p>
|
||
</dd></dl>
|
||
|
||
</div>
|
||
<div class="section" id="module-evennia.server.webserver">
|
||
<span id="evennia-server-webserver-module"></span><h2>evennia.server.webserver module<a class="headerlink" href="#module-evennia.server.webserver" title="Permalink to this headline">¶</a></h2>
|
||
<p>This implements resources for Twisted webservers using the WSGI
|
||
interface of Django. This alleviates the need of running e.g. an
|
||
Apache server to serve Evennia’s web presence (although you could do
|
||
that too if desired).</p>
|
||
<p>The actual servers are started inside server.py as part of the Evennia
|
||
application.</p>
|
||
<p>(Lots of thanks to <a class="reference external" href="http://github.com/clemesha/twisted-wsgi-django">http://github.com/clemesha/twisted-wsgi-django</a> for
|
||
a great example/aid on how to do this.)</p>
|
||
<dl class="class">
|
||
<dt id="evennia.server.webserver.DjangoWebRoot">
|
||
<em class="property">class </em><code class="sig-prename descclassname">evennia.server.webserver.</code><code class="sig-name descname">DjangoWebRoot</code><span class="sig-paren">(</span><em class="sig-param">pool</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/webserver.html#DjangoWebRoot"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.webserver.DjangoWebRoot" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">twisted.web.resource.Resource</span></code></p>
|
||
<p>This creates a web root (/) that Django
|
||
understands by tweaking the way
|
||
child instances are recognized.</p>
|
||
<dl class="method">
|
||
<dt id="evennia.server.webserver.DjangoWebRoot.__init__">
|
||
<code class="sig-name descname">__init__</code><span class="sig-paren">(</span><em class="sig-param">pool</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/webserver.html#DjangoWebRoot.__init__"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.webserver.DjangoWebRoot.__init__" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Setup the django+twisted resource.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>pool</strong> (<em>ThreadPool</em>) – The twisted threadpool.</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.webserver.DjangoWebRoot._decrement_requests">
|
||
<code class="sig-name descname">_decrement_requests</code><span class="sig-paren">(</span><em class="sig-param">*args</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/webserver.html#DjangoWebRoot._decrement_requests"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.webserver.DjangoWebRoot._decrement_requests" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.webserver.DjangoWebRoot.empty_threadpool">
|
||
<code class="sig-name descname">empty_threadpool</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/webserver.html#DjangoWebRoot.empty_threadpool"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.webserver.DjangoWebRoot.empty_threadpool" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Converts our _pending_requests list of deferreds into a DeferredList</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Returns</dt>
|
||
<dd class="field-odd"><p>Contains all deferreds of pending requests.</p>
|
||
</dd>
|
||
<dt class="field-even">Return type</dt>
|
||
<dd class="field-even"><p>deflist (DeferredList)</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.webserver.DjangoWebRoot.getChild">
|
||
<code class="sig-name descname">getChild</code><span class="sig-paren">(</span><em class="sig-param">path</em>, <em class="sig-param">request</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/webserver.html#DjangoWebRoot.getChild"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.webserver.DjangoWebRoot.getChild" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>To make things work we nudge the url tree to make this the
|
||
root.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>path</strong> (<em>str</em>) – Url path.</p></li>
|
||
<li><p><strong>request</strong> (<em>Request object</em>) – Incoming request.</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
<p class="rubric">Notes</p>
|
||
<p>We make sure to save the request queue so
|
||
that we can safely kill the threadpool
|
||
on a server reload.</p>
|
||
</dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
<dl class="class">
|
||
<dt id="evennia.server.webserver.EvenniaReverseProxyResource">
|
||
<em class="property">class </em><code class="sig-prename descclassname">evennia.server.webserver.</code><code class="sig-name descname">EvenniaReverseProxyResource</code><span class="sig-paren">(</span><em class="sig-param">host</em>, <em class="sig-param">port</em>, <em class="sig-param">path</em>, <em class="sig-param">reactor=<twisted.internet.epollreactor.EPollReactor object></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/webserver.html#EvenniaReverseProxyResource"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.webserver.EvenniaReverseProxyResource" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">twisted.web.proxy.ReverseProxyResource</span></code></p>
|
||
<dl class="method">
|
||
<dt id="evennia.server.webserver.EvenniaReverseProxyResource.getChild">
|
||
<code class="sig-name descname">getChild</code><span class="sig-paren">(</span><em class="sig-param">path</em>, <em class="sig-param">request</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/webserver.html#EvenniaReverseProxyResource.getChild"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.webserver.EvenniaReverseProxyResource.getChild" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Create and return a proxy resource with the same proxy configuration
|
||
as this one, except that its path also contains the segment given by
|
||
path at the end.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>path</strong> (<em>str</em>) – Url path.</p></li>
|
||
<li><p><strong>request</strong> (<em>Request object</em>) – Incoming request.</p></li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p>A proxy resource.</p>
|
||
</dd>
|
||
<dt class="field-odd">Return type</dt>
|
||
<dd class="field-odd"><p>resource (<a class="reference internal" href="#evennia.server.webserver.EvenniaReverseProxyResource" title="evennia.server.webserver.EvenniaReverseProxyResource">EvenniaReverseProxyResource</a>)</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.webserver.EvenniaReverseProxyResource.render">
|
||
<code class="sig-name descname">render</code><span class="sig-paren">(</span><em class="sig-param">request</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/webserver.html#EvenniaReverseProxyResource.render"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.webserver.EvenniaReverseProxyResource.render" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Render a request by forwarding it to the proxied server.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><p><strong>request</strong> (<em>Request</em>) – Incoming request.</p>
|
||
</dd>
|
||
<dt class="field-even">Returns</dt>
|
||
<dd class="field-even"><p>Indicator to note request not yet finished.</p>
|
||
</dd>
|
||
<dt class="field-odd">Return type</dt>
|
||
<dd class="field-odd"><p>not_done (char)</p>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
<dl class="class">
|
||
<dt id="evennia.server.webserver.HTTPChannelWithXForwardedFor">
|
||
<em class="property">class </em><code class="sig-prename descclassname">evennia.server.webserver.</code><code class="sig-name descname">HTTPChannelWithXForwardedFor</code><a class="reference internal" href="../_modules/evennia/server/webserver.html#HTTPChannelWithXForwardedFor"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.webserver.HTTPChannelWithXForwardedFor" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">twisted.web.http.HTTPChannel</span></code></p>
|
||
<p>HTTP xforward class</p>
|
||
<dl class="method">
|
||
<dt id="evennia.server.webserver.HTTPChannelWithXForwardedFor.allHeadersReceived">
|
||
<code class="sig-name descname">allHeadersReceived</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/webserver.html#HTTPChannelWithXForwardedFor.allHeadersReceived"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.webserver.HTTPChannelWithXForwardedFor.allHeadersReceived" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Check to see if this is a reverse proxied connection.</p>
|
||
</dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
<dl class="class">
|
||
<dt id="evennia.server.webserver.LockableThreadPool">
|
||
<em class="property">class </em><code class="sig-prename descclassname">evennia.server.webserver.</code><code class="sig-name descname">LockableThreadPool</code><span class="sig-paren">(</span><em class="sig-param">*args</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/webserver.html#LockableThreadPool"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.webserver.LockableThreadPool" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">twisted.python.threadpool.ThreadPool</span></code></p>
|
||
<p>Threadpool that can be locked from accepting new requests.</p>
|
||
<dl class="method">
|
||
<dt id="evennia.server.webserver.LockableThreadPool.__init__">
|
||
<code class="sig-name descname">__init__</code><span class="sig-paren">(</span><em class="sig-param">*args</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/webserver.html#LockableThreadPool.__init__"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.webserver.LockableThreadPool.__init__" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Create a new threadpool.</p>
|
||
<p>@param minthreads: minimum number of threads in the pool
|
||
@type minthreads: L{int}</p>
|
||
<p>@param maxthreads: maximum number of threads in the pool
|
||
@type maxthreads: L{int}</p>
|
||
<p>@param name: The name to give this threadpool; visible in log messages.
|
||
@type name: native L{str}</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.webserver.LockableThreadPool.callInThread">
|
||
<code class="sig-name descname">callInThread</code><span class="sig-paren">(</span><em class="sig-param">func</em>, <em class="sig-param">*args</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/webserver.html#LockableThreadPool.callInThread"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.webserver.LockableThreadPool.callInThread" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>called in the main reactor thread. Makes sure the pool
|
||
is not locked before continuing.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.webserver.LockableThreadPool.lock">
|
||
<code class="sig-name descname">lock</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/webserver.html#LockableThreadPool.lock"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.webserver.LockableThreadPool.lock" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
<dl class="class">
|
||
<dt id="evennia.server.webserver.PrivateStaticRoot">
|
||
<em class="property">class </em><code class="sig-prename descclassname">evennia.server.webserver.</code><code class="sig-name descname">PrivateStaticRoot</code><span class="sig-paren">(</span><em class="sig-param">path</em>, <em class="sig-param">defaultType='text/html'</em>, <em class="sig-param">ignoredExts=()</em>, <em class="sig-param">registry=None</em>, <em class="sig-param">allowExt=0</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/webserver.html#PrivateStaticRoot"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.webserver.PrivateStaticRoot" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">twisted.web.static.File</span></code></p>
|
||
<p>This overrides the default static file resource so as to not make the
|
||
directory listings public (that is, if you go to /media or /static you
|
||
won’t see an index of all static/media files on the server).</p>
|
||
<dl class="method">
|
||
<dt id="evennia.server.webserver.PrivateStaticRoot.directoryListing">
|
||
<code class="sig-name descname">directoryListing</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/webserver.html#PrivateStaticRoot.directoryListing"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.webserver.PrivateStaticRoot.directoryListing" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Return a resource that generates an HTML listing of the
|
||
directory this path represents.</p>
|
||
<p>@return: A resource that renders the directory to HTML.
|
||
@rtype: L{DirectoryLister}</p>
|
||
</dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
<dl class="class">
|
||
<dt id="evennia.server.webserver.WSGIWebServer">
|
||
<em class="property">class </em><code class="sig-prename descclassname">evennia.server.webserver.</code><code class="sig-name descname">WSGIWebServer</code><span class="sig-paren">(</span><em class="sig-param">pool</em>, <em class="sig-param">*args</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/webserver.html#WSGIWebServer"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.webserver.WSGIWebServer" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">twisted.application.internet.TCPServer</span></code></p>
|
||
<p>This is a WSGI webserver. It makes sure to start
|
||
the threadpool after the service itself started,
|
||
so as to register correctly with the twisted daemon.</p>
|
||
<p>call with WSGIWebServer(threadpool, port, wsgi_resource)</p>
|
||
<dl class="method">
|
||
<dt id="evennia.server.webserver.WSGIWebServer.__init__">
|
||
<code class="sig-name descname">__init__</code><span class="sig-paren">(</span><em class="sig-param">pool</em>, <em class="sig-param">*args</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/webserver.html#WSGIWebServer.__init__"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.webserver.WSGIWebServer.__init__" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>This just stores the threadpool.</p>
|
||
<dl class="field-list simple">
|
||
<dt class="field-odd">Parameters</dt>
|
||
<dd class="field-odd"><ul class="simple">
|
||
<li><p><strong>pool</strong> (<em>ThreadPool</em>) – The twisted threadpool.</p></li>
|
||
<li><p><strong>kwargs</strong> (<em>args</em><em>,</em>) – Passed on to the TCPServer.</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.webserver.WSGIWebServer.startService">
|
||
<code class="sig-name descname">startService</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/webserver.html#WSGIWebServer.startService"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.webserver.WSGIWebServer.startService" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Start the pool after the service starts.</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.webserver.WSGIWebServer.stopService">
|
||
<code class="sig-name descname">stopService</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/webserver.html#WSGIWebServer.stopService"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.webserver.WSGIWebServer.stopService" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Safely stop the pool after the service stops.</p>
|
||
</dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
<dl class="class">
|
||
<dt id="evennia.server.webserver.Website">
|
||
<em class="property">class </em><code class="sig-prename descclassname">evennia.server.webserver.</code><code class="sig-name descname">Website</code><span class="sig-paren">(</span><em class="sig-param">resource</em>, <em class="sig-param">requestFactory=None</em>, <em class="sig-param">*args</em>, <em class="sig-param">**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/webserver.html#Website"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.webserver.Website" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">twisted.web.server.Site</span></code></p>
|
||
<p>This class will only log http requests if settings.DEBUG is True.</p>
|
||
<dl class="method">
|
||
<dt id="evennia.server.webserver.Website.log">
|
||
<code class="sig-name descname">log</code><span class="sig-paren">(</span><em class="sig-param">request</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/webserver.html#Website.log"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.webserver.Website.log" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>Conditional logging</p>
|
||
</dd></dl>
|
||
|
||
<dl class="method">
|
||
<dt id="evennia.server.webserver.Website.logPrefix">
|
||
<code class="sig-name descname">logPrefix</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="../_modules/evennia/server/webserver.html#Website.logPrefix"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#evennia.server.webserver.Website.logPrefix" title="Permalink to this definition">¶</a></dt>
|
||
<dd><p>How to be named in logs</p>
|
||
</dd></dl>
|
||
|
||
<dl class="attribute">
|
||
<dt id="evennia.server.webserver.Website.noisy">
|
||
<code class="sig-name descname">noisy</code><em class="property"> = False</em><a class="headerlink" href="#evennia.server.webserver.Website.noisy" title="Permalink to this definition">¶</a></dt>
|
||
<dd></dd></dl>
|
||
|
||
</dd></dl>
|
||
|
||
</div>
|
||
</div>
|
||
|
||
|
||
</div>
|
||
|
||
</div>
|
||
</div>
|
||
<div class="sphinxsidebar" role="navigation" aria-label="main navigation">
|
||
<div class="sphinxsidebarwrapper">
|
||
<div id="searchbox" style="display: none" role="search">
|
||
<h3 id="searchlabel">Quick search</h3>
|
||
<div class="searchformwrapper">
|
||
<form class="search" action="../search.html" method="get">
|
||
<input type="text" name="q" aria-labelledby="searchlabel" />
|
||
<input type="submit" value="Go" />
|
||
</form>
|
||
</div>
|
||
</div>
|
||
<script>$('#searchbox').show(0);</script>
|
||
<p><h3><a href="../index.html">Table of Contents</a></h3>
|
||
<ul>
|
||
<li><a class="reference internal" href="#">evennia.server package</a><ul>
|
||
<li><a class="reference internal" href="#subpackages">Subpackages</a></li>
|
||
<li><a class="reference internal" href="#submodules">Submodules</a></li>
|
||
<li><a class="reference internal" href="#module-evennia.server.admin">evennia.server.admin module</a></li>
|
||
<li><a class="reference internal" href="#module-evennia.server.amp_client">evennia.server.amp_client module</a></li>
|
||
<li><a class="reference internal" href="#module-evennia.server.connection_wizard">evennia.server.connection_wizard module</a></li>
|
||
<li><a class="reference internal" href="#module-evennia.server.deprecations">evennia.server.deprecations module</a></li>
|
||
<li><a class="reference internal" href="#module-evennia.server.evennia_launcher">evennia.server.evennia_launcher module</a></li>
|
||
<li><a class="reference internal" href="#module-evennia.server.initial_setup">evennia.server.initial_setup module</a></li>
|
||
<li><a class="reference internal" href="#module-evennia.server.inputfuncs">evennia.server.inputfuncs module</a></li>
|
||
<li><a class="reference internal" href="#module-evennia.server.manager">evennia.server.manager module</a></li>
|
||
<li><a class="reference internal" href="#module-evennia.server.models">evennia.server.models module</a></li>
|
||
<li><a class="reference internal" href="#module-evennia.server.server">evennia.server.server module</a></li>
|
||
<li><a class="reference internal" href="#module-evennia.server.serversession">evennia.server.serversession module</a></li>
|
||
<li><a class="reference internal" href="#module-evennia.server.session">evennia.server.session module</a></li>
|
||
<li><a class="reference internal" href="#module-evennia.server.sessionhandler">evennia.server.sessionhandler module</a></li>
|
||
<li><a class="reference internal" href="#module-evennia.server.signals">evennia.server.signals module</a></li>
|
||
<li><a class="reference internal" href="#module-evennia.server.throttle">evennia.server.throttle module</a></li>
|
||
<li><a class="reference internal" href="#module-evennia.server.validators">evennia.server.validators module</a></li>
|
||
<li><a class="reference internal" href="#module-evennia.server.webserver">evennia.server.webserver module</a></li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
<div class="relations">
|
||
<h3>Related Topics</h3>
|
||
<ul>
|
||
<li><a href="../index.html">Documentation overview</a><ul>
|
||
</ul></li>
|
||
</ul>
|
||
</div>
|
||
<div role="note" aria-label="source link">
|
||
<!--h3>This Page</h3-->
|
||
<ul class="this-page-menu">
|
||
<li><a href="../_sources/api/evennia.server.rst.txt"
|
||
rel="nofollow">Show Page Source</a></li>
|
||
</ul>
|
||
</div>
|
||
<h3>Versions</h3>
|
||
<ul>
|
||
<li><a href="evennia.server.html">1.0-dev (develop branch)</a></li>
|
||
<li><a href="../../0.9.1/api/evennia.server.html">0.9.1 (master branch)</a></li>
|
||
</ul>
|
||
|
||
</div>
|
||
</div>
|
||
<div class="clearer"></div>
|
||
</div>
|
||
<div class="footer">
|
||
©2020, The Evennia developer community.
|
||
|
||
|
|
||
Powered by <a href="http://sphinx-doc.org/">Sphinx 2.4.4</a>
|
||
& <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.12</a>
|
||
|
||
|
|
||
<a href="../_sources/api/evennia.server.rst.txt"
|
||
rel="nofollow">Page source</a>
|
||
</div>
|
||
|
||
|
||
|
||
|
||
</body>
|
||
</html> |