[GH-ISSUE #157] Add directory name for downloads #115

Closed
opened 2026-10-13 19:48:41 +00:00 by bsakaguchi · 2 comments
Owner

Originally created by @nightmare04 on GitHub (Nov 22, 2016).
Original GitHub issue: https://github.com/werwolfby/monitorrent/issues/157

Originally assigned to: @werwolfby on GitHub.

Добавить выбор папки для загрузки торрента при добавлении в клиент.

Originally created by @nightmare04 on GitHub (Nov 22, 2016). Original GitHub issue: https://github.com/werwolfby/monitorrent/issues/157 Originally assigned to: @werwolfby on GitHub. Добавить выбор папки для загрузки торрента при добавлении в клиент.
bsakaguchi 2026-10-13 19:48:41 +00:00
  • closed this issue
  • added the
    feature
    label
Author
Owner

@werwolfby commented on GitHub (Nov 22, 2016):

Уже не первый запрос, так что придётся похоже делать :(

Plugins:

  • Transmission
  • Deluge
  • Downloader - not supported
  • qBittorrent
  • uTorrent - not supported
<!-- gh-comment-id:262220873 --> @werwolfby commented on GitHub (Nov 22, 2016): Уже не первый запрос, так что придётся похоже делать :( Plugins: - [x] Transmission - [x] Deluge - [ ] Downloader - _not supported_ - [x] qBittorrent - [ ] uTorrent - _[not supported](http://help.utorrent.com/customer/en/portal/articles/1573954-limitations---webapi)_
Author
Owner

@werwolfby commented on GitHub (Dec 11, 2016):

это мои продублированные мысли по поводу имплементации

Можно делать несколькими путями:

  1. Каждый плагин торрент клиента может иметь свои дополнительные настройки
  2. Ввести набор переменных которые плагины клиента могут использовать в данном случае download_dir
  3. Гибрид?

Note: проверить работу при удалении старого торрента и добавлении нового в туже download_dir

1-й способ (Каждый плагин торрент клиента может иметь свои дополнительные настройки)

Плюсы:

  • Возможны дополнительные фишки для некоторых клиентов, как например labels.
  • Всегда показывает настройки только для конкретного клиента
  • Добавление новых настроек никак не влияет на других клиентов

Минусы:

  • При переходе на другой клиент нужно заново указывать папку для скачивания (можно попытаться шарить переменные по имени)
  • Кажется, что будет чуть более сложная реализация, и нужно больше кода для каждого клиента
  • Сложный способ хранения этой информации в базе
  • При переключении клиента по умолчанию и возврату назад некоторые настройки могут пропасть

2-й способ (Ввести набор переменных которые плагины клиента могут использовать в данном случае download_dir)

Плюсы:

  • Возможно менять клиента по умолчанию не меняя настройки
  • Более простая реализация
  • Можно показывать список поддерживаемых настроек

Минусы:

  • Отсутствующие настройки для клиента по умолчанию должны показываться как ошибка или не показываться вовсе
    Пользователь все ещё может их установить, но применяться они не будут, потому что клиент не поддерживает их или не реализована поддержка на уровне плагина
  • Список всех поддерживаемых настроек должен быть хорошо задокументирован
  • Добавление новых настроек для одного клиента может влиять на других клиентов
    Со списком поддерживаемых полей для конкретного клиента это не должно быть проблемой (гибрид)

Гибрид:

Все ещё есть общий список полей, но для каждого клиента это лишь подмножество этих настроек.

Плюсы:

  • Упрощенный способ хранения в базе не зависящий от клиента
  • Легко переключать между клиентами, но нужно понимать, что некоторые настройки не смогут применяться
  • Не требует имплементации UI для каждого плагина

Минусы:

  • Список всех поддерживаемых настроек должен быть хорошо задокументирован
  • Добавление новых настроек для одного клиента может влиять на других клиентов

Останавливаемся на Гибридом решении

<!-- gh-comment-id:266302229 --> @werwolfby commented on GitHub (Dec 11, 2016): _это мои продублированные мысли по поводу имплементации_ ## Можно делать несколькими путями: 1. Каждый плагин торрент клиента может иметь свои дополнительные настройки 2. Ввести набор переменных которые плагины клиента могут использовать в данном случае **download_dir** 3. Гибрид? **Note**: проверить работу при удалении старого торрента и добавлении нового в туже **download_dir** ## 1-й способ (Каждый плагин торрент клиента может иметь свои дополнительные настройки) ### Плюсы: * Возможны дополнительные фишки для некоторых клиентов, как например labels. * Всегда показывает настройки только для конкретного клиента * Добавление новых настроек никак не влияет на других клиентов ### Минусы: * При переходе на другой клиент нужно заново указывать папку для скачивания (можно попытаться шарить переменные по имени) * Кажется, что будет чуть более сложная реализация, и нужно больше кода для каждого клиента * Сложный способ хранения этой информации в базе * При переключении клиента по умолчанию и возврату назад некоторые настройки могут пропасть ## 2-й способ (Ввести набор переменных которые плагины клиента могут использовать в данном случае **download_dir**) ### Плюсы: * Возможно менять клиента по умолчанию не меняя настройки * Более простая реализация * Можно показывать список поддерживаемых настроек ### Минусы: * Отсутствующие настройки для клиента по умолчанию должны показываться как ошибка или не показываться вовсе Пользователь все ещё может их установить, но применяться они не будут, потому что клиент не поддерживает их или не реализована поддержка на уровне плагина * Список всех поддерживаемых настроек должен быть хорошо задокументирован * Добавление новых настроек для одного клиента может влиять на других клиентов Со списком поддерживаемых полей для конкретного клиента это не должно быть проблемой (гибрид) ## Гибрид: Все ещё есть общий список полей, но для каждого клиента это лишь подмножество этих настроек. ### Плюсы: * Упрощенный способ хранения в базе не зависящий от клиента * Легко переключать между клиентами, но нужно понимать, что некоторые настройки не смогут применяться * Не требует имплементации UI для каждого плагина ### Минусы: * Список всех поддерживаемых настроек должен быть хорошо задокументирован * Добавление новых настроек для одного клиента может влиять на других клиентов Останавливаемся на **Гибрид**ом решении
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
werwolfby/monitorrent#115
No description provided.