# Module `lib.server`

Expand source code

    # Distributed under Pycameresp License
    # Copyright (c) 2023 Remi BERTHOLET

## Sub-modules

`lib.server.dnsclient`

  Dns client class

`lib.server.ftpserver`

  Ftp server main class. This class contains few lines of code, this is to save memory. The core of the server is in the other class FtpServerCore, …

`lib.server.ftpservercore`

  Ftp server implementation core class

`lib.server.httpclient`

  Client http request

`lib.server.httprequest`

  These classes manage http responses and requests. The set of request and response are in bytes format. I no longer use tools.strings., because they …

`lib.server.httpserver`

  This class is used to manage an http server. This class contains few lines of code, this is to save memory. The core of the server is in the other …

`lib.server.httpservercore`

  Http server core, it instanciated only if a connection is done to the asynchronous class HttpServer then if the server not used, it not consum memory

`lib.server.mqttbroker`

  Mqtt broker management class

`lib.server.mqttbrokercore`

  Mqtt server implementation core class

`lib.server.mqttclient`

  These classes are used to manage mqtt client

`lib.server.mqttmessages`

  Mqtt messages classes

`lib.server.mqttprotocol`

  Support for mqtt client protocol using asynchronous sockets. Support MQTT 3.11

`lib.server.notifier`

  Class used to manage a list of notifier, and postpone notification if wifi station not yet connected

`lib.server.ntp`

  Manage server class

`lib.server.openmeteo`

  These classes are used to get meteo informations. See https://open-meteo.com

`lib.server.periodic`

  Periodic task, wifi management, get wan_ip, synchronize time

`lib.server.ping`

  Ping network class

`lib.server.presence`

  Presence detection (determine if an occupant is present in the house)

`lib.server.presencecore`

  Presence detection (determine if an occupant is present in the house)

`lib.server.pushover`

  These classes are used to send notifications to smartphones, via the pushover application. See https://www.pushover.net

`lib.server.server`

  Manage server class

`lib.server.sessions`

  Class used to store http connection sessions, it is useful if you define an user and password, on your site

`lib.server.stream`

  These classes are used to manage asynchronous stream.

`lib.server.telnet`

  Telnet class

`lib.server.telnetcore`

  Telnet class

`lib.server.timesetting`

  Function which sets the internal clock of the card based on an ntp server

`lib.server.urlparser`

  Parse url and get all content

`lib.server.user`

  Class used to manage a username and a password

`lib.server.wanip`

  Get the wan ip address

`lib.server.webhook`

  These classes are used to interact with domoticz or other application