CoreELEC 9.2 (Kodi 18.x - Leia) with IPTV Archive support

yes.

nigtly_20191224

Ok, I will take a look.

thank you, I reported but enjoy the holidays
this can be done after the Christmas or after the New Year

After taking a second look at this issue, it’s not a CE or pvr.archive problem.
This data is pulled directly from the stream. There is nothing to indicate the types of audio channels available in the addon.

Hi, after some testing more iptv providers, I see that many use catchup=“shift” (without catchup-source) tag, and this “shift” type means the same as append with ?utc={utc}&lutc={lutc} or &utc={utc}&lutc={lutc} (depends on stream url, if there is or no other GET atributes)

Thanks. I’ll add support for that.

Can you test if this works?
pvr.iptvarchive-3.8.8.2.zip|attachment

works only

hls-apple

#EXTINF:0 id=“3_494” group-title=“Popularne” timeshift=“3” catchup-source=“https://host/play/hls-apple-c494-xxxxxxxxxxxxxxxxxxxxxxxx.m3u8?utc={utc}&lutc={lutc}” tvg-id=“TVPHD.pl” tvg-name=“TVP HD” tvg-logo=“http://my.teleelevidenie.com/assets/logo/4034.png”,TVP HD
https://host/play/hls-apple-c494-xxxxxxxxxxxxxxxxxxxxxxxx.m3u8

hls-custom works but does not show the language path correctly

https://host.com/play/hls-custom-c494-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.m3u8

mpegts without .m3u or m3u8 ,at the end of the line, the archive does not work

https://host.com/play/mpegts-c494-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

there is no difference which pvr version is installed

I’ll say it again, it’s not a PVR problem, it’s a stream problem. The languages are defined in metadata that comes from the stream when you start playback.

Sorry, but it isn’t working…

My list looks like this:

#EXTM3U
#EXTINF:-1 tvg-name="TVP 1 HD" tvg-id="TVP1.pl" tvg-logo="http://server.com/assets/logo/4019.png" group-title="Popularne" catchup-days="3" catchup="shift",TVP 1 HD
https://server.com/play/hls-custom-c468-token.m3u8

After updating plugin, there is no green dots on channels with archive and timeshift not working.

When I edit my list like this, archive and timeshift works:

#EXTM3U
#EXTINF:-1 tvg-name="TVP 1 HD" tvg-id="TVP1.pl" tvg-logo="http://server.com/assets/logo/4019.png" group-title="Popularne" catchup-days="3" catchup="append" catchup-source="?utc=${start}&lutc=${timestamp}",TVP 1 HD
https://server.com/play/hls-custom-c468-token.m3u8
1 Like

Please try this build, I tested it and it should work.
pvr.iptvarchive-3.8.8.2.zip

It works, thanks :slight_smile:
I have tested only with list with catchup=“shift” having catchup as ?utc={utc}&lutc={lutc}
In 2 weeks I will have also list with catchup as &utc={utc}&lutc={lutc} and I will update status then

In this build, if the catchup type is shift, it will use a hardcoded &utc={utc}&lutc={lutc} suffix for the URL.
It will ignore anything else. If you have some ideas on how to better implement this, I’d like to hear them.

&utc={utc}&lutc={lutc} or ?utc={utc}&lutc={lutc} ? I think second, becouse it works on my list, first should not. I think that it should be simple to implement, if URL contains ‘?’ sign, then add suffix &utc={utc}&lutc={lutc}, if not - then add ?utc={utc}&lutc={lutc}

It’s ?utc={utc}&lutc={lutc} I had a typo in the post.

I added a check for ? in the url, and then I apply ? or & at the beginning.
pvr.iptvarchive-3.8.8.2.zip (325.0 KB)

Please open a feature request on pvr.iptvsimple github or ask in Kodi forums.

Ok. Thanks

I havent been able to get this addon working as intended, although I would love to get it working.

Would it be possible to have the “archive url format” be customized in a way that will allow any catchup protocol to be utilized?

By this I mean, to enter the exact stream url in its entiretey with placeholders : stream id number , date format, duration, etc?

Date formats can utilize existing formats with {Y} , {m}, {d}, {H}, {M} . – specified prior

Stream ID number can be tagged : {stream_id} – discovered upon selection in pvr

Duration can be tagged : {duration} – discovered upon selection in pvr

Ex)

What would be typed into archive url format:

http://helloworld.co:33/streaming/timeshift.php?username=myuser665&password=6559997&stream={stream_id}&start={Y}-{m}-{d}:{H}-{M}&duration={duration}

In the end, through this, any url format could be used for the catchup protocol without any intrinsic limits. The unique catchup protocol must only be first discovered by looking in the logs.

This would allow for bypassing any current limitations, and allow for a flexability across a plethora of catchup platforms.

Just an idea! Not sure if possible! :slight_smile:
What else could be done to get the above format to work?

Thanks for the help and suggestions !

How would the add-on retrieve the stream_id and duration? It would have to parse the actual URL for the channel and would have to know exactly where to look for those values. It might be doable, but I’m not sure how reliable and generic it be.

@TheCoolest
Now I have very simple archive syntax from Flussonic dvr, confirmed working - I am able to rip stream with ffmpeg or play it.
If live url looks like this:
http://host:port/streamName/mono.m3u8?token=token
Archive url will be:
http://host:port/streamName/mono-timestamp-duration.m3u8?token=token
Where:
timestamp - unix timestamp utc (converted from hh:mm:ss)
duration - duration in seconds

For example:
http://host:port/streamName/mono-1579208400-3600.m3u8?token=token means 16 Jan 2020, 21:00 UTC and 1 hour duration

Can that be set im your addon? All fields are known - streamName from playlist, start time and duration from epg

The fields are not known, as the addon doesn’t really know what’s in the channel’s main URL.