[Support] Huxy - XMLTV Schedules Direct


Recommended Posts

xmltv-sd-json-banner.jpg

This is an XMLTV install with a JSON script added for Schedules Direct.

n.b: You may change the grabber used and the number of days to be grabbed using environment variables. Please see the README on github for a more detailed explanation.

 

Application Name: XMLTV Schedules Direct

Application Site: https://sourceforge.net/projects/xmltv/

JSON Grabber: https://github.com/kgroeneveld/tv_grab_sd_json/

Docker Hub: https://hub.docker.com/r/huxy/xmltv-sd-json/

Github: https://github.com/HuxyUK/docker-xmltv-sd-json/

 

This project has stemmed from my own personal requirements and is inspired by tobbenb's work on WebGrabPlus+ and TVHeadend.

Please post any questions regarding the docker here and I'll do my best to answer them.

 

 

Link to comment

[glow=green,2,300]Thanks to Squid this is now available for installation.[/glow]

 

Change Log

2016.06.17

- Added DateTime::Format::DateParse.

- Support for updated tv_grab_sd_json grabber.

 

2016.06.01

- Unix socket support for grabber output.

   

2016.05.30

- Lots of refactoring behind the scenes.

- JSON grabber now updated on every start.

 

2016.05.29

- Added crontab template generation.

- Added check to see if grabber was succesful.

- Added timestamp to logs.

- Used a temp file for downloads to prevent existing data being erased if the grabber fails.

- Various bug fixes and scripts improvements.

 

2016.05.27

- Initial Release based on Debian Jessie.

Link to comment

Good day Huxy!

 

I've installed your grabber as I had played back then with WebGrabPlusPlus and couldn't get it working. I've installed the docker, configured it as per your doc and I get this after every run:

 

Checking for XMLTV directory
Done
Checking for data directory
Done
Downloading newest JSON script.
Checking for XMLTV directory
Done
Checking for data directory
Done
Downloading newest JSON script.
.. Done
Sun Jun 5 13:17:07 EDT 2016: Running grab type: STARTUP
Sun Jun 5 13:17:07 EDT 2016: *** Launching Grabber Script! ***
Sun Jun 5 13:17:07 EDT 2016: ****************
Sun Jun 5 13:17:07 EDT 2016: * RUNNING GRAB *
Sun Jun 5 13:17:07 EDT 2016: ****************
Sun Jun 5 13:17:07 EDT 2016: /usr/local/bin/tv_grab_sd_json --days 14 --output guide.xml --offset 2
Sun Jun 5 13:17:08 EDT 2016: ... Failed!!!

 

I've followed how to manually configure it as per described here: https://hub.docker.com/r/huxy/xmltv-sd-json/:

 

##Configure grabber
sudo docker run -ti --rm huxy/xmltv-sd-json /usr/local/bin/tv_grab_sd_json --configure

 

Once I've run this, I was expecting files to appear in my /config folder but both folders (/config and /data) remains empty.

 

Would you have some insights on what could go wrong?

 

Thanks for the nice docker and have a great day!

 

EDIT: I've been attempting to troubleshoot the issue by myself. Basically, whenever I run this command:

sudo docker run -ti --rm huxy/xmltv-sd-json /usr/local/bin/tv_grab_sd_json --configure

