diff --git a/service.mqtt/service.py b/service.mqtt/service.py
index 068858aeaff3f67deb15052e4c0f34d6ab334dbf..c941057e209e2e0c3d344b44e9e5eef5339b4350 100644
--- a/service.mqtt/service.py
+++ b/service.mqtt/service.py
@@ -6,11 +6,35 @@ import json
 import threading
 import time
 import socket
+import glob
 from lib import client as mqtt
 
 __addon__      = xbmcaddon.Addon()
 __version__    = __addon__.getAddonInfo('version')
 
+def getmedia(dir):
+
+             all=glob.glob(dir+'*.mp4')
+             all.extend(glob.glob(dir+'*.mov'))
+             all.extend(glob.glob(dir+'*.m4v'))
+             all.extend(glob.glob(dir+'*.wav'))
+             all.extend(glob.glob(dir+'*.mp3'))
+             all.extend(glob.glob(dir+'*.mpg'))
+             all.extend(glob.glob(dir+'*.mpeg'))
+             all.extend(glob.glob(dir+'*.MP4'))
+             all.extend(glob.glob(dir+'*.MOV'))
+             all.extend(glob.glob(dir+'*.M4V'))
+             all.extend(glob.glob(dir+'*.WAV'))
+             all.extend(glob.glob(dir+'*.MP3'))
+             all.extend(glob.glob(dir+'*.MPG'))
+             all.extend(glob.glob(dir+'*.MPEG'))
+
+             all.sort()
+#             xbmc.log(str(all))
+             return all
+
+
+
 def getSetting(setting):
     return __addon__.getSetting(setting).strip()
 
@@ -74,6 +98,18 @@ def publishstat(suffix,val,more):
     mqc.publish(fulltopic,jsonstr,qos=0,retain=True)
 
 
+def publishmedialist(suffix,val,more):
+    global topic,mqc
+    robj={}
+    robj["val"]=val
+    if more is not None:
+        robj.update(more)
+    jsonstr=json.dumps(robj)
+    fulltopic="media/"+topic+suffix
+    mqttlogging("MQTT: Publishing @"+fulltopic+": "+jsonstr)
+    mqc.publish(fulltopic,jsonstr,qos=0,retain=True)
+
+
 #
 # Set and publishes the playback state. Publishes more info if
 # the state is "playing"
@@ -249,6 +285,16 @@ def processvolume(data):
 def processgetstatus():
     publishstatus()
 
+def processgetmedia():
+    mqttlogging("have getmedia")
+    result=getmedia("/home/osmc/video/")
+    res2=""
+    for entry in result:
+       mqttlogging(entry)
+       res2+=entry+","
+    publishmedialist("files",res2,None)
+
+
 
 def processcommand(topic,data):
     if topic=="notify":
@@ -263,6 +309,8 @@ def processcommand(topic,data):
         processgetstatus()
     elif topic=="volume":
         processvolume(data)
+    elif topic=="getmedia":
+        processgetmedia()
     else:
         mqttlogging("MQTT: Unknown command "+topic)