I'm absolutely no xmltv guru, but with some help from #hts I was able to get JSC (al jazeera sports) into my tvheadend.
# Download rytec.sources.xml.20120529.zip from
http://www.rytec.be
# Extract the file and open it in your favorite xml reader
# Search for JSC in the file and you should see a xml section with a few URL's
# To my understanding, all these url's have the same file called: rytecxmltvosn.gz so you only need one of the URL's provided
# This file can be inserted into tvheadend with the socket option. Enable it in Configuration -> Channel/EPG -> EPG Grabber -> External grabbers (XMLTV)
# gunzip rytecxmltvosn.gz
# socat ./rytecxmltvosn UNIX-CONNECT:/tvheadend-config-directory/epggrab/xmltv.sock
I put a small script "xmltv-import-jsc" inside /etc/periodic/daily (don't forget to change socket location)
#!/bin/sh
URL="http://rytec.sifteam.eu/rytecxmltvosn.gz"
XML=$(mktemp -u)
SOCKET="/etc/tvheadend/epggrab/xmltv.sock"
curl -so $XML $URL
if gzip -t $XML; then
zcat $XML | socat stdin UNIX-CONNECT:$SOCKET
fi
rm $XML
You can repeat the steps for other sources provided by rytec.
After the first run, tvheadend xmltv function will create epg channels options for each EPG channel found in the xml file. Afterwards you can go to your channel list and select which EPG channel should match your local channel. You can also undo any wrong automatically mapped EPG vs channel inside your channel list. Don't forget to save when you mapped everything.
After mapping you will have to run the import again to actually import any EPG data in your newly mapped channels.