howto:userscripts

Userscripts: профессиональная работа с сидбоксом

Сидбокс имеет функционал, вполне достаточный для решения большинства задач. Тем не менее, мы регулярно сталкиваемся с запросами на дополнительные функции, в частности – на автоматизацию массовых операций.

Такой функционал, с одной стороны, нужен далеко не всем. С другой стороны, конкретные запросы разных пользователей довольно трудно привести к общему знаменателю. Учитывая все эти факторы, мы пришли к решению запилить новый плагин для наших сидбоксов – userscripts (пользовательские скрипты).

По умолчанию в окне Available scripts ничего нет. Мы активируем скрипты по запросу – свяжитесь с нами (см. внизу страницы) и расскажите о своей задаче, после чего мы подберем вам нужный скрипт (или даже напишем новый).

Кнопка Usage – справка по скрипту, кнопка Run запускает скрипт. Для работы скрипта может потребоваться указать опции и параметры (см. справку) – это делается в поле Script command line. Пользовательские скрипты не предполагают интерактивности, поэтому все управление производится через опции/параметры командной строки.

Опции начинаются с -, например -h или –help и могут быть указаны в любом месте командной строки. Чаще всего опции не являются обязательными. Параметры всегда являются позиционными, т.е. их количество и взаимное расположение – фиксированы.













После запуска ход выполнения задачи отображается в окне Console, ошибки – в окне Diagnostics. Кнопка Cancel прерывает работу скрипта, Hide – прячет окно. Журнал задач находится на вкладке Tasks, там можно посмотреть текущий статус задачи, открыть спрятанное окно Console или прервать задачу.







Этот скрипт предназначен для массового создания торрентов в указанной папке в автоматическом режиме. Для каждого 1) файла/папки создается соответствующий файл .torrent c указанными анонсерами и приватностью. Пустые файлы и папки, содержащие только пустые файлы – игнорируются.

Командная строка:
[опции] папка группа_анонсеров1 [группа_анонсеров2 …], где
группа_анонсеров := анонсер || 'анонсер1 анонсер2 …'

Скрипт имеет 2 режима – создание (по умолчанию) и обновление (опция –update). В режиме создания сначала удаляются все файлы .torrent в выбранной папке, затем для каждого файла/папки создается новый .torrent.

В режиме обновления сначала производится проверка, актуален ли уже имеющийся .torrent 2). Также проверяется соответствие приватности, списка анонсеров и размера сегмента 3).

Опция –private создает приватные торренты (DHT, PeX и LSD отключены). Размер сегмента выбирается автоматически, от 256K до 64M включительно, из расчета 1300 сегментов на торрент. Опция –reduce рассчитывает размер, исходя из соотношения 700 сегментов на торрент, что позволяет уменьшить размер .torrent файлов.

Опции –min-piece VAL и –max-piece VAL ограничивают минимальный/максимальный размер сегмента. Допустимые значения VAL – 256K, 512K, 1M, 2M, 4M, 8M, 16M, 32M и 64M. К примеру, –max-piece 16M будет означать, что автоматически выбираемый размер сегмента не будет превышать 16M.

Полный список опций и параметров командной строки, а также примеры их использования всегда доступны по нажатию кнопки Usage.

В обоих режимах после окончания работы в целевой папке будут содержаться только актуальные торренты для всех валидных объектов 4).

В абсолютном большинстве случаев режим обновления (опция –update) вполне достаточен, поскольку любые операции с файлами (включая скачивание через торрент, заливку/удаление/создание/переименование через FTP/SFTP и File Manager) изменяют дату модификации файла/папки и делают соответствующий .torrentнеактуальным.

Скрипт имеет защиту против запуска нескольких копий одновременно – при такой попытке будет выдана ошибка Script is already running



Если у вас остались вопросы, пожалуйста свяжитесь с нами в Telegram или другим способом
Нет сидбокса? Его можно приобрести здесь


1)
исключая .* (скрытые ) и
*.meta (метаданные magnet)
2)
Если какой-либо файл/папка, включая вложенные, имеет более позднюю дату модификации, чем соответствующий .torrent, то последний считается неактуальным и будет пересоздан
3)
проверка на размер сегмента может быть отключена опцией
–ignore-piece-change
4)
все прочие файлы .torrent (не соответствующие валидным файлам/папкам) будут удалены
  • howto/userscripts.txt
  • Последнее изменение: 2022/02/06 13:42
  • (внешнее изменение)