NAS초기화 후 EPG 등록방법
- 사전점검사항
외부 XMLTV 사용으로 하였으므로 다음과 같은 설정화면에서 "사용함"(Enabled) 로 반드시 변경하고 작업
1. NAS 혹은 리눅스 운영체제에 따른 필요요건(Beautifulsoup, lxml)설치가 다양함으로 잘 연구하여 설치가 필요
- 설치환경
NAS : 시놀로지 DS1515+ DSM 6.1-15047 Update 1
Tvheadend : 4.1.2409-1
1)Python설치
패키지센터에서 Python, Python Module, Python3 설치
2)easy_install beautifulsoup, easy_install lxml 설치
Putty로 어드민 계정으로 로그인 후 sudo -i로 루트권한 획득 후 아래 명령어 실행
-pip다운로드
wget https://bootstrap.pypa.io/get-pip.py
-pip 인스톨러설치
python get-pip.py
-BeautifulSoup4 설치
pip install BeautifulSoup4 또는 easy_install BeautifulSoup4
-lxml설치
pip install lxml
2. EPG2XML.PY 로 xmltv.sock로 날리기
python이 모든 경로에서 구동 가능하지 않다면 python이 있는 경로를 적어주든가, 모든경로에서 실행가능하도록
Path를 주면됨
- epg2xml.py는 /volume1/pvr폴더에 위치시키고 SSH에서 경로로 이동합니다.(pvr 폴더가 없으면 생성)
cd /volume1/pvr
실행가능하도록 권한을 줍니다.
chmod -x epg2xml.py
그리고 channel.json도 권한을 다음과같이 755로 줍니다.
chmod 755 channel.json
다음과 같이 실행 (우리집은 GTV이므로..)
python /volume1/pvr/epg2xml.py -i LG -s /volume1/@appstore/tvheadend-testing/var/epggrab/xmltv.sock
5일치로 수정해봅니다.
epg2xml.py를 다음과 같이 수정합니다.
21번줄부터 다음과 같은 값입니다.
# Set My Configuration
default_icon_url = '' # TV channel icon url (ex : http://www.example.com/Channels)
default_fetch_limit = 5 # epg 데이터 가져오는 기간
default_xml_filename = 'xmltv.xml' # epg 저장시 기본 저장 이름 (ex: /home/tvheadend/xmltv.xml)
default_xml_socket = '/volume1/@appstore/tvheadend-testing/var/epggrab/xmltv.sock' # External XMLTV 사용시 기본 소켓 이름
(ex: /home/tvheadend/xmltv.sock)
EPG데이타 가져오는기간을 5 로, 기본 xml_socket 경로를 나스의 xmltv.sock경로로 적어둡니다. 이렇게 적어두면 실행시에 뒷줄을 생략할 수 있으니 편함
수정-저장하고 다음과 같이 다시 실행
python /volume1/pvr/epg2xml.py -i LG -s
-s 뒤의 xmltv.sock경로는 epg2.xml.py에서 기본경로로 적어두었으므로 생략
python실행은 제가 둔 /volume1/pvr에서도 가능하므로 더 짧게 다음과 같이 합니다.
python /volume1/pvr/epg2xml.py -i LG -s
3. 작업스케쥴러에 등록하기
제어판 작업스케쥴러 아래와 같이 등록
사용자정의스크립트, 이름은 EPG2XML로 주고, 실행명령어는 다음과 같이
python /volume1/pvr/epg2xml.py -i LG -s