, it seems to create temporarily a container where the file is saved and removed as soon as the command exits. (Wouldn't this be caused by the -rm argument?) Anyway, I've tried working around this but couldn't get to copy the .conf file it generates.

 

Is there some way to keep the config file into my /config folder? Thanks!

 

EDIT #2:

 

Since I'm using the TVHeadend docker, I've seen some people who got XMLTV to work directly within the docker (as per here: http://lime-technology.com/forum/index.php?topic=37671.msg442261#msg442261) so I was able to manage. :) Nevertheless, thanks for the docker! If you do have an update on how to fix this, I'm sure some people will be quite happy. :)

Link to comment

Hi,

 

This is actually an easy fix. You just need to include the bind mounting as part of the command line. You can do this using the -v parameter. This will allow you to store persistent data.

 

sudo docker run -ti --rm -v /mnt/cache/appdata/XMLTVSchedulesDirect:/config  huxy/xmltv-sd-json /usr/local/bin/tv_grab_sd_json --configure

 

If you want to use TVHeadend and my docker you can enable the XMLTV socket, point the data mount point to TVHeadends epggrab directory and the output file as xmltv.sock. My docker will then detect the socket and push data directly into TVHeadend.

 

Cheers.

Huxy

Link to comment
  • 2 weeks later...

Just a heads-up; The Schedules Direct grabber was updated around 7 days ago (DateTime change).

 

This change broke the script (on reboot) in the docker environment. I've now updated the image to include support for the latest version of the grabber. All other XMLTV scripts will continue to work as normal.

https://github.com/kgroeneveld/tv_grab_sd_json/commit/32aebd4e82e93b995b67780629ab16f860e7c915

Link to comment
  • 2 months later...

Hey I am a little confused, I have things running correctly on the docker I think but I can't seem to get it to work with TV Headend.. Not sure if I might have the directory structure wrong?

 

This is my tv headend config -> https://ss.myvpn.me/d5e7f7RS.png

 

This is what my epggrab dir looks like -> https://ss.myvpn.me/9a9d44RS.png

 

This is my docker config -> https://ss.myvpn.me/12ea7bRS.png

 

So I can get the docker to generate the xmltv.sock  and the docker stays running and looks to be working correctly.  But I can't get TV Headend to read anything, and when I select XMLTV and hit save it deletes the xlmtv.sock that was generated by the docker and if I restart the docker to re-generate it the file TVheadend still doesn't show anything , I have restarted TVheadend also and still no luck.. what am I doing wrong?

Link to comment

Hey I am a little confused, I have things running correctly on the docker I think but I can't seem to get it to work with TV Headend.. Not sure if I might have the directory structure wrong?

 

This is my tv headend config -> https://ss.myvpn.me/d5e7f7RS.png

 

This is what my epggrab dir looks like -> https://ss.myvpn.me/9a9d44RS.png

 

This is my docker config -> https://ss.myvpn.me/12ea7bRS.png

 

So I can get the docker to generate the xmltv.sock  and the docker stays running and looks to be working correctly.  But I can't get TV Headend to read anything, and when I select XMLTV and hit save it deletes the xlmtv.sock that was generated by the docker and if I restart the docker to re-generate it the file TVheadend still doesn't show anything , I have restarted TVheadend also and still no luck.. what am I doing wrong?

 

From what I see, you forgot to add the thick in the xmltv.sock box. It won't work until you do.

Link to comment

As saarg said make sure the module is actually enabled. I can see the external XMLTV option unticked in your screenshot. When using sockets it's important to realise that TVH doesn't grab the listings on a schedule, instead you push data to the socket which in turn get's processed by TVH.

 

I would approach this as follows:

1. Stop the XMLTV schedules docker

2. Enable the XMLTV socket option in TVH

3. Check to make sure the the socket file has been created

4. Launch XMLTV docker and watch the output. You should see it identify the socket.

 

 

Link to comment

Thanks for the reply gents...

 

So what I find is the XMLTV module wont stay enabled, I enable it and it deletes the xmltv.sock that was created by the docker so I know it's reading that right dir... but nothing I do can keep it enabled..

 

removed link for bw, just dont use the old plugin for tvheadend on unraid.. use the docker :) see end of post.

 

 

Link to comment

Which docker are you using for TVH? I'm using Tvheadend-Unstable-DVB-Tuners and I don't have any issues.

If you're not using docker for TVH and the install isn't on the same machine as unRAID it won't work. That's because Unix BSD sockets are local access only. If that's the case you'll have to use XMLTV file grabber instead.

 

Link to comment

Thanks for the reply gents...

 

So what I find is the XMLTV module wont stay enabled, I enable it and it deletes the xmltv.sock that was created by the docker so I know it's reading that right dir... but nothing I do can keep it enabled..

 

https://ss.myvpn.me/1a8876RS.mp4

If you enable the log window in the bottom of tvheadend, you might get a clue why the xmltv.socket is not created. Might be a permission issue or maybe it's because you have the socket on a user share and not a disk share.

First I would try to add it to a disk share, on your cache preferably.

Also, where do you run tvheadend? It's not in your container list.

Link to comment

Thanks for the help guys, it was running the tvheadend plugin I was running.... So I have moved to a docker and it's all working now..

 

For anyone in the future that want's to know the setup..

 

Installed : linuxserver/tvheadend:latest  / huxy/xmltv-sd-json:latest & Plugin unRAID DVB Edition

 

tvheadend docker -> https://ss.myvpn.me/636c9cRS.png  ( add: --device=/dev/dvb/ )

 

XMLTVSchedulesDirect docker -> https://ss.myvpn.me/718441RS.png

 

tvheadend config -> https://ss.myvpn.me/4b36d0RS.png

 

 

Finished setup -> https://ss.myvpn.me/396d34RS.png

 

Link to comment
  • 3 months later...

I am having trouble with this plugin.

 

I have it installed and I understand it works with my schedules direct account but nowhere in the configuration i see any place to enter my SD id and password.

 

Can someone please help clarify, maybe I have the wrong understanding.

 

Did you read the github link in the first post? It has a guide to configure the grabber  ;)

