def getCategories(self): # # Get XML... # httpCommunicator = HTTPCommunicator() url = "http://videoak.microsoftpdc.com/pdc_schedule/Schedule.xml" xmlData = httpCommunicator.get(url) # # Parse response... # rootElement = ElementTree.fromstring(xmlData, ElementTree.XMLParser(encoding="utf-8")) trackElements = rootElement.findall("Tracks/Track") categories = [] categories.append({"Name": "All sessions", "Id": ""}) for trackElement in trackElements: categoryName = trackElement.get("Name") categories.append({"Name": categoryName, "Id": categoryName}) # Add entries... for category in categories: listitem = xbmcgui.ListItem(category["Name"]) url = "%s?action=sessions&category=%s" % (sys.argv[0], urllib.quote_plus(category["Id"])) xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]), url=url, listitem=listitem, isFolder=True) # Disable sorting... xbmcplugin.addSortMethod(handle=int(sys.argv[1]), sortMethod=xbmcplugin.SORT_METHOD_NONE) # End of directory... xbmcplugin.endOfDirectory(handle=int(sys.argv[1]), succeeded=True)