본문으로 바로가기

[Synology] Download 텔레그램 알람

category 컴퓨터/NAS 2018/10/21 15:18
1. 패키지센터에서 Download Station을  종료


2. ssh를 이용하여 쉘로 진입하여, Root권한을 획득한다.
$ sudo -i


3. Download Station 재부팅 간 설정파일을 초기화하지 않도록 변경하기 위해, 아래 명령어로 스크립트 파일을 수정
$ vi /var/packages/DownloadStation/scripts/start-stop-status



4. "rm ${PACKAGE_DIR}/etc/download/settings.json" 이라고 적혀있는 부분을 찾아서, 앞에 "#"을 붙여 주석처리해주고 저장
# rm ${PACKAGE_DIR}/etc/download/settings.json


5. 설정 변경을 위해 아래 명령어로 설정 파일 수정
   위 4번에서 경로를 찾아서 변경된 경로로 접근을 해도 됩니다.(업데이트에 따라서 경로가 바뀔수도 있습니다.)
$ vi /var/packages/DownloadStation/etc/download/settings.json


6. script-torrent-done-enabled, script-torrent-done-filename을 찾아서 아래와 같이 변경
"script-torrent-done-enabled": true,
"script-torrent-done-filename": "/volume1/@appstore/DownloadStation/bin/downloadComplete.sh",


7. postgresql의 계정정책 관련 설정을 변경
$ vi /etc/postgresql/pg_hba.conf


8. 아래와 같이 되어 있는 부분을 변경
#Before)    
# TYPE  DATABASE        USER            ADDRESS                 METHOD
local   all             postgres                                peer map=pg_root
local   all             all                                     peer

#After)    
# TYPE  DATABASE        USER            ADDRESS                 METHOD
local   all             postgres                                trust
local   all             all                                     peer


이걸 안하면, OS계정과 postgresql 계정이 다른 상황에서 원격 쿼리를 날리는 경우 아래와 같은 에러가 발생하기 때문이다.
psql: FATAL:  Peer authentication failed for user "postgres"


9. 설정을 변경했으니, postgresql을 재시작
$ /usr/syno/etc.defaults/rc.sysv/pgsql.sh restart


10. 이제 6번 과정에서 script-torrent-done-filename 부분에 입력했던 경로로 이동하여, 쉘 스크립트 파일 새성
$ vi /volume1/@appstore/DownloadStation/bin/downloadComplete.sh


downloadComplete.sh 스크립트내용)    
#!/bin/sh
 
TOKEN='BOT Token 입력'
URL='https://api.telegram.org/bot'$TOKEN
MSG_URL=$URL'/sendMessage?disable_notification=true&chat_id='
CHAT_ID='CHAT ID 입력'
 
function send_message {
  res=$(/usr/bin/curl --data-urlencode "text=[MYNAS] $TR_TORRENT_NAME download complete." "$MSG_URL"$CHAT_ID"&")
}
 
send_message
/bin/psql -U postgres -d download -c "DELETE FROM Download_queue WHERE status IN ('5','7','8')"


11. 파일 권한을 755 로 설정
chmod 755 /volume1/@appstore/DownloadStation/bin/downloadComplete.sh


12. 패키지센터에서 DownloadStation 시작


13. DownloadStation에서 다운로드 완료 후 개설한 텔레그램 방에 "[MYNAS] 토렌트명 download complete" 라고 메시지가 오고, Downloas Station 에서 목록이 사라지면은 성공

크리에이티브 커먼즈 라이센스
Creative Commons License

트랙백

http://trudy.kr/trackback/164
  1. Fortnite esp

    Fortnite esp

    Trudy :: 2019/12/11 15:26

댓글을 달아 주세요

Trudy
Trudy 님의 블로그
MENU
VISITOR 오늘501 / 전체466037