.. _epp-hello-command:

Hello command
=============

When a new TCP connection to the server is initiated, implicit ``hello`` command is
processed by the server and a ``greeting`` message is returned, telling the client
which protocol version and options are supported and what services and extensions are available.

During an authenticated session, ``hello`` requests could be issued to keep the connection alive.

Example of keep-alive hello request
-----------------------------------

.. code-block:: xml

    <?xml version="1.0" encoding="UTF-8" standalone="no"?>
    <epp xmlns="urn:ietf:params:xml:ns:epp-1.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="urn:ietf:params:xml:ns:epp-1.0
         epp-1.0.xsd">
      <hello/>
    </epp>

.. _epp-greeting:

Server response
---------------

The server responds with ``greeting``, telling about its capabilities - what languages are available,
which object services and protocol extensions are offered.
If the client is already authenticated, the greeting will show only services, extensions and other protocol options, chosen for the session at the login time
(``objURI``, ``svcExtension``, ``lang`` and ``version`` elements are affected).

.. code-block:: xml

    <?xml version="1.0" encoding="UTF-8" standalone="no"?>
    <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
      <greeting>
        <svID>NIC.LV Epp service</svID>
        <svDate>2011-05-10T10:27:12+03:00</svDate>
        <svcMenu>
          <version>1.0</version>
          <lang>en</lang>
          <objURI>urn:ietf:params:xml:ns:epp-1.0</objURI>
          <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
          <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
          <svcExtension>
            <extURI>http://www.nic.lv/epp/schema/lvdomain-ext-1.0</extURI>
            <extURI>http://www.nic.lv/epp/schema/lvcontact-ext-1.0</extURI>
            <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          </svcExtension>
        </svcMenu>
        <dcp>
          <access>all</access>
          <statement>
            <purpose>
              <admin/>
              <prov/>
            </purpose>
            <recipient>
              <ours/>
              <public/>
            </recipient>
            <retention>
              <stated/>
            </retention>
          </statement>
        </dcp>
      </greeting>
    </epp>