--- title: "system.util.getSessionInfo" description: "Returns a PyDataSet holding information about all of the open Designer sessions and Vision Clients." --- # system.util.getSessionInfo > Returns a PyDataSet holding information about all of the open Designer sessions and Vision Clients. This function is used in **Python Scripting**. ## Description Returns a PyDataSet holding information about all of the open Designer sessions and Vision Clients. Optional regular-expression based filters can be provided to filter the username or the username and the project returned. | Key | Description | Value | | --- | ----------- | ----- | | username | The username of the Session. | String | | project | The project name associated with the Session. | String | | address | The client's network address (IP address or hostname). | String | | isDesigner | Whether the Session is a Designer Session (**True** or **False**) | Boolean | | clientId | The unique ID of the client. | String | | creationTime | The date when the Session was created. | Date | This function will not return all sessions across a cluster - only the cluster node that is being communicated with by the client who makes the call. :::tip This function accepts [keyword arguments](platform\scripting\python-scripting\user-defined-functions.md#keyword-arguments). ::: ## Client Permission Restrictions This scripting function has no [Client Permission](../../../ignition-modules/vision/vision-project-properties/vision-project-properties.md#vision-permissions-properties) restrictions. ## Syntax `system.util.getSessionInfo([usernameFilter], [projectFilter])` ### Parameters | Type | Parameter | Description | | ------- | ------- | ------ | | String| `usernameFilter` | A regular-expression based filter string to restrict the list by username. [optional] | | String| `projectFilter` | A regular-expression based filter string to restrict the list by project [optional] | ### Returns **PyDataSet** - A dataset representing the Gateway's current sessions. ### Scope Gateway, Vision Client, Perspective Session ## Code Examples ```python title="Example #1" # This code would get the entire table of sessions and put it in an adjacent table table = event.source.parent.getComponent("Table") sessions = system.util.getSessionInfo() table.data = system.db.toDataSet(sessions) ``` ```python title="Example #2" # This code would count the number of times a user named "billy" is logged in sessions = system.util.getSessionInfo("billy") system.gui.messageBox("Billy has %d sessions" % len(sessions)) ``` ```python title="Example #3" # This code would return session info on all users starting with the letters "bi" sessions = system.util.getSessionInfo("bi.*") ``` ```python title="Example #4" # This code uses a single character wildcard in the username sessions = system.util.getSessionInfo("bi.ly") ``` ```python title="Example #5" # This code would return session info on a user named "bill.smith" sessions = system.util.getSessionInfo("bill\.smith") ```