반응형
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE tv SYSTEM "xmltv.dtd">
<tv generator-info-name="epg2xml 2.0.0">
<channel id="1">
<display-name>B쇼핑</display-name>
<icon src="https://i.imgur.com/8pwPc5R.png" />
</channel>
<programme start="20200707223600 +0900" stop="20200707233600 +0900" channel="1">
<title lang="kr">[슬레진저] (혼)여성 아쿠아 와이어 트레일화 </title>
<desc lang="kr"/>
<category lang="kr">홈쇼핑</category>
<rating system="KMRB">
<value>전체 관람가</value>
</rating>
</programme>
</tv>
EPG자료는 알아서 구해주세요.. 위와같은 xml파일이 있다고 가정합니다.
여기서 중요한 부분은 display-name부분의 이름과 tvhead의 채널명이 동일해야 하며, channel id의 숫자와 programme 부분의 채널숫자가 동일해야 화면상에 나타납니다.
위의 내용이 http://abcd.com/epg.xml 에 있을경우 서버에 파이썬3를 설치한 다음 아래 내용대로 파일을 작성후
실행하시면 tvhead의 epg데이타에 강제로 밀어넣는 모습을 보실 수 있습니다.
실행하실때는 synology의 작업관리자에 매일 특정시간에 실행되도록 넣어두시면 좋습니다.
import os
import urllib.request
import socket
uh = urllib.request.urlopen('http://abcd.com/epg.xml')
html = uh.read()
socketURL = "/volume1/@appstore/tvheadend-testing/var/epggrab/xmltv.sock"
sock = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
sock.connect(socketURL)
sock.sendall(html)
소켓 URL 은 tvheadend의 설정 - 채널/EPG - EPGS 그래버 모듈(안보일경우 설정 - 사용자에서 expert mode로 변경후 )
오른쪽 경로 부분의 주소입니다.
반응형