토렌트 다운로드 완료된 시드 삭제하고 텔레그램 알람받기

지난번에 transmission도 설치해보고 자동다운로드도 걸어봤습니다.

다운로드가 완료되어도 시드삭제전까진  업로드 트래픽을 잡아먹는 경우가 있습니다.
완료된 파일은 시드를 삭제하고 다운로드 완료되었다는 알람을 받아보겠습니다.
transmission 설정과, 텔레그램 봇 등록에 대해서만 조금 이해하시면 됩니다. transmission 설정을 변경합니다.
꼭 transmission대몬을 종료하고 설정을 변경해야하는건 알고 계시죠?

"script-torrent-done-enabled": true,
"script-torrent-done-filename": "/opt/scripts/transmission-done.sh",

위 내용은 토렌트 다운로드완료시마다 해당스크립트를 실행하라는 설정입니다.
별로 어려운건 없으시죠? 천천히 따라 오시면 됩니다. 이제 저한테 알람을 해 줄 봇을 만들어봅니다.
까똑은 API가 공개되지 않아서, API가 공개된 텔레그램을 이용합니다.
“요즘 다들 스맛폰에 텔레그램 하나씩은 깔려있으시죠?”

텔레그램 봇은 봇파더를 통해 만들고 삭제할 수 있습니다.
쉽게 말해 전지전능한 봇신인거죠
botfather이 분이십니다.
봇을 만드는 방법은 아래 그림을 참고하시면 됩니다. gom2bot 먼저 봇신님께 /newbot으로 봇을 만들겠다 얘기하시면 됩니다.
다음 사용할 이름을 넣고 사용할 유저명을 넣으면 됩니다.
처음 입력하는건 닉네임이고 두번째 입력할건 사용자 아이디라고 이해하시면 됩니다. 일부러 좀 틀려봤는데.. 아이디의 경우 반드시 bot로 끝나야하고
이미 등록된 아이디는 사용할 수 없습니다. 봇이 생성되고 토큰값을 받았네요.
chat_id도 확인해야합니다.
텔레그램앱에서 해당 봇에게 말을 건 뒤
브라우저상에서 해당 방번호를 알아낼 수 있습니다.

https://api.telegram.org/bot토큰값/getUpdates

*위 그림의 토큰값이 208352999:AAHnbPdEy1EMs5RGwZ4tAGL7RkOXmWyPiUY인데
bot문자열을 붙여  “bot208352999:AAHnbPdEy1EMs5RGwZ4tAGL7RkOXmWyPiUY” 이라 적어야 합니다.

id 라고 적힌항목이 chat_id입니다.
경우에 따라서 음수일 수 있습니다.
(처음 셋팅때 아이디가 음수일 리 없을거라 생각해 저는 좀 헤맸습니다.) 자 이제 준비가 끝났습니다.
다운로드 완료시에 사용할 스크립트는 아래와 같습니다.
cat /opt/scripts/transmission-done.sh

#!/bin/sh
SERVER="9091 -n 아이디:패스워드"
KEY="텔레그램토큰"
CHATID="채팅방아이디"
DIR=$(echo $TR_TORRENT_DIR|cut -d'/' -f 3)

if [ $DIR == "Media" ]
then
  STR="($(echo $TR_TORRENT_DIR|cut -d'/' -f 4-))"
fi

TEXT="$TR_TORRENT_NAME $STR 준비되었습니다."

TORRENTLIST=`transmission-remote $SERVER --list | sed -e '1d;$d;s/^ *//' | awk '{print $1}'`
for TORRENTID in $TORRENTLIST
do
    DL_COMPLETED=`transmission-remote $SERVER --torrent $TORRENTID --info | grep "Percent Done: 100%"`
    STATE_STOPPED=`transmission-remote $SERVER --torrent $TORRENTID --info | grep "State: Seeding\|Stopped\|Finished\|Idle"`
    if [ "$DL_COMPLETED" ] && [ "$STATE_STOPPED" ]; then
        transmission-remote $SERVER --torrent $TORRENTID --remove
    fi
done
/usr/local/bin/curl -d "chat_id=$CHATID&text=$TEXT" https://api.telegram.org/bot$KEY/sendMessage

IMG_4485

 

알람기능을 조금 더 발전시켜 토렌트를 활용해 검색하고

홈서버에서 다운로드받는 방법도 있습니다.

텔레그램 메신저로 토렌트 검색하고 다운받기 (Search torrents by telegram bot)