diff --git a/resources/lib/DownloadUtils.py b/resources/lib/DownloadUtils.py
index 177db42d..74995c38 100644
--- a/resources/lib/DownloadUtils.py
+++ b/resources/lib/DownloadUtils.py
@@ -106,6 +106,25 @@ class DownloadUtils():
             self.WINDOW.setProperty("sessionId%s" % self.username, sessionId)
         except:
             self.logMsg("Failed to retrieve sessionId.", 1)
+        else:
+            # Post any permanent additional users
+            additionalUsers = utils.settings('additionalUsers').split(',')
+            self.logMsg("List of permanent users that should be added to the session: %s" % str(additionalUsers), 1)
+            # Get the user list from server to get the userId
+            url = "{server}/mediabrowser/Users?format=json"
+            result = self.downloadUrl(url)
+
+            if result:
+                for user in result:
+                    username = user['Name'].lower()
+                    userId = user['Id']
+                    for additional in additionalUsers:
+                        addUser = additional.decode('utf-8').lower()
+                        if username in addUser:
+                            url = "{server}/mediabrowser/Sessions/%s/Users/%s" % (sessionId, userId)
+                            postdata = {}
+                            self.downloadUrl(url, postBody=postdata, type="POST")
+                            #xbmcgui.Dialog().notification("Success!", "%s added to viewing session" % username, time=1000)
 
     def startSession(self):
 
diff --git a/resources/lib/Entrypoint.py b/resources/lib/Entrypoint.py
index 52937421..6e10a414 100644
--- a/resources/lib/Entrypoint.py
+++ b/resources/lib/Entrypoint.py
@@ -98,8 +98,9 @@ def addUser():
             elif option == 0:
                 # User selected Add user
                 for adduser in additionalUsername:
-                    xbmc.log(str(adduser))
-                    users.remove(adduser)
+                    try: # Remove from selected already added users. It is possible they are hidden.
+                        users.remove(adduser)
+                    except: pass
 
             elif option < 0:
                 # User cancelled
diff --git a/resources/lib/UserClient.py b/resources/lib/UserClient.py
index 1764591e..b0a507f4 100644
--- a/resources/lib/UserClient.py
+++ b/resources/lib/UserClient.py
@@ -64,6 +64,13 @@ class UserClient(threading.Thread):
 
         return username
 
+    def getAdditionalUsers(self):
+
+        additionalUsers = utils.settings('additionalUsers')
+        
+        if additionalUsers:
+            self.AdditionalUser = additionalUsers.split(',')
+
     def getLogLevel(self):
 
         try:
@@ -251,6 +258,7 @@ class UserClient(threading.Thread):
         self.hasAccess()
         # Start DownloadUtils session
         doUtils.startSession()
+        self.getAdditionalUsers()
 
         # Set user preferences in settings
         self.setUserPref()
diff --git a/resources/settings.xml b/resources/settings.xml
index ad857d3c..6317726c 100644
--- a/resources/settings.xml
+++ b/resources/settings.xml
@@ -39,6 +39,7 @@
 	    <setting id="coverArtratio" type="bool" label="Force CoverArt Ratio" visible="eq(-1,false)" default="false" enable="true" />
         <setting id="ignoreSpecialsNextEpisodes" type="bool" label="Ignore specials in next episodes" visible="true" enable="true" default="false" />
 		<setting id="showSpecialInfoDialog" type="bool" label="Show special Emby info dialog on play" default="false" visible="false" />
+		<setting id="additionalUsers" type="text" label="Permanent users to add to the session" default="" visible="true" enable="true" />
 	</category>
 	<category label="30022">
 		<setting id="logLevel" type="enum" label="30004" values="None|Info|Debug" default="0" />
diff --git a/service.py b/service.py
index 042d0505..0506f741 100644
--- a/service.py
+++ b/service.py
@@ -153,7 +153,13 @@ class Service():
                             if self.welcome_msg:
                                 # Reset authentication warnings
                                 self.welcome_msg = False
-                                xbmcgui.Dialog().notification("Emby server", "Welcome %s!" % user.currUser, icon="special://home/addons/plugin.video.emby/icon.png", time=2000, sound=False)
+                                # Get additional users
+                                additionalUsers = user.AdditionalUser
+                                if additionalUsers:
+                                    add = ", %s" % ", ".join(additionalUsers)
+                                else:
+                                    add = ""
+                                xbmcgui.Dialog().notification("Emby server", "Welcome %s%s!" % (user.currUser, add), icon="special://home/addons/plugin.video.emby/icon.png", time=2000, sound=False)
 
                         # Start the Websocket Client
                         if (self.newWebSocketThread is None):