Module lib.wifi.hostname
Manage the host name
Expand source code
# Distributed under Pycameresp License
# Copyright (c) 2023 Remi BERTHOLET
# pylint:disable=consider-using-f-string
""" Manage the host name """
import tools.strings
import tools.jsonconfig
class HostnameConfig(tools.jsonconfig.JsonConfig):
""" Hostname configuration class """
def __init__(self):
""" Constructor """
tools.jsonconfig.JsonConfig.__init__(self)
self.hostname = b"esp%05d"%Hostname.get_number()
class Hostname:
""" Manage the host name """
number = [None]
hostname = [None]
@staticmethod
def get_number():
""" Get the unic number of device """
if Hostname.number[0] is None:
from network import WLAN, AP_IF
wlan = WLAN(AP_IF)
ident = wlan.config("mac")
mac = ""
for i in ident:
mac += "%02X"%i
Hostname.number[0] = tools.strings.compute_hash(mac)
del wlan
return Hostname.number[0]
@staticmethod
def get_hostname():
""" Get the hostname of device """
result = Hostname.get_number()
if Hostname.hostname[0] is not None:
result = Hostname.hostname[0]
return result
@staticmethod
def set_hostname(new_hostname):
""" Set the hostname of device """
Hostname.hostname[0] = new_hostname
Classes
class Hostname-
Manage the host name
Expand source code
class Hostname: """ Manage the host name """ number = [None] hostname = [None] @staticmethod def get_number(): """ Get the unic number of device """ if Hostname.number[0] is None: from network import WLAN, AP_IF wlan = WLAN(AP_IF) ident = wlan.config("mac") mac = "" for i in ident: mac += "%02X"%i Hostname.number[0] = tools.strings.compute_hash(mac) del wlan return Hostname.number[0] @staticmethod def get_hostname(): """ Get the hostname of device """ result = Hostname.get_number() if Hostname.hostname[0] is not None: result = Hostname.hostname[0] return result @staticmethod def set_hostname(new_hostname): """ Set the hostname of device """ Hostname.hostname[0] = new_hostnameClass variables
var hostnamevar number
Static methods
def get_hostname()-
Get the hostname of device
Expand source code
@staticmethod def get_hostname(): """ Get the hostname of device """ result = Hostname.get_number() if Hostname.hostname[0] is not None: result = Hostname.hostname[0] return result def get_number()-
Get the unic number of device
Expand source code
@staticmethod def get_number(): """ Get the unic number of device """ if Hostname.number[0] is None: from network import WLAN, AP_IF wlan = WLAN(AP_IF) ident = wlan.config("mac") mac = "" for i in ident: mac += "%02X"%i Hostname.number[0] = tools.strings.compute_hash(mac) del wlan return Hostname.number[0] def set_hostname(new_hostname)-
Set the hostname of device
Expand source code
@staticmethod def set_hostname(new_hostname): """ Set the hostname of device """ Hostname.hostname[0] = new_hostname
class HostnameConfig-
Hostname configuration class
Constructor
Expand source code
class HostnameConfig(tools.jsonconfig.JsonConfig): """ Hostname configuration class """ def __init__(self): """ Constructor """ tools.jsonconfig.JsonConfig.__init__(self) self.hostname = b"esp%05d"%Hostname.get_number()Ancestors
- tools.jsonconfig.JsonConfig