Userscripts: профессиональная работа с сидбоксом
Сидбокс имеет функционал, вполне достаточный для решения большинства задач. Тем не менее, мы регулярно сталкиваемся с запросами на дополнительные функции, в частности – на автоматизацию массовых операций.
Такой функционал, с одной стороны, нужен далеко не всем. С другой стороны, конкретные запросы разных пользователей довольно трудно привести к общему знаменателю. Учитывая все эти факторы, мы пришли к решению запилить новый плагин для наших сидбоксов – userscripts (пользовательские скрипты).
Как это работает
По умолчанию в окне Available scripts ничего нет. Мы активируем скрипты по запросу – свяжитесь с нами (см. внизу страницы) и расскажите о своей задаче, после чего мы подберем вам нужный скрипт (или даже напишем новый).
Кнопка Usage – справка по скрипту, кнопка Run запускает скрипт. Для работы скрипта может потребоваться указать опции и параметры (см. справку) – это делается в поле Script command line. Пользовательские скрипты не предполагают интерактивности, поэтому все управление производится через опции/параметры командной строки.
Опции начинаются с -
, например -h
или –help
и могут быть указаны в любом месте командной строки. Чаще всего опции не являются обязательными. Параметры всегда являются позиционными, т.е. их количество и взаимное расположение – фиксированы.
После запуска ход выполнения задачи отображается в окне Console, ошибки – в окне Diagnostics. Кнопка Cancel прерывает работу скрипта, Hide – прячет окно.
Журнал задач находится на вкладке Tasks, там можно посмотреть текущий статус задачи, открыть спрятанное окно Console или прервать задачу.
create_batch
Этот скрипт предназначен для массового создания торрентов в указанной папке в автоматическом режиме. Для каждого 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 или другим способом
Нет сидбокса? Его можно приобрести здесь
.*
(скрытые ) и*.meta
(метаданные magnet) –ignore-piece-change