matthuisman / slyguy.addons

Github mirror of SlyGuy add-ons
https://www.matthuisman.nz/2020/02/slyguy-kodi-repository.html
282 stars 77 forks source link

[DSTV] cached epg on plugin.video.dstv.now broken #187

Closed tinuva closed 2 years ago

tinuva commented 2 years ago

Hi,

The EPG from: https://github.com/matthuisman/slyguy.addons/blob/master/plugin.video.dstv.now/resources/lib/constants.py#L12

ZA_EPG_URL = 'https://i.mjh.nz/DStv/za.xml.gz'

is no longer working. I suspect that is because it is based on http://guide.dstv.com/ which is now broken.

Instead https://www.dstv.com/en-za/discover/tv-guide/ works.

I create a fork of iptv-org at https://github.com/tinuva/epg which focus on the epg for dstv.za

Any chance we can get the addon updated to use https://tinuva.github.io/epg/guides/za/dstv.com.epg.xml.gz ? I confirmed works with the plugin by replacing the above line 12 with this url.

Alternatively would be great if we can get a list of cached options to select from in the addon settings to allow users the option of selecting their preferred url.

matthuisman commented 2 years ago

Thanks for the info. Requesting every programs data for every channel must take awhile?

I thought DStv would block something making that many quick requests

On Thu, 28 Apr 2022, 17:50 David Bezuidenhout, @.***> wrote:

Hi,

The EPG from:

https://github.com/matthuisman/slyguy.addons/blob/master/plugin.video.dstv.now/resources/lib/constants.py#L12

ZA_EPG_URL = 'https://i.mjh.nz/DStv/za.xml.gz'

is no longer working. I suspect that is because it is based on http://guide.dstv.com/ which is now broken.

Instead https://www.dstv.com/en-za/discover/tv-guide/ works.

I create a fork of iptv-org at https://github.com/tinuva/epg which focus on the epg for dstv.za

Any chance we can get the addon updated to use https://tinuva.github.io/epg/guides/za/dstv.com.epg.xml ? I confirmed works with the plugin by replacing the above line 12 with this url.

Alternatively would be great if we can get a list of cached options to select from in the addon settings to allow users the option of selecting their preferred url.

— Reply to this email directly, view it on GitHub https://github.com/matthuisman/slyguy.addons/issues/187, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABPQAKOZ5AZPVLLSJBEIPEDVHIRKJANCNFSM5URHMHFQ . You are receiving this because you are subscribed to this thread.Message ID: @.***>

tinuva commented 2 years ago

Thanks for the info. Requesting every programs data for every channel must take awhile?

Initially 2h30m but went up to 5h after adding in a fix for some channels not displaying at all in Kodi.

I thought DStv would block something making that many quick requests

I would think they same, but if you view the https://github.com/iptv-org/egp repo they have been running it for a long time to both guides.dstv.com and dstv.com/en-za/discover/tv-guide/

Currently I only collect 2 days but it does update daily.

matthuisman commented 2 years ago

Is it doing anything in parallel?

On Thu, 28 Apr 2022, 18:33 David Bezuidenhout, @.***> wrote:

Thanks for the info. Requesting every programs data for every channel must take awhile? Initially 2h30m but went up to 5h after adding in a fix for some channels not displaying at all in Kodi.

I thought DStv would block something making that many quick requests I would think they same, but if you view the https://github.com/iptv-org/egp repo they have been running it for a long time to both guides.dstv.com and dstv.com/en-za/discover/tv-guide/

Currently I only collect 2 days but it does update daily.

— Reply to this email directly, view it on GitHub https://github.com/matthuisman/slyguy.addons/issues/187#issuecomment-1111800719, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABPQAKLVLGQ2JRZBPFQT2VLVHIWMFANCNFSM5URHMHFQ . You are receiving this because you commented.Message ID: @.***>

tinuva commented 2 years ago

Currently it is all running in serial. First objective was to get it working 100% in kodi with the addon for me.

Happy to look at changing it to run concurrently as a future improvement. Code runs on nodejs so it should definitely be possible.

matthuisman commented 2 years ago

Also, if you know it takes 5 hours, then you could skip the first 5 hours of epg. Or, retrieve 5x extra hours and use them instead.

Anyway, I'll try swap over the EPG source to your url tonight.

tinuva commented 2 years ago

That is a good idea! I am going to try and improve the time regardless. The action is configured to timeout after 8 hours as a safety to prevent forever running.

Thank you for the update!

tinuva commented 2 years ago

Actually this morning it was much quicker: (only 2h23m) Screenshot 2022-04-29 at 06 56 30

Perhaps the 5 hour runs was something externally affecting the time.

matthuisman commented 2 years ago

is your guide ok? in chrome opening https://tinuva.github.io/epg/guides/za/dstv.com.epg.xml gives you "error on line 33 at column 42: xmlParseEntityRef: no name"

matthuisman commented 2 years ago

ok, ive updated my server-side code to pull your epg every hour and serve that instead. this way dont need to change add-on and can switch easily if need to in future etc :) Thank you

tinuva commented 2 years ago

is your guide ok? in chrome opening https://tinuva.github.io/epg/guides/za/dstv.com.epg.xml gives you "error on line 33 at column 42: xmlParseEntityRef: no name"

I think that is expected. The generator does add html entities, however when using in kodi, those html entities cause those channels to show up empty in kodi. When removing the html entities, this resolve the kodi display issue but then I guess makes the guide give that error in a browser. The aim was to have it work in kodi.

ok, ive updated my server-side code to pull your epg every hour and serve that instead. this way dont need to change add-on and can switch easily if need to in future etc :) Thank you

Awesome! Thank you!

tinuva commented 2 years ago

Actually this issue also breaks it for kodi.

I am pushing an update to fix the xmlParseEntityRef error.

matthuisman commented 2 years ago

Yeh. Needs to be valid xml for Kodi too. Xml has a few special characters

On Sat, 30 Apr 2022, 19:31 David Bezuidenhout, @.***> wrote:

Actually this issue also breaks it for kodi.

I am pushing an update to fix the xmlParseEntityRef error.

— Reply to this email directly, view it on GitHub https://github.com/matthuisman/slyguy.addons/issues/187#issuecomment-1113939652, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABPQAKKMJF3GRZVHA6P36ALVHTOUDANCNFSM5URHMHFQ . You are receiving this because you modified the open/close state.Message ID: @.***>

matthuisman commented 1 year ago

Cool! I guess if you knew it takes 5 hours to run, you could skip the first 5 hours of epg to parse :) or offset by 5 hours so your actually requesting epg data to 48+5 hours away.

On Thu, 28 Apr 2022, 18:37 David Bezuidenhout, @.***> wrote:

Currently it is all running in serial. First objective was to get it working 100% in kodi with the addon for me.

Happy to look at changing it to run concurrently as a future improvement. Code runs on nodejs so it should definitely be possible.

— Reply to this email directly, view it on GitHub https://github.com/matthuisman/slyguy.addons/issues/187#issuecomment-1111803483, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABPQAKI3NUW6775BJRDWNODVHIW2XANCNFSM5URHMHFQ . You are receiving this because you commented.Message ID: @.***>