Всем доброго дня.
В transmission появилась функция, которая позволяет выполнять произвольный скрипт по завершению закачки.
Идея состоит в том, что я хочу отправлять сообщения о закаченных файлах в Twitter средствами ttytter. Сообщения отправляются, только я никак не могу передать название этих торрентов.
Скрипт ниже.
[console]
#! /bin/bash
/home/torrent/ttytter.pl -keyf=/home/torrent/.ttytterkey -status="$TR_TORRENT_NAME complete"
[/console]
Может кто подскажет где ошибка и почему переменная не передается?
Transmission 2.03 и запуск скриптов
Решил проблему следующими костылями:
[console]
#! /bin/bash
echo "$TR_TORRENT_NAME" > /home/torrent/file.txt
/home/torrent/ttytter.pl -keyf=/home/torrent/.ttytterkey -status="$(cat /home/torrent/file.txt) complete"
rm /home/torrent/file.txt
[/console]
Скрипт теперь уведомляет меня по твиттеру о совершенных закачках.
Если кто знает альтернативный способ, просьба поделиться.
Доброго времени суток! Поднимаю тему, дабы не плодить новую, так как задача стоит такая же.
Поставил TTYtter, воспользовался данным скриптом, но оповещение не проходит. Если скрипт просто запускать в терминале, то заветная фраза появляется в твиттере.
Система - ubuntu 12.04 server
Помогите пожалуйста!
Приветствую. Дальше этого банального скрипта не ушел. Планирую в ближайшие пару дней возобновить реализацию бота. Готов поделиться идеями.
У меня был скрипт, который отсылал сообщения через 3g модем. Попробую адаптировать под ttytter. Переменная с названием торрента в том скрипте работала. Как что будет, отпишу в эту тему.
Было бы здорово посмотреть на этот скрипт, потому как сейчас хочу сделать оповещение о всех своих сервисах через 3g и ttyter.
В первом варианте скрипта у Вас переменная не срабатывала скорее всего из-за того что ее в два слеша запечатать нужно. Обо всем по порядку.
Для оповещения по смс используем gammu (настройка под конкретный телефон или модем индивидуальна - в сети масса примеров).
Сам скрипт:
#!/bin/sh
echo "torrent \"$TR_TORRENT_NAME\" completed" | gammu sendsms TEXT +7XXXXXXXXXX -unicode
Теперь про ttytter. Я вообще удивлен и не понимаю как у Вас работал скрипт, так как ttytter активируется под конкретного пользователя и кладет в его домашний каталог файл аутентификации, а вот скрипт уже будет запускать юзер transmission-daemon, у которого даже домашнего каталога нет. Во всяком случае у меня transmission это сделать не мог и вполне логично. Что сделал я:
Для начала будем использовать ttytter как команду, так проще и скрипт красивее :)
sudo apt-get install curlsudo wget http://www.floodgap.com/software/ttytter/ttytter.txt -O /usr/bin/ttyttersudo chmod +x /usr/bin/ttytterДалее создаем пользователя twitter, от которого будет работать ttytter
adduser twitterЛогинимся под ним и запускаем ttytter. Нам дают ссылку, по ней привязываем твиттер аккаунт, в домашнем каталоге пользователя twitter появится файлик .ttytterkey
Теперь запускаем visudo
visudoСоздаем правило для группы, при котором пользователи, входящие в группу twitter, смогут запускать ttytter без пароля от имени пользователя twitter:
%twitter ALL=(twitter) ALL, NOPASSWD: /usr/bin/ttytterДобавляем пользователя transmission-daemod в группу twitter и переписываем скрипт:
#!/bin/sh
echo "torrent \"$TR_TORRENT_NAME\" completed" | sudo -u twitter ttytter -script
Еще одно, ttytter мне не понравился и я стал использовать twidge, похожий консольный твиттер клиент, понравился тем что есть в репах + больше заточен под написание скриптов.
apt-get install twidge
Логинимся под пользователем twitter и выполняем команду:
twidge setup
Копируем ссылку, которую он выдаст, по ней привязываем наш твиттер аккаунт.
Не забываем добавить правило для sudo для команды /usr/bin/twidge как мы делали это для ttytter.
Скрипт под twidge будет выглядеть чуть иначе:
#!/bin/sh
echo "torrent \"$TR_TORRENT_NAME\" completed" | sudo -u twitter twidge update
На мой взгляд твиттер нужно вешать на отдельного юзера и затем уже нужных пользователей (в том числе демоны) добавлять в группу twitter, иначе можно задолбаться привязывать к твиттеру каждую службу, которая впоследствии нам может понадобиться.
От смс оповещения я отказался, так как надоело держать симку с абонентской платой каждый месяц на безлимитные смски. Соответственно после этого и перешел на твиттер.