<spanid="evennia-server-amp-client"></span><h1>evennia.server.amp_client<aclass="headerlink"href="#module-evennia.server.amp_client"title="Permalink to this headline">¶</a></h1>
<p>The Evennia Server service acts as an AMP-client when talking to the
Portal. This module sets up the Client-side communication.</p>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.server.amp_client.</code><codeclass="sig-name descname">AMPClientFactory</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">server</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/amp_client.html#AMPClientFactory"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.server.amp_client.AMPClientFactory"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">initialDelay</code><emclass="property"> = 1</em><aclass="headerlink"href="#evennia.server.amp_client.AMPClientFactory.initialDelay"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">factor</code><emclass="property"> = 1.5</em><aclass="headerlink"href="#evennia.server.amp_client.AMPClientFactory.factor"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">noisy</code><emclass="property"> = False</em><aclass="headerlink"href="#evennia.server.amp_client.AMPClientFactory.noisy"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">__init__</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">server</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/amp_client.html#AMPClientFactory.__init__"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.server.amp_client.AMPClientFactory.__init__"title="Permalink to this definition">¶</a></dt>
<dd><p>Initializes the client factory.</p>
<dlclass="field-list simple">
<dtclass="field-odd">Parameters</dt>
<ddclass="field-odd"><p><strong>server</strong> (<em>server</em>) – server instance.</p>
<codeclass="sig-name descname">maxDelay</code><emclass="property"> = 1</em><aclass="headerlink"href="#evennia.server.amp_client.AMPClientFactory.maxDelay"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">startedConnecting</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">connector</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/amp_client.html#AMPClientFactory.startedConnecting"><spanclass="viewcode-link">[source]</span></a><aclass="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>
<codeclass="sig-name descname">buildProtocol</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">addr</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/amp_client.html#AMPClientFactory.buildProtocol"><spanclass="viewcode-link">[source]</span></a><aclass="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>
<dlclass="field-list simple">
<dtclass="field-odd">Parameters</dt>
<ddclass="field-odd"><p><strong>addr</strong> (<em>str</em>) – Connection address. Not used.</p>
<codeclass="sig-name descname">clientConnectionLost</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">connector</span></em>, <emclass="sig-param"><spanclass="n">reason</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/amp_client.html#AMPClientFactory.clientConnectionLost"><spanclass="viewcode-link">[source]</span></a><aclass="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>
<codeclass="sig-name descname">clientConnectionFailed</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">connector</span></em>, <emclass="sig-param"><spanclass="n">reason</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/amp_client.html#AMPClientFactory.clientConnectionFailed"><spanclass="viewcode-link">[source]</span></a><aclass="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>
<emclass="property">class </em><codeclass="sig-prename descclassname">evennia.server.amp_client.</code><codeclass="sig-name descname">AMPServerClientProtocol</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/amp_client.html#AMPServerClientProtocol"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.server.amp_client.AMPServerClientProtocol"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/amp_client.html#AMPServerClientProtocol.connectionMade"><spanclass="viewcode-link">[source]</span></a><aclass="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>
<codeclass="sig-name descname">data_to_portal</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/amp_client.html#AMPServerClientProtocol.data_to_portal"><spanclass="viewcode-link">[source]</span></a><aclass="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>
<dlclass="field-list simple">
<dtclass="field-odd">Parameters</dt>
<ddclass="field-odd"><ulclass="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>
<dtclass="field-even">Returns</dt>
<ddclass="field-even"><p><em>deferred (deferred or None)</em>– A deferred with an errback.</p>
</dd>
</dl>
<pclass="rubric">Notes</p>
<p>Data will be sent across the wire pickled as a tuple
<codeclass="sig-name descname">send_MsgServer2Portal</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">session</span></em>, <emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/amp_client.html#AMPServerClientProtocol.send_MsgServer2Portal"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.server.amp_client.AMPServerClientProtocol.send_MsgServer2Portal"title="Permalink to this definition">¶</a></dt>
<dd><dlclass="simple">
<dt>Access method - executed on the Server for sending data</dt><dd><p>to Portal.</p>
<codeclass="sig-name descname">send_AdminServer2Portal</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">session</span></em>, <emclass="sig-param"><spanclass="n">operation</span><spanclass="o">=</span><spanclass="default_value">''</span></em>, <emclass="sig-param"><spanclass="o">**</span><spanclass="n">kwargs</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/amp_client.html#AMPServerClientProtocol.send_AdminServer2Portal"><spanclass="viewcode-link">[source]</span></a><aclass="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
<codeclass="sig-name descname">server_receive_status</code><spanclass="sig-paren">(</span><emclass="sig-param"><spanclass="n">question</span></em><spanclass="sig-paren">)</span><aclass="reference internal"href="../_modules/evennia/server/amp_client.html#AMPServerClientProtocol.server_receive_status"><spanclass="viewcode-link">[source]</span></a><aclass="headerlink"href="#evennia.server.amp_client.AMPServerClientProtocol.server_receive_status"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">server_receive_msgportal2server</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="headerlink"href="#evennia.server.amp_client.AMPServerClientProtocol.server_receive_msgportal2server"title="Permalink to this definition">¶</a></dt>
<codeclass="sig-name descname">server_receive_adminportal2server</code><spanclass="sig-paren">(</span><spanclass="sig-paren">)</span><aclass="headerlink"href="#evennia.server.amp_client.AMPServerClientProtocol.server_receive_adminportal2server"title="Permalink to this definition">¶</a></dt>