<spanid="evennia-server-portal-amp"></span><h1>evennia.server.portal.amp<aclass="headerlink"href="#module-evennia.server.portal.amp"title="Permalink to this headline">¶</a></h1>
<p>The AMP (Asynchronous Message Protocol)-communication commands and constants used by Evennia.</p>
<p>This module acts as a central place for AMP-servers and -clients to get commands to use.</p>
<codeclass="sig-prename descclassname">evennia.server.portal.amp.</code><codeclass="sig-name descname">dumps</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">data</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/portal/amp.html#dumps"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.server.portal.amp.dumps"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-prename descclassname">evennia.server.portal.amp.</code><codeclass="sig-name descname">loads</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">data</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/portal/amp.html#loads"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.server.portal.amp.loads"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.server.portal.amp.</code><codeclass="sig-name descname">Compressed</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">optional</span><spanclass="o">=</span><spanclass="default_value">False</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/portal/amp.html#Compressed"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.server.portal.amp.Compressed"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">fromBox</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">name</span></em>, <emclass="sig-param"><spanclass="n">strings</span></em>, <emclass="sig-param"><spanclass="n">objects</span></em>, <emclass="sig-param"><spanclass="n">proto</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/portal/amp.html#Compressed.fromBox"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.server.portal.amp.Compressed.fromBox"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">toBox</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">name</span></em>, <emclass="sig-param"><spanclass="n">strings</span></em>, <emclass="sig-param"><spanclass="n">objects</span></em>, <emclass="sig-param"><spanclass="n">proto</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/portal/amp.html#Compressed.toBox"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.server.portal.amp.Compressed.toBox"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">toString</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">inObject</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/portal/amp.html#Compressed.toString"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.server.portal.amp.Compressed.toString"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">fromString</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">inString</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/portal/amp.html#Compressed.fromString"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.server.portal.amp.Compressed.fromString"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.server.portal.amp.</code><codeclass="sig-name descname">MsgLauncher2Portal</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o">**</span><spanclass="n">kw</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/portal/amp.html#MsgLauncher2Portal"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.server.portal.amp.MsgLauncher2Portal"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">key</code><emclass="property"> = 'MsgLauncher2Portal'</em><aclass="headerlink"href="#evennia.server.portal.amp.MsgLauncher2Portal.key"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">response</code><emclass="property">: List<spanclass="p">[</span>Tuple<spanclass="p">[</span>bytes<spanclass="p">, </span>twisted.protocols.amp.Argument<spanclass="p">]</span><spanclass="p">]</span></em><emclass="property"> = []</em><aclass="headerlink"href="#evennia.server.portal.amp.MsgLauncher2Portal.response"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">allErrors</code><emclass="property"> = {<class 'Exception'>: b'EXCEPTION'}</em><aclass="headerlink"href="#evennia.server.portal.amp.MsgLauncher2Portal.allErrors"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">commandName</code><emclass="property"> = b'MsgLauncher2Portal'</em><aclass="headerlink"href="#evennia.server.portal.amp.MsgLauncher2Portal.commandName"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">reverseErrors</code><emclass="property"> = {b'EXCEPTION': <class 'Exception'>}</em><aclass="headerlink"href="#evennia.server.portal.amp.MsgLauncher2Portal.reverseErrors"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.server.portal.amp.</code><codeclass="sig-name descname">MsgPortal2Server</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o">**</span><spanclass="n">kw</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/portal/amp.html#MsgPortal2Server"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.server.portal.amp.MsgPortal2Server"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">key</code><emclass="property"> = b'MsgPortal2Server'</em><aclass="headerlink"href="#evennia.server.portal.amp.MsgPortal2Server.key"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">response</code><emclass="property">: List<spanclass="p">[</span>Tuple<spanclass="p">[</span>bytes<spanclass="p">, </span>twisted.protocols.amp.Argument<spanclass="p">]</span><spanclass="p">]</span></em><emclass="property"> = []</em><aclass="headerlink"href="#evennia.server.portal.amp.MsgPortal2Server.response"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">allErrors</code><emclass="property"> = {<class 'Exception'>: b'EXCEPTION'}</em><aclass="headerlink"href="#evennia.server.portal.amp.MsgPortal2Server.allErrors"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">commandName</code><emclass="property"> = b'MsgPortal2Server'</em><aclass="headerlink"href="#evennia.server.portal.amp.MsgPortal2Server.commandName"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">reverseErrors</code><emclass="property"> = {b'EXCEPTION': <class 'Exception'>}</em><aclass="headerlink"href="#evennia.server.portal.amp.MsgPortal2Server.reverseErrors"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.server.portal.amp.</code><codeclass="sig-name descname">MsgServer2Portal</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o">**</span><spanclass="n">kw</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/portal/amp.html#MsgServer2Portal"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.server.portal.amp.MsgServer2Portal"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">key</code><emclass="property"> = 'MsgServer2Portal'</em><aclass="headerlink"href="#evennia.server.portal.amp.MsgServer2Portal.key"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">response</code><emclass="property">: List<spanclass="p">[</span>Tuple<spanclass="p">[</span>bytes<spanclass="p">, </span>twisted.protocols.amp.Argument<spanclass="p">]</span><spanclass="p">]</span></em><emclass="property"> = []</em><aclass="headerlink"href="#evennia.server.portal.amp.MsgServer2Portal.response"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">allErrors</code><emclass="property"> = {<class 'Exception'>: b'EXCEPTION'}</em><aclass="headerlink"href="#evennia.server.portal.amp.MsgServer2Portal.allErrors"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">commandName</code><emclass="property"> = b'MsgServer2Portal'</em><aclass="headerlink"href="#evennia.server.portal.amp.MsgServer2Portal.commandName"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">reverseErrors</code><emclass="property"> = {b'EXCEPTION': <class 'Exception'>}</em><aclass="headerlink"href="#evennia.server.portal.amp.MsgServer2Portal.reverseErrors"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.server.portal.amp.</code><codeclass="sig-name descname">AdminPortal2Server</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o">**</span><spanclass="n">kw</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/portal/amp.html#AdminPortal2Server"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.server.portal.amp.AdminPortal2Server"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">key</code><emclass="property"> = 'AdminPortal2Server'</em><aclass="headerlink"href="#evennia.server.portal.amp.AdminPortal2Server.key"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">response</code><emclass="property">: List<spanclass="p">[</span>Tuple<spanclass="p">[</span>bytes<spanclass="p">, </span>twisted.protocols.amp.Argument<spanclass="p">]</span><spanclass="p">]</span></em><emclass="property"> = []</em><aclass="headerlink"href="#evennia.server.portal.amp.AdminPortal2Server.response"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">allErrors</code><emclass="property"> = {<class 'Exception'>: b'EXCEPTION'}</em><aclass="headerlink"href="#evennia.server.portal.amp.AdminPortal2Server.allErrors"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">commandName</code><emclass="property"> = b'AdminPortal2Server'</em><aclass="headerlink"href="#evennia.server.portal.amp.AdminPortal2Server.commandName"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">reverseErrors</code><emclass="property"> = {b'EXCEPTION': <class 'Exception'>}</em><aclass="headerlink"href="#evennia.server.portal.amp.AdminPortal2Server.reverseErrors"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.server.portal.amp.</code><codeclass="sig-name descname">AdminServer2Portal</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o">**</span><spanclass="n">kw</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/portal/amp.html#AdminServer2Portal"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.server.portal.amp.AdminServer2Portal"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">key</code><emclass="property"> = 'AdminServer2Portal'</em><aclass="headerlink"href="#evennia.server.portal.amp.AdminServer2Portal.key"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">response</code><emclass="property">: List<spanclass="p">[</span>Tuple<spanclass="p">[</span>bytes<spanclass="p">, </span>twisted.protocols.amp.Argument<spanclass="p">]</span><spanclass="p">]</span></em><emclass="property"> = []</em><aclass="headerlink"href="#evennia.server.portal.amp.AdminServer2Portal.response"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">allErrors</code><emclass="property"> = {<class 'Exception'>: b'EXCEPTION'}</em><aclass="headerlink"href="#evennia.server.portal.amp.AdminServer2Portal.allErrors"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">commandName</code><emclass="property"> = b'AdminServer2Portal'</em><aclass="headerlink"href="#evennia.server.portal.amp.AdminServer2Portal.commandName"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">reverseErrors</code><emclass="property"> = {b'EXCEPTION': <class 'Exception'>}</em><aclass="headerlink"href="#evennia.server.portal.amp.AdminServer2Portal.reverseErrors"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.server.portal.amp.</code><codeclass="sig-name descname">MsgStatus</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o">**</span><spanclass="n">kw</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/portal/amp.html#MsgStatus"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.server.portal.amp.MsgStatus"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">key</code><emclass="property"> = 'MsgStatus'</em><aclass="headerlink"href="#evennia.server.portal.amp.MsgStatus.key"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">allErrors</code><emclass="property"> = {<class 'Exception'>: b'EXCEPTION'}</em><aclass="headerlink"href="#evennia.server.portal.amp.MsgStatus.allErrors"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">commandName</code><emclass="property"> = b'MsgStatus'</em><aclass="headerlink"href="#evennia.server.portal.amp.MsgStatus.commandName"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">reverseErrors</code><emclass="property"> = {b'EXCEPTION': <class 'Exception'>}</em><aclass="headerlink"href="#evennia.server.portal.amp.MsgStatus.reverseErrors"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.server.portal.amp.</code><codeclass="sig-name descname">FunctionCall</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o">**</span><spanclass="n">kw</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/portal/amp.html#FunctionCall"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.server.portal.amp.FunctionCall"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">key</code><emclass="property"> = 'FunctionCall'</em><aclass="headerlink"href="#evennia.server.portal.amp.FunctionCall.key"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">allErrors</code><emclass="property"> = {<class 'Exception'>: b'EXCEPTION'}</em><aclass="headerlink"href="#evennia.server.portal.amp.FunctionCall.allErrors"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">commandName</code><emclass="property"> = b'FunctionCall'</em><aclass="headerlink"href="#evennia.server.portal.amp.FunctionCall.commandName"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">reverseErrors</code><emclass="property"> = {b'EXCEPTION': <class 'Exception'>}</em><aclass="headerlink"href="#evennia.server.portal.amp.FunctionCall.reverseErrors"title="Permalink to this definition">¶</a></dt>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.server.portal.amp.</code><codeclass="sig-name descname">AMPMultiConnectionProtocol</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o">*</span><spanclass="n">args</span></em>, <emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/portal/amp.html#AMPMultiConnectionProtocol"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.server.portal.amp.AMPMultiConnectionProtocol"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">__init__</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="o">*</span><spanclass="n">args</span></em>, <emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/portal/amp.html#AMPMultiConnectionProtocol.__init__"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.server.portal.amp.AMPMultiConnectionProtocol.__init__"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">dataReceived</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">data</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/portal/amp.html#AMPMultiConnectionProtocol.dataReceived"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.server.portal.amp.AMPMultiConnectionProtocol.dataReceived"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">makeConnection</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">transport</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/portal/amp.html#AMPMultiConnectionProtocol.makeConnection"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.server.portal.amp.AMPMultiConnectionProtocol.makeConnection"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">connectionMade</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/portal/amp.html#AMPMultiConnectionProtocol.connectionMade"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.server.portal.amp.AMPMultiConnectionProtocol.connectionMade"title="Permalink to this definition">¶</a></dt>
<dd><p>This is called when an AMP connection is (re-)established. AMP calls it on both sides.</p>
<codeclass="sig-name descname">connectionLost</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">reason</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/portal/amp.html#AMPMultiConnectionProtocol.connectionLost"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.server.portal.amp.AMPMultiConnectionProtocol.connectionLost"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">errback</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">err</span></em>, <emclass="sig-param"><spanclass="n">info</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/portal/amp.html#AMPMultiConnectionProtocol.errback"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.server.portal.amp.AMPMultiConnectionProtocol.errback"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">data_in</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">packed_data</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/portal/amp.html#AMPMultiConnectionProtocol.data_in"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.server.portal.amp.AMPMultiConnectionProtocol.data_in"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">broadcast</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">command</span></em>, <emclass="sig-param"><spanclass="n">sessid</span></em>, <emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/portal/amp.html#AMPMultiConnectionProtocol.broadcast"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.server.portal.amp.AMPMultiConnectionProtocol.broadcast"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">send_FunctionCall</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">modulepath</span></em>, <emclass="sig-param"><spanclass="n">functionname</span></em>, <emclass="sig-param"><spanclass="o">*</span><spanclass="n">args</span></em>, <emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/portal/amp.html#AMPMultiConnectionProtocol.send_FunctionCall"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.server.portal.amp.AMPMultiConnectionProtocol.send_FunctionCall"title="Permalink to this definition">¶</a></dt>
<dd><p>Access method called by either process. This will call an arbitrary
function on the other process (On Portal if calling from Server and
vice versa).</p>
<dl>
<dt>Inputs:</dt><dd><p>modulepath (str) - python path to module holding function to call
functionname (str) - name of function in given module
<ahref="#id1"><spanclass="problematic"id="id2">*</span></a>args, <ahref="#id3"><spanclass="problematic"id="id4">**</span></a>kwargs will be used as arguments/keyword args for the</p>
<blockquote>
<div><p>remote function call</p>
</div></blockquote>
</dd>
</dl>
<dlclass="field-list simple">
<dtclass="field-odd">Returns</dt>
<ddclass="field-odd"><p>A deferred that fires with the return value of the remote
<codeclass="sig-name descname">receive_functioncall</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/portal/amp.html#AMPMultiConnectionProtocol.receive_functioncall"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.server.portal.amp.AMPMultiConnectionProtocol.receive_functioncall"title="Permalink to this definition">¶</a></dt>