From 4fea858fbca9757e060f7d07723c5ba60a3c8bdc Mon Sep 17 00:00:00 2001 From: Daan Date: Sat, 4 Jan 2025 17:16:30 +0100 Subject: [PATCH] Fix: https://github.com/HuFlungDu/pylibmeshctrl/issues/15 --- src/meshctrl/device.py | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/meshctrl/device.py b/src/meshctrl/device.py index 4031082..e77c095 100644 --- a/src/meshctrl/device.py +++ b/src/meshctrl/device.py @@ -12,6 +12,7 @@ class Device(object): name (str|None): Device name as it is shown on the meshcentral server description (str|None): Device description as it is shown on the meshcentral server. Also accepted as desc. tags (list[str]|None): tags associated with device. + users (list[str]|None): latest known usernames which have logged in. created_at (datetime.Datetime|int|None): Time at which device mas created. Also accepted as agct. computer_name (str|None): Device name as reported from the agent. This may be different from name. Also accepted as rname. icon (~meshctrl.constants.Icon): Icon displayed on the website @@ -38,6 +39,7 @@ class Device(object): name (str|None): Device name as it is shown on the meshcentral server description (str|None): Device description as it is shown on the meshcentral server. tags (list[str]): tags associated with device. + users (list[str]): latest known usernames which have logged in. computer_name (str|None): Device name as reported from the agent. This may be different from name. Also accepted as rname. icon (~meshctrl.constants.Icon): Icon displayed on the website mesh (~meshctrl.mesh.Mesh|None): Mesh object under which this device exists. Is None for individual device access. @@ -56,7 +58,7 @@ class Device(object): ''' def __init__(self, nodeid, session, agent=None, name=None, desc=None, description=None, - tags=None, + tags=None, users=None, agct=None, created_at=None, rname=None, computer_name=None, icon=constants.Icon.desktop, mesh=None, mtype=None, meshtype=None, groupname=None, meshname=None, @@ -90,6 +92,7 @@ class Device(object): self.description = description if description is not None else desc self.os_description = os_description if os_description is not None else osdesc self.tags = tags if tags is not None else [] + self.users = users if users is not None else [] self.details = details if details is not None else {} created_at = created_at if created_at is not None else agct @@ -340,10 +343,10 @@ class Device(object): def __str__(self): return f"" def __repr__(self): return f"Device(nodeid={repr(self.nodeid)}, session={repr(self._session)}, name={repr(self.name)}, description={repr(self.description)}, computer_name={repr(self.computer_name)}, icon={repr(self.icon)}, "\ f"mesh={repr(self.mesh)}, meshtype={repr(self.meshtype)}, meshname={repr(self.meshname)}, domain={repr(self.domain)}, host={repr(self.host)}, ip={repr(self.ip)}, "\ - f"tags={repr(self.tags)}, details={repr(self.details)} created_at={repr(self.created_at)} lastaddr={repr(self.lastaddr)} lastconnect={repr(self.lastconnect)} "\ - f"connected={repr(self.connected)}, powered_on={repr(self.powered_on)}, os_description={repr(self.os_description)}, links={repr(self.links)}, **{repr(self._extra_props)})" \ No newline at end of file + f"tags={repr(self.tags)}, users={repr(self.users)}, details={repr(self.details)} created_at={repr(self.created_at)} lastaddr={repr(self.lastaddr)} lastconnect={repr(self.lastconnect)} "\ + f"connected={repr(self.connected)}, powered_on={repr(self.powered_on)}, os_description={repr(self.os_description)}, links={repr(self.links)}, **{repr(self._extra_props)})"