{
saveData(orgid, m_AITData, sectionLength);//4096);
for(HbbTVApplicationInfoListConstIterator infoiter = m_HbbTVApplications.begin() ; infoiter != m_HbbTVApplications.end() ; ++infoiter)
+ {
+ char fileName[255] = {0};
+ sprintf(fileName, "/tmp/ait.%d", (*infoiter)->m_OrgId);
+ if (access(fileName, 0) < 0)
+ saveData((*infoiter)->m_OrgId, m_AITData, sectionLength);
eDebug("Found : control[%d], name[%s], url[%s]",
(*infoiter)->m_ControlCode, (*infoiter)->m_ApplicationName.c_str(), (*infoiter)->m_HbbTVUrl.c_str());
+ }
serviceEvent(eventHBBTVInfo);
}
else eDebug("No found anything.");
import os, xml.dom.minidom
+from enigma import iServiceInformation
DUMPBIN = "/usr/lib/enigma2/python/Plugins/Extensions/HbbTV/dumpait"
class eAITSectionReader:
def __init__(self, demux, pmtid, sid):
+ self.mVuplusBox = None
+ self.mInfo = None
self.mAppList = []
self.mDocument = None
self.mCommand = "%s --demux=%s --pmtid=%x --serviceid=%x"%(DUMPBIN, demux, pmtid, sid)
def __application(self, application):
item = {}
- item["name"] = str(self.__item(application, "name"))
- item["url"] = str(self.__item(application, "url"))
- item["control"] = int(self.__item(application, "control"))
- item["orgid"] = int(self.__item(application, "orgid"))
- item["appid"] = int(self.__item(application, "appid"))
- item["profile"] = int(self.__item(application, "profile"))
+
+ if self.mVuplusBox is not None:
+ item["name"] = str(application[1])
+ item["url"] = str(application[2])
+ item["control"] = int(application[0])
+ item["orgid"] = int(application[3])
+ item["appid"] = int(application[4])
+ item["profile"] = int(application[5])
+ else:
+ item["name"] = str(self.__item(application, "name"))
+ item["url"] = str(self.__item(application, "url"))
+ item["control"] = int(self.__item(application, "control"))
+ item["orgid"] = int(self.__item(application, "orgid"))
+ item["appid"] = int(self.__item(application, "appid"))
+ item["profile"] = int(self.__item(application, "profile"))
#print item
return item
def doParseApplications(self):
l = []
- for application in self.mDocument.getElementsByTagName("application"):
- item = self.__application(application)
- l.append(item)
+
+ if self.mVuplusBox is not None:
+ for application in self.mInfo.getInfoObject(iServiceInformation.sHBBTVUrl):
+ item = self.__application(application)
+ l.append(item)
+ else:
+ for application in self.mDocument.getElementsByTagName("application"):
+ item = self.__application(application)
+ l.append(item)
self.mAppList = l
def getApplicationList(self):
return self.mAppList
- def doOpen(self):
+ def doOpen(self, info, is_vuplusbox):
+ if is_vuplusbox is not None:
+ self.mVuplusBox = is_vuplusbox
+ self.mInfo = info
+ return True
+
document = ""
try: document = os.popen(self.mCommand).read()
except Exception, ErrMsg: