<spanid="evennia-server-inputfuncs"></span><h1>evennia.server.inputfuncs<aclass="headerlink"href="#module-evennia.server.inputfuncs"title="Link to this heading">¶</a></h1>
<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
<spanclass="sig-prename descclassname"><spanclass="pre">evennia.server.inputfuncs.</span></span><spanclass="sig-name descname"><spanclass="pre">text</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">session</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">*</span></span><spanclass="n"><spanclass="pre">args</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/inputfuncs.html#text"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.server.inputfuncs.text"title="Link to this definition">¶</a></dt>
<dd><p>Main text input from the client. This will execute a command
<li><p><strong>session</strong> (<aclass="reference internal"href="evennia.server.session.html#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
<spanclass="sig-prename descclassname"><spanclass="pre">evennia.server.inputfuncs.</span></span><spanclass="sig-name descname"><spanclass="pre">bot_data_in</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">session</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">*</span></span><spanclass="n"><spanclass="pre">args</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/inputfuncs.html#bot_data_in"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.server.inputfuncs.bot_data_in"title="Link 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>
<li><p><strong>session</strong> (<aclass="reference internal"href="evennia.server.session.html#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>
<spanclass="sig-prename descclassname"><spanclass="pre">evennia.server.inputfuncs.</span></span><spanclass="sig-name descname"><spanclass="pre">echo</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">session</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">*</span></span><spanclass="n"><spanclass="pre">args</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/inputfuncs.html#echo"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.server.inputfuncs.echo"title="Link to this definition">¶</a></dt>
<spanclass="sig-prename descclassname"><spanclass="pre">evennia.server.inputfuncs.</span></span><spanclass="sig-name descname"><spanclass="pre">default</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">session</span></span></em>, <emclass="sig-param"><spanclass="n"><spanclass="pre">cmdname</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">*</span></span><spanclass="n"><spanclass="pre">args</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/inputfuncs.html#default"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.server.inputfuncs.default"title="Link to this definition">¶</a></dt>
<dd><p>Default catch-function. This is like all other input functions except
it will get <strong>cmdname</strong> as the first argument.</p>
<spanclass="sig-prename descclassname"><spanclass="pre">evennia.server.inputfuncs.</span></span><spanclass="sig-name descname"><spanclass="pre">client_options</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">session</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">*</span></span><spanclass="n"><spanclass="pre">args</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/inputfuncs.html#client_options"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.server.inputfuncs.client_options"title="Link 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>
<spanclass="sig-prename descclassname"><spanclass="pre">evennia.server.inputfuncs.</span></span><spanclass="sig-name descname"><spanclass="pre">get_client_options</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">session</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">*</span></span><spanclass="n"><spanclass="pre">args</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/inputfuncs.html#get_client_options"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.server.inputfuncs.get_client_options"title="Link to this definition">¶</a></dt>
<spanclass="sig-prename descclassname"><spanclass="pre">evennia.server.inputfuncs.</span></span><spanclass="sig-name descname"><spanclass="pre">get_inputfuncs</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">session</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">*</span></span><spanclass="n"><spanclass="pre">args</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/inputfuncs.html#get_inputfuncs"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.server.inputfuncs.get_inputfuncs"title="Link 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.
<spanclass="sig-prename descclassname"><spanclass="pre">evennia.server.inputfuncs.</span></span><spanclass="sig-name descname"><spanclass="pre">login</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">session</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">*</span></span><spanclass="n"><spanclass="pre">args</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/inputfuncs.html#login"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.server.inputfuncs.login"title="Link 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>
<spanclass="sig-prename descclassname"><spanclass="pre">evennia.server.inputfuncs.</span></span><spanclass="sig-name descname"><spanclass="pre">get_value</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">session</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">*</span></span><spanclass="n"><spanclass="pre">args</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/inputfuncs.html#get_value"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.server.inputfuncs.get_value"title="Link to this definition">¶</a></dt>
<dd><p>Return the value of a given attribute or db_property on the
<spanclass="sig-prename descclassname"><spanclass="pre">evennia.server.inputfuncs.</span></span><spanclass="sig-name descname"><spanclass="pre">repeat</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">session</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">*</span></span><spanclass="n"><spanclass="pre">args</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/inputfuncs.html#repeat"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.server.inputfuncs.repeat"title="Link 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
<spanclass="sig-prename descclassname"><spanclass="pre">evennia.server.inputfuncs.</span></span><spanclass="sig-name descname"><spanclass="pre">unrepeat</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">session</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">*</span></span><spanclass="n"><spanclass="pre">args</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/inputfuncs.html#unrepeat"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.server.inputfuncs.unrepeat"title="Link to this definition">¶</a></dt>
<spanclass="sig-prename descclassname"><spanclass="pre">evennia.server.inputfuncs.</span></span><spanclass="sig-name descname"><spanclass="pre">monitor</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">session</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">*</span></span><spanclass="n"><spanclass="pre">args</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/inputfuncs.html#monitor"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.server.inputfuncs.monitor"title="Link to this definition">¶</a></dt>
<dd><p>Adds monitoring to a given property or Attribute.</p>
<spanclass="sig-prename descclassname"><spanclass="pre">evennia.server.inputfuncs.</span></span><spanclass="sig-name descname"><spanclass="pre">unmonitor</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">session</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">*</span></span><spanclass="n"><spanclass="pre">args</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/inputfuncs.html#unmonitor"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.server.inputfuncs.unmonitor"title="Link to this definition">¶</a></dt>
<spanclass="sig-prename descclassname"><spanclass="pre">evennia.server.inputfuncs.</span></span><spanclass="sig-name descname"><spanclass="pre">monitored</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">session</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">*</span></span><spanclass="n"><spanclass="pre">args</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/inputfuncs.html#monitored"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.server.inputfuncs.monitored"title="Link to this definition">¶</a></dt>
<spanclass="sig-prename descclassname"><spanclass="pre">evennia.server.inputfuncs.</span></span><spanclass="sig-name descname"><spanclass="pre">webclient_options</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">session</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">*</span></span><spanclass="n"><spanclass="pre">args</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/inputfuncs.html#webclient_options"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.server.inputfuncs.webclient_options"title="Link 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
<spanclass="sig-prename descclassname"><spanclass="pre">evennia.server.inputfuncs.</span></span><spanclass="sig-name descname"><spanclass="pre">hello</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">session</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">*</span></span><spanclass="n"><spanclass="pre">args</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="headerlink"href="#evennia.server.inputfuncs.hello"title="Link 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>
<spanclass="sig-prename descclassname"><spanclass="pre">evennia.server.inputfuncs.</span></span><spanclass="sig-name descname"><spanclass="pre">supports_set</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">session</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">*</span></span><spanclass="n"><spanclass="pre">args</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="headerlink"href="#evennia.server.inputfuncs.supports_set"title="Link 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>
<spanclass="sig-prename descclassname"><spanclass="pre">evennia.server.inputfuncs.</span></span><spanclass="sig-name descname"><spanclass="pre">msdp_list</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">session</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">*</span></span><spanclass="n"><spanclass="pre">args</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/inputfuncs.html#msdp_list"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.server.inputfuncs.msdp_list"title="Link to this definition">¶</a></dt>
<spanclass="sig-prename descclassname"><spanclass="pre">evennia.server.inputfuncs.</span></span><spanclass="sig-name descname"><spanclass="pre">msdp_report</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">session</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">*</span></span><spanclass="n"><spanclass="pre">args</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/inputfuncs.html#msdp_report"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.server.inputfuncs.msdp_report"title="Link to this definition">¶</a></dt>
<spanclass="sig-prename descclassname"><spanclass="pre">evennia.server.inputfuncs.</span></span><spanclass="sig-name descname"><spanclass="pre">msdp_unreport</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">session</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">*</span></span><spanclass="n"><spanclass="pre">args</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/inputfuncs.html#msdp_unreport"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.server.inputfuncs.msdp_unreport"title="Link to this definition">¶</a></dt>
<spanclass="sig-prename descclassname"><spanclass="pre">evennia.server.inputfuncs.</span></span><spanclass="sig-name descname"><spanclass="pre">msdp_send</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">session</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">*</span></span><spanclass="n"><spanclass="pre">args</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/inputfuncs.html#msdp_send"><spanclass="viewcode-link"><spanclass="pre">[source]</span></span></a><aclass="headerlink"href="#evennia.server.inputfuncs.msdp_send"title="Link to this definition">¶</a></dt>
<spanclass="sig-prename descclassname"><spanclass="pre">evennia.server.inputfuncs.</span></span><spanclass="sig-name descname"><spanclass="pre">external_discord_hello</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">session</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">*</span></span><spanclass="n"><spanclass="pre">args</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="headerlink"href="#evennia.server.inputfuncs.external_discord_hello"title="Link to this definition">¶</a></dt>
<dd><p>Dummy used to swallow missing-inputfunc errors for
<spanclass="sig-prename descclassname"><spanclass="pre">evennia.server.inputfuncs.</span></span><spanclass="sig-name descname"><spanclass="pre">client_gui</span></span><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n"><spanclass="pre">session</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">*</span></span><spanclass="n"><spanclass="pre">args</span></span></em>, <emclass="sig-param"><spanclass="o"><spanclass="pre">**</span></span><spanclass="n"><spanclass="pre">kwargs</span></span></em><spanclass="sig-paren">)</span><aclass="headerlink"href="#evennia.server.inputfuncs.client_gui"title="Link to this definition">¶</a></dt>
<dd><p>Dummy used to swallow missing-inputfunc errors for