pünktchen Posted May 15, 2018 Share Posted May 15, 2018 If i call api/epg.html? with only a start and end date but without the channel parameter, it returns programs with a Channel Epg Id that don't even exist in my channel lineup that i get from api/getchannelsxml.html? How can this happen? Quote Link to comment
pünktchen Posted June 11, 2018 Author Share Posted June 11, 2018 Sorry for the really long delay. I couldn't reproduce it myself, but the user @D3ltorohd has exactly this problem. If he calls http://127.0.0.1:8089/api/epg.html?lvl=2&channel=#####&start=43261.14236111&end=43264.14236111 with the one and only "FOX" channel epgid from his channels.xml intead of #####, he gets following output: https://1drv.ms/t/s!AsZVfH8wmdhLkEXEhvAEJ--5Z0gq Just search for <title>Hawaii Five-0</title> and you will see all programs for this show are doubled. One time with channel="563521184202764" but also with channel="563521184202768" How can this happen? Quote Link to comment
Griga Posted June 12, 2018 Share Posted June 12, 2018 The EPG data has been received with two different service IDs. The EPG Channel IDs converted to hex and split into parts -> TunerType | NetworkID | TransportstreamID | ServiceID: 563521184202764 = 2|0085|0002|000C 563521184202768 = 2|0085|0002|0010 and converted back do decimal yields Satellite (Astra 19°E), Network ID = 133 (Beta Digital/SKY), Transportstream ID = 2 (11759 H), Service ID = 12 (NatGeo Wild) and Service ID = 16 (Fox Serie). Note: The Network ID, Transportstream ID and Service ID values in the /api/epg.html output are part of the broadcasted EPG data. They serve as a kind of "path" to the channel to which the data belongs. The DMS uses it internally for assigning EPG data to channels. If the values that were received with the EPG data match the corresponding values in the channel list (retrieved by a channel search), the DMS knows that the data belongs to this channel. Quote Link to comment
pünktchen Posted June 12, 2018 Author Share Posted June 12, 2018 Okay, that's a nice explanation for the theory, but the main questions are still there: Why do we get two identical program entries with two different channel epgid's? Why has the channel epgid 563521184202764 (NatGeo Wild) the program description of the channel epgid 563521184202768 (Fox)? Why do we get two different channel epgid's at all? If i query the api for guide data from channel AB, i expect it to return only entries for this channel and not also for channel XY! Line 658: <programme start="20180611145500" stop="20180611154000" channel="563521184202768"> <eventid>1288402656</eventid> <content>21</content> <charset>255</charset> <titles> <title>Hawaii Five-0</title> </titles> <events> <event>S2E10 Falsche Fährte</event> </events> <descriptions> <description>Jenna Kaye taucht bei Steve auf und bittet ihn um Hilfe: Sie will ihren Verlobten aus Nordkorea holen, und Steve soll bei dem riskanten Unternehmen behilflich sein. Während das restliche Team den Mord an einer Journalistin untersucht, finden Chin und Kono heraus, dass Jenna mit der ermordeten Journalistin Kontakt hatte - doch Steve ist bereits in Nordkorea in der Gewalt von Wo Fat, für den Jenna arbeitet. Das Team macht sich unter Leitung von Joe White auf, um ihn zu befreien... Cast: Alex O'Loughlin (Steve McGarrett) (Steve McGarrett), Scott Caan (Danny "Danno" Williams) (Danny "Danno" Williams), Daniel Dae Kim (Chin Ho Kelly) (Chin Ho Kelly), Grace Park (Kono Kalakaua) (Kono Kalakaua), Masi Oka (Dr. Max Bergman) (Dr. Max Bergman), Lauren German (Lori Weston) (Lori Weston), Jimmy Buffett (Frank Bama) (Frank Bama), Mark Dacascos (Wo Fat) (Wo Fat), Larisa Oleynik (Jenna Kaye) (Jenna Kaye), William Sadler (Jack McGarrett) (Jack McGarrett). Director: Kate Woods. soap/melodrama/folkloric Length: 45m Ratings: 0/FSK 0/FSK USA 2011 </description> </descriptions> </programme> Line 31097: <programme start="20180611145500" stop="20180611154000" channel="563521184727164"> <eventid>1288402656</eventid> <content>21</content> <charset>255</charset> <titles> <title>Hawaii Five-0</title> </titles> <events> <event>S2E10 Falsche Fährte</event> </events> <descriptions> <description>Jenna Kaye taucht bei Steve auf und bittet ihn um Hilfe: Sie will ihren Verlobten aus Nordkorea holen, und Steve soll bei dem riskanten Unternehmen behilflich sein. Während das restliche Team den Mord an einer Journalistin untersucht, finden Chin und Kono heraus, dass Jenna mit der ermordeten Journalistin Kontakt hatte - doch Steve ist bereits in Nordkorea in der Gewalt von Wo Fat, für den Jenna arbeitet. Das Team macht sich unter Leitung von Joe White auf, um ihn zu befreien... Cast: Alex O'Loughlin (Steve McGarrett) (Steve McGarrett), Scott Caan (Danny "Danno" Williams) (Danny "Danno" Williams), Daniel Dae Kim (Chin Ho Kelly) (Chin Ho Kelly), Grace Park (Kono Kalakaua) (Kono Kalakaua), Masi Oka (Dr. Max Bergman) (Dr. Max Bergman), Lauren German (Lori Weston) (Lori Weston), Jimmy Buffett (Frank Bama) (Frank Bama), Mark Dacascos (Wo Fat) (Wo Fat), Larisa Oleynik (Jenna Kaye) (Jenna Kaye), William Sadler (Jack McGarrett) (Jack McGarrett). Director: Kate Woods. soap/melodrama/folkloric Length: 45m Ratings: 0/FSK 0/FSK USA 2011 </description> </descriptions> </programme> Quote Link to comment
Griga Posted June 12, 2018 Share Posted June 12, 2018 32 minutes ago, pünktchen said: Why do we get two identical program entries with two different channel epgid's? Probably the broadcaster's fault. Quote If i query the api for guide data from channel AB, i expect it to return only entries for this channel and not also for channel XY! Where is the problem? Obviously the epg.fox.txt output has not been filtered by specifying an EPG Channel ID. Quote Link to comment
pünktchen Posted June 12, 2018 Author Share Posted June 12, 2018 53 minutes ago, Griga said: Probably the broadcaster's fault. As far as i know it's not the broadcasters guide data but from xEPG. Quote Where is the problem? Obviously the epg.fox.txt output has not been filtered by specifying an EPG Channel ID. The problem is the filter is already in the api call http://127.0.0.1:8089/api/epg.html?lvl=2&channel=563521184202768&start=43261.14236111&end=43264.14236111 but the DMS also returns data for channel=563521184202764 Quote Link to comment
Griga Posted June 12, 2018 Share Posted June 12, 2018 4 minutes ago, pünktchen said: The problem is the filter is already in the api call http://127.0.0.1:8089/api/epg.html?lvl=2&channel=563521184202768&start=43261.14236111&end=43264.14236111 but the DMS also returns data for channel=563521184202764 I'm still waiting for a proof that this can happen. The epg.fox.txt has not been created with this API call. It contains a lot of different EPG Channel IDs. I can't reproduce it here with the broadcasted EPG data from Fox Serie. Maybe the xEPG import contained a wrong Service ID. Quote Link to comment
pünktchen Posted June 12, 2018 Author Share Posted June 12, 2018 12 minutes ago, Griga said: I'm still waiting for a proof that this can happen. The epg.fox.txt has not been created with this API call. It contains a lot of different EPG Channel IDs I can't answer this, because @D3ltorohd was the one that created the output based on my instructions. What happens if the epgid for http://127.0.0.1:8089/api/epg.html?lvl=2&channel=####&start=####&end=#### doesn't exist? Does DMS return all guide data for all channels then? If so, then that is bad design. Btw. this whole thread wouldn't even exist if there were only one unique id for a channel and not two (channel id & channel epgid) or if we could query the guide data with the channel id also or if the guide data would list the channel id also or if we could create timers with the channel epgid also. This mixture - sometimes we have to use the channel id for a api call, other times we have to use the channel epgid - is the real problem!!! Quote Link to comment
Griga Posted June 12, 2018 Share Posted June 12, 2018 35 minutes ago, pünktchen said: I can't answer this, because @D3ltorohd was the one that created the output based on my instructions. Of course you can. It's so obvious. Do you really think an API call fot getting the EPG data of a single channel can yield a 10.3 MB file? 35 minutes ago, pünktchen said: What happens if the epgid for http://127.0.0.1:8089/api/epg.html?lvl=2&channel=####&start=####&end=#### doesn't exist? Does DMS return all guide data for all channels then? No. Simply try. However, in case of a typo like channels=#### the DMS would ignore the parameter. 35 minutes ago, pünktchen said: if there were only one unique id for a channel and not two (channel id & channel epgid) There are good reasons for using differents types of IDs for different purpose. In a nutshell: The EPG ID and how EPG data is assigend to channels is dictated by the DVB specifications. The other channel ID is designed for practical needs in the DVBViewer/DMS, e.g. for distinguishing audio tracks of a channel, which isn't possible with the EPG ID. Quote Link to comment
pünktchen Posted June 12, 2018 Author Share Posted June 12, 2018 15 minutes ago, Griga said: However, in case of a typo like channels=#### the DMS would ignore the Parameter. That would explain the output. User error... Quote There are good reasons for using differents types of IDs for different purpose. In a nutshell: The EPG ID and how EPG data is assigend to channels is dictated by the DVB specifications. The other channel ID is designed for practical needs in the DVBViewer/DMS, e.g. for distinguishing audio tracks of a channel, which isn't possible with the EPG ID. So are you saying that a channel with two audio tracks also has two different channel ID's? I've never seen this in the channels.xml If only one ID is shown and the second ID is hidden from users, how can i create a timer to get also the second audio track? You will say it doesn't matter because we're recording all audio tracks anyway. Then i have to ask again: Why can't we set a timer with the channel EPGID then, if DVBViewer doesn't distinguish between different audio tracks for recording and only is interested in the channel itself? Also what's the purpose to output the timers also with a channel EPGID, if we cannot use the same number to create/edit timers? I do not care at all what ID is used for what internal function. DVBViewer knows from both ID's which channel is requested. So why can i as an enduser/plugin developer not use the one or the other? I know also other tv backend API's, but DMS is the only one where two different ID's have to be used in different situations! Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.