Link to comment

I am having trouble with this plugin.

 

I have it installed and I understand it works with my schedules direct account but nowhere in the configuration i see any place to enter my SD id and password.

 

Can someone please help clarify, maybe I have the wrong understanding.

 

There are two ways of dealing with this. You either drop a pre-configured XMLTV file into the config mount or you configure one using the command line.

 

sudo docker run -ti -v 'your config dir':/config --rm huxy/xmltv-sd-json /usr/local/bin/tv_grab_sd_json --configure

 

This will launch a docker based on the XMLTV grabber image and run the configuration for tv_grab_sd_json. Once this is complete you can launch the docker via the GUI. If you want to use a different grabber view GitHub link for all the supported ones.

 

Cheers.

Huxy

Link to comment
  • 1 year later...

Huxy

I have installed the docker image for XMLTV Schedules Direct.

I used the commande ' sudo docker .....-configure' to create the 'tv_grab_sd_json.conf' file.

At the end of the script, a first warning appeared (see attached capture1 file).

When I start the docker via the GUI, the grabber seems to run  but when I look at the event log , I can see other events (please see capture2 file).

The /usr/local/bin/tvgrab_sd_json file doesn't exist and I can't define a lineups.

I hope you will be able to help me.

Thank you in advance.

Capture1.PNG

Capture2.PNG

Link to comment
On 9/28/2018 at 6:21 PM, didiergo said:

Hi 

Thank you for your responses.

The issue is still here.

Please, to help me, could you look at the capture attached and tell me if the last line is normal.

The /usr/local/bin/tv_grab_sd_json does not exist . I don't understand the warning.

Thank you in advance.

 

Capture5.PNG

Hi,

 

I've tested the docker and it works fine. The grabber script hasn't been updated in a couple of years, so it's not as if a new bug would have been introduced. Looking at your screenshot, there's a significant number of issues with the lineup data being retrieved. It's possible that the data is corrupt or not in an expected format from Schedules Direct. I would use the client and delete all your lineups, then add one and retry the process. 

Link to comment
13 hours ago, alturismo said:

 

@Huxy may possible to add the ..zz_sdjson, may better for europe users when i read correctly ?

I think this would just need an upgrade to a newer version of Debian as it's packaged with XMLTV. I'll have a look at upgrading. I originally wanted to move to alpine anyway, but it needs updated scripts and proper testing, so this won't be completed anytime soon. What makes you think it will work better for European users?

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.