This page shows how to how to use EIT Cache Service.
var originalNetworkId = 167; var transportStreamId = 1; var serviceId = 272; var languageText = "English"; var languageCode = "eng"; var eitCache = null; var events = null; var eitService = null; function initService() { try { eitService = toi.statics.ToiDvbEitCacheServiceItem.create(originalNetworkId, transportStreamId, serviceId); eitCache.addService(eitService); } catch(e) { printLog("initEitCache problem: " + e); } } function clearServices() { printLog("clearServices"); try { eitCache.clearServices(); eitService = null; } catch(e) { printLog("clearServices problem: " + e); } } function onCacheUpdated(event) { printLog("ON_CACHE_UPDATED: " + event.updates.length +" events updated."); } function getEvents(time, duration) { printLog("GetEvents"); var txt = ""; if (!eitService) { initService(); } try { if (time == undefined || duration == undefined) { time = 1000000000; duration = 2000000000; } events = eitCache.getEvents(eitService, time, duration); } catch(e) { printLog("getEvents problem 1: " + e); } try { if (events.more) { var t = eitCache.getEvents(eitService, time, duration); events.infoSequence.concat(t.infoSequence); events.more = t.more; } txt = "Number of events: " + events.infoSequence.length; txt = txt + "
Event more: " + events.more; var i = 0; for (i = 0; i < events.infoSequence.length; i++) { txt = txt + "Event nr " + i + "
EventID= " + events.infoSequence[i].eventId + "
Name= " + events.infoSequence[i].name + "
Time= " + events.infoSequence[i].time + "
FreeCAmode= " + events.infoSequence[i].freeCaMode + "
Duration= " + events.infoSequence[i].duration + "
ContentNibbles= " + events.infoSequence[i].contentNibbles + "
ParentalRating= " + events.infoSequence[i].parentalRating; } } catch(e) { printLog("getEvents problem 2: " + e); } } function getPresentEvent() { printLog("getPresentEvent()"); if (!eitService) { initService(); } event = eitCache.getPresentEvent(eitService); printLog("event " + " : eventID=" + event.eventId + " : name=" + event.name + " : time=" + event.time + " : duration=" + event.duration + " : contentNibbles=" + event.contentNibbles + " : parentalRating=" + event.parentalRating); } function getFollowingEvent() { printLog("getFollowingEvent()"); if (!eitService) { initService(); } event = eitCache.getFollowingEvent(eitService); printLog("event " + " : eventID=" + event.eventId + " : name=" + event.name + " : time=" + event.time + " : duration=" + event.duration + " : freeCAMode=" + event.freeCAMode + " : contentNibbles=" + event.contentNibbles + " : parentalRating=" + event.parentalRating); } function getPrivateData() { printLog("getPrivateData()"); if (!eitService) { initService(); } for (i = 0; i < events.infoSequence.length; i++) { privData = eitCache.getPrivateData(eitService, events.infoSequence[i].eventId); printLog("Private Data:"); printLog(" data length=" + privData.length + " content="); var str = ""; for (i = 0; i < privData.length; i++) { str += privData[i] + " "; } } printLog(str); } function getExtendedEventInfo() { printLog("getExtendedEventInfo()..."); if (events == null) { getEvents(); } var i; for (i = 0; i < events.infoSequence.length; i++) { var extEvents = eitCache.getExtendedEventInfo(eitService, events.infoSequence[i].eventId); printLog(" ExtEvent " + ": eventId=" + extEvents.eventId); printLog(" ExtEvent " + ": short_info=" + extEvents.shortInfo); printLog(" ExtEvent " + ": ext_info=" + extEvents.extendedInfo); } } function getEventItemInfo() { printLog("getEventItemInfo()..."); if (events == null) { getEvents(); } var i; for (i = 0; i < events.infoSequence.length; i++) { printLog("event " + i + ": eventID=" + events.infoSequence[i].eventId); var eventItems = eitCache.getEventItemInfo(eitService, events.infoSequence[i].eventId); printLog(eventItems.length + " event items got"); var j; for (j = 0; j < eventItems.length; j++) { printLog(" EventItem " + j + " description=" + eventItems[j].description + " value=" + eventItems[j].value); } } } function getVideoComponentList() { printLog("getVideoComponentList()... "); if (events == null) { getEvents(); } var i; for (i = 0; i < events.infoSequence.length; i++) { printLog("event " + i + ": eventID=" + events.infoSequence[i].eventId); var components = eitCache.getVideoComponentList(eitService, events.infoSequence[i].eventId); printLog(components.length + " video components got"); var j; for (j = 0; j < components.length; j++) { printLog(" Video Component " + j + ":" + " stream content=" + components[j].streamContent + " type=" + components[j].componentType + " tag=" + components[j].tag + " description=" + components[j].description); } } } function getAudioComponentList() { printLog("getAudioComponentList()... Language: " + languageText); var langcode = languageCode; if (events == null) { getEvents(); } var i; for (i = 0; i < events.infoSequence.length; i++) { printLog("event " + i + ": eventID=" + events.infoSequence[i].eventId); var components = eitCache.getAudioComponentList(eitService, events.infoSequence[i].eventId, langcode); printLog(components.length + " audio components got"); var j; for (j = 0; j < components.length; j++) { printLog(" Audio Component " + j + ":" + " stream content=" + components[j].streamContent + " type=" + components[j].componentType + " tag=" + components[j].tag + " languageCode=" + components[j].languageCode + " description=" + components[j].description); } } } function getSubtitleComponentList() { printLog("getSubtitleComponentList()... Language: " + languageText); var langcode = languageCode; if (events == null) { getEvents(); } var i; for (i = 0; i < events.infoSequence.length; i++) { printLog("event " + i + ": eventID=" + events.infoSequence[i].eventId); var components = eitCache.getSubtitleComponentList(eitService, events.infoSequence[i].eventId, langcode); printLog(components.length + " subtitle components got"); var j; for (j = 0; j < components.length; j++) { printLog(" Subtitle Component " + j + ":" + " stream content=" + components[j].streamContent + " type=" + components[j].componentType + " tag=" + components[j].tag + " languageCode=" + components[j].languageCode + " description=" + components[j].description); } } }