우선, 시놀로지 도커 트랜스미션을 올린것 입니다. (팩키지에서 다운로드 받으신 트랜스미션에서 적용되는지는 모릅니다.)
혹시 필요하신 분을 위해 방법을 남겨봅니다.
1. 기존 트랜스미션을 연결했습니다.
2. 텔레그램 봇
version: "3" services: telegram-transmission-bot: container_name: telegram-transmission-bot restart: on-failure image: kevinhalpin/transmission-telegram:latest environment: - TELEGRAM_TRANSMISSION_BOT=텔레그램토큰 - TELEGRAM_USERNAME=@포함한유저명 - TRANSMISSION_URL=http://ip:지정한포트/transmission/rpc - USERNAME=트랜스미션아이디 - PASS=트랜스미션암호 entrypoint: bash command: ['-c', '/transmission-telegram -token=$${TELEGRAM_TRANSMISSION_BOT} -master=$${TELEGRAM_USERNAME} -url=$${TRANSMISSION_URL} -username=$${USERNAME} -password=$${PASS}'] |
결과, 콘솔에서 확인하면 Authorized: 텔레그램챗팅방명
3. 100% 자동삭제.sh
유튜브에서 방법을 찾았습니다.
유튜브 동영상에서는 자동삭제만 되는 sh 적용하지만, 조금 응용하셔야합니다.
sh 출처:https://snowsooner.tistory.com/58
#!/bin/sh # telegram configuration" SERVER="PORT --auth ID:PASSWORD" # token TOKEN='토큰' # CHAT_ID CHAT_ID="CHATID" URL='https://api.telegram.org/bot'$TOKEN MSG_URL=$URL'/sendMessage?chat_id=' sleep 1s # torrent remove TORRENTLIST=`transmission-remote $SERVER --list | sed -e '1d;$d;s/^ *//' | cut -s -d " " -f 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 # telegram message send curl --data-urlencode "text=$TR_TORRENT_NAME download completed." "$MSG_URL"$CHAT_ID"&" fi done |
시놀로지 파일 스테이션에 위 파일을 작성하고 적당한 곳에 업로드 합니다.
ssh 를 이용하여 해당파일을 도커에 cp 합니다. (유튜브동영상에 나옵니다)
settings.json 파일의 내용중
"script-torrent-done-enabled": true, "script-torrent-done-filename": "/sh파일있는경로/파일명.sh", |
chmod 755 /sh파일있는경로/파일명.sh |
권한을 줍니다.
portainer에서 Restart를 해줍니다.
두서없이 작성하였습니다, 여러방법으로 참고 응용하셔야할듯 합니다.