Qbittorrent: Controlar / editar feeds RSS da IU da web

Criado em 25 fev. 2013  ·  281Comentários  ·  Fonte: qbittorrent/qBittorrent

Tenho qbittorrent rodando no OpenSUSE 12.2 que usei para configurar RSS feeds para baixar torrents automaticamente e usei esta caixa como servidor de mídia para minha casa. Posso ajustar quase tudo por meio de uma sessão SSH ou da interface do usuário da web. Seria bom ser capaz de controlar os feeds RSS para qbittorrent sem ter que ssh -Y na caixa e puxar o gui e fazer as edições. O ideal é usar a interface do usuário da web do meu iPAD e ajustar os feeds RSS. Esse recurso pode ser adicionado à interface do usuário da web?
obrigado
jdavis3980

Feature request Help wanted RSS WebUI

Comentários muito úteis

Estou tentado a encerrar este problema agora pelos seguintes motivos:

  • A conversa prolongou-se por muito tempo e fora do assunto. Mesmo que isso tenha acontecido com algumas coisas boas, este tíquete deve ser sobre o suporte RSS no WebUI oficial. É uma solicitação de recurso simples e clara, não o lugar para muitas das coisas que estão aqui.
  • Existem muitas +1 / me too / pleeeeease / i've waited 58 years instead of contributing in any way whatsoever to the project besides this disrespectful and ungrateful comment, why is this not done yet? posts bagunçando toda a conversa.
  • Como a funcionalidade solicitada agora está disponível por meio de WebUIs alternativos, a única coisa razoável que não foi resolvida é oferecer suporte a isso no oficial.

Quando eu fechar este, abrirei dois novos tópicos:

  • Um para rastrear a implementação desse recurso no WebUI principal (e focar exclusivamente nisso). Não há necessidade de +1 comentários se você apenas quiser dizer "sim, eu também quero isso", use apenas as reações.
  • Uma chamada "discussão de desenvolvimento de WebUI alternativa" ou semelhante para as pessoas discutirem livremente o desenvolvimento de WebUI alternativa em um local centralizado.

Se alguém tiver outras dúvidas, entre em contato.

Todos 281 comentários

+1 Por favor, adicione recursos RSS ao qbittorrent-nox para que tenha paridade de recursos com qBittorrent com X windows.

+1

+1 no windows para

+1

+1

+1

@buinsky Eu vi que você trabalhou na interface web. Parece que esse recurso pode ser útil.

+1

Esse recurso ausente é possivelmente um problema para pessoas que estão migrando do uTorrent. Todo o resto é ótimo e ainda melhor.

Obrigado e continue com o bom trabalho :)

+1
Gostaria de ver isso acontecendo.

+1

+1 Conforme a postagem acima, este é um fator decisivo para mim. Gostaria de ver isso acontecer.

+1
Ter que ficar com o bloatware uTorrent por causa disso

+1 Por favor - o melhor cliente sem cabeça que encontrei até agora, e isso simplesmente o deixaria completo.

+1

+1. Isso seria muito útil.

Por favor! +1

Por favor, adicione este recurso! +1

+1 para este recurso

+1
Ausente desde o começo

+1
isso vai me fazer mudar de utorrent

+1
Estou preso sem isso agora

+1

+1

+1

Sim, adoraria ter esse recurso! Pode controlar a partir da almofada do olho então :-). : +1:

+1 precisa da interface do usuário da Web com RSS para servidor sem comando

+1

+1

+1

+1

+1

+1

+1

+1

+1

Três anos e ainda sem suporte para feeds RSS na versão headless? Embora a versão do Windows seja ótima, isso é simplesmente decepcionante.

Talvez alguém possa me dar dicas sobre como editar o .conf? Eu também não sou avesso a isso, mas ainda gostaria de ver a IU acompanhando.

Tentei editar o arquivo usando algumas codificações diferentes para os caminhos de salvamento e não consegui fazê-lo funcionar. Acabei tendo que usar o flexget.

+1

+1

Adoraria migrar do servidor uTorrent, que é de código fechado e não parece estar ativamente desenvolvido, mas isso é a única coisa que me impede

+1

+1

Bem, eventualmente optei pelo Flexget: ele pode ser executado sem controle, enquanto ainda oferece os recursos de que preciso.

Isso excluiria a capacidade de obter automaticamente com base em links magnéticos.

+1

+1

+1 (e classificar por datas adicionadas e concluídas não faria mal)

Sábado, 25 de junho de 2016, 17:23 Rihards Skuja [email protected]
escrevi:

+1

-
Você está recebendo isto porque está inscrito neste tópico.
Responda a este e-mail diretamente, visualize-o no GitHub
https://github.com/qbittorrent/qBittorrent/issues/453#issuecomment -228571166,
ou silenciar o tópico
https://github.com/notifications/unsubscribe/AGbY-5ty-GOC3gqmyGctI5zjwX6cJMGhks5qPZw8gaJpZM4AdExq
.

O encaminhamento de ssh X11 funciona bem, mas esse recurso na webUI seria muito melhor.

Por enquanto estou usando o flexget, mas ter RSS integrado no qbittorrent-nox seria fantástico!

+1

e a classificação por datas adicionadas e concluídas não faria mal

Adicionado em # 5547

+1

+1

+1

Ninguém tentou implementar esse recurso em um fork ou patch? É muito estranho que depois de todo esse tempo ainda não haja uma implementação desse recurso básico e realmente necessário.

+1 sobre isso. Rodar um torrent / PleX sem cabeça e isso o completaria.

+1

+100!

Sim, +1 para mim.

Nossa, passei uma hora procurando por esta opção para ligar no config / etc, apenas para descobrir que qbtorrent nox não suporta isso. Ugh. : desapontado:

Usando o Sonarr por enquanto, que é bastante completo, mas eu estava procurando por algo leve e integrado

+1

+1

Surpreendido que ainda não tenha sido adicionado após 4 anos. Não é de admirar que todo mundo use o rTorrent.

+1 OMG, isso é realmente ridículo, vamos fazer do qBittorent um bom cliente bittorent

Algum tipo de WebAPI relacionado a RSS pode (deve) ser implementado como parte do # 6505.

Comecei a implementar o suporte RSS no WebUI. Mas não consigo terminar este trabalho por causa dos antidepressivos que tomo.

@ qbittorrent / webdev
Pode ser que possa ajudar alguém a implementar suporte RSS no WebUI. Meu código localizado aqui:

https://github.com/buinsky/qBittorrent/tree/rss

+1

+1

+1

Mais uma pessoa adicionando +1 depois de muitos anos.

+1

+1 provavelmente vai acabar escrevendo algo para analisar o feed RSS e cutucar a API a essa taxa ...

@buinsky , você ainda não conseguiu concluir seu trabalho sobre isso?

@glassez Infelizmente não posso.

Eu realmente aprecio @glassez por tentar consertar esse problema. Existe um cronograma aproximado que você pode nos fornecer sobre a implementação da correção e a versão do qBittorrent que provavelmente terá a correção?

+1

+1

+1

+1

+1

+1 é irritante ter que acessar remotamente meu servidor para a única coisa necessária ... mudanças de rss. caso contrário, cliente incrível!

+1 nem tinha percebido que isso não era uma coisa. :( Definitivamente gostaria!

Por favor, implemente este recurso!

Infelizmente, o projeto não tem nenhum desenvolvedor da web ativo no momento ...

+1
Eu vi a página inicial do qbittorrent e comecei a instalar o header-less

  • Controle remoto através da interface do usuário da Web, escrito em AJAX
    - Quase idêntico ao GUI regular

Este texto não diz que falta funcionalidade, apenas que a GUI não é exatamente a mesma.

Existe algum guia para fazer o RSS funcionar no qbittorrent via SSH?

+1

+1!
Como é que isso ainda não está aí?

Porque ninguém que se preocupa com isso ainda não o implementou. Acho que as solicitações de pull são bem-vindas.

Bem, enquanto as pessoas estão esperando, eu gostaria de apontar que o servidor utorrent para linux 3.3_alpha tem um componente rss na webUI

e com a comunidade 0,83 webui está cheio de recursos (faltam algumas coisas no stock webui)

A API da Web apropriada está em desenvolvimento agora. Espero que seja lançado com a primeira atualização do branch 4.0.x.
Quanto à IU da Web para ele, não posso agendar seu lançamento, pois não temos um desenvolvedor web ativo.

acabei de mudar para um NAS Rockstor e percebi que minha configuração RSS não pode ser importada da interface do usuário da web. Ai ...

+1! Acabei de comprar um NAS Netgear e este recurso é realmente necessário na versão web-ui!

+1

+1

+1

+1

Isso é uma espécie de solução se você precisar de uma solução alternativa.
https://askubuntu.com/questions/498232/using-rss-in-qbittorrent

+1

qBittorrent v4.1 tem API de gerenciamento de RSS experimental. Veja aqui .

Em breve veremos isso suportado? Eu executo qbittorent como um serviço. É realmente irritante precisar desligar o serviço e iniciá-lo no desktop para gerenciar downloads de RSS

Em breve veremos isso suportado?

Você não percebeu meu comentário anterior? Ou você quer dizer Web UI?

Quero dizer a interface do usuário da web, mas estou trabalhando para injetar uma visão para isso usando o macaco de violação para o Chrome, fique atento

Então aqui está, ele requer Tampermonkey para Chrome. É altamente não testado, não me culpe se ele sobrescrever suas regras ou algo semelhante.

// ==UserScript==
// <strong i="6">@name</strong>         qbittorrent rss
// <strong i="7">@namespace</strong>    http://tampermonkey.net/
// <strong i="8">@version</strong>      0.1
// <strong i="9">@description</strong>  Adds rss rule window to qBittorent web UI
// <strong i="10">@author</strong>       Anders Malmgren
// <strong i="11">@match</strong>        http://localhost:8080
// <strong i="12">@grant</strong>        none
// <strong i="13">@require</strong>      http://knockoutjs.com/downloads/knockout-3.4.2.js
// <strong i="14">@require</strong>      http://andersmalmgren.github.io/Knockout.BindingConventions/src/Knockout.BindingConventions.js
// ==/UserScript==

(function() {
    var modalTemplate = '<div>\
   <select data-name="rules"></select>\
   <button data-name="addRule">Add</button>\
   <button data-name="deleteSelectedRule">Delete</button>\
   <div data-name="selectedRule">\
      <div><label><input data-name="enabled"/>Enabled</label></div>\
      <div><label>Name</label><input data-name="name" /></div>\
      <div><label>Must contain</label><input data-name="mustContain" /></div>\
      <div><label>Must NOT contain</label><input data-name="mustNotContain" /></div>\
      <div><label>Save path</label><input data-name="savePath" /></div>\
      <label>Feeds</label>\
      <div data-name="feeds">\
          <div><label><input data-name="enabled"/><span data-name="name"></span></label></div>\
      </div>\
      <button data-name="save">Save</button>\
   </div>\
</div>'

    var button = new Element("a", { html: "RSS<div data-name='modal' data-bind='modal: modal'>" + modalTemplate + "</div>"});
    button.setAttribute("data-bind", "click: showRss");

    var feeds = null;
    new Request.JSON({
            url:  new URI('api/v2/rss/items'),
            noCache: true,
            method: 'get',
            onFailure: function() {
               //TODO: error handling
            },
            onSuccess: function(response) {
               feeds = Object.keys(response).map(function(key) { return { name: key, url: response[key] != "" ? response[key] : key }; })
            }
        }).send();

    $("mochaToolbar").append(button);

    var Model = function() {
        this.modal = ko.observable().extend({notify: 'always'});;
        this.modal.subscribe(function(value) { console.log(value);});
    };

    Model.prototype = {
        showRss: function() {
            if(this.modal() == null) {
                this.modal(new RssModel());
            }
        }
    };

    var RssModel = function() {
      this.rules = ko.observableArray();
      this.selectedRule = ko.observable();

      this.listRules();
      this.canDeleteSelectedRule = ko.computed(function() { return this.selectedRule() != null }, this);
    };

    RssModel.prototype = {
          listRules: function() {
var url = new URI('api/v2/rss/rules');
        var request = new Request.JSON({
            url: url,
            noCache: true,
            method: 'get',
            onFailure: function() {
               //TODO: error handling
            },
            onSuccess: function(response) {
               this.rules(Object.keys(response).map(function(key) { return new Rule(key, response[key]); }));
            }.bind(this)
        }).send();
        },
        addRule: function() {
            this.rules.push(new Rule("Untitled", { enabled: false, mustContain: "", mustNotContain: "", savePath: "", affectedFeeds: []}));
        },
        deleteSelectedRule: function() {
            var rule = this.selectedRule();
            var url = new URI('api/v2/rss/removeRule');
            url.setData('ruleName', rule.name());
            new Request.JSON({
               url: url,
               noCache: true,
               method: 'get',
               onFailure: function(response) {
                   //Unpexted behaviour, eror with status 200 trigger, why?
                   if(response.status !== 200) {
                       throw "Error deleting rule";
                   }
                   this.rules.remove(rule);

               }.bind(this)
            }).send();

        }
    };

    var Rule = function(name, data) {
        this.name = ko.observable(name);
        this.enabled = data.enabled;
        this.mustContain = data.mustContain;
        this.mustNotContain = data.mustNotContain;
        this.savePath = data.savePath;
        this.feeds = feeds.map(function(f) { return new Feed(f, data.affectedFeeds.indexOf(f.url) >= 0)});

        this.data = data;

        this.canSave = ko.observable(true);
    };

    Rule.prototype = {
       save: function() {
            var toSave = Object.assign({}, this.data);

            for (var key in toSave) {
               if (this.hasOwnProperty(key)) {
                    toSave[key] = ko.utils.unwrapObservable(this[key]);
               }
            }

            toSave.affectedFeeds = this.feeds.filter(function(f) { return f.enabled; }).map(function(f) { return f.url; });
            var json = ko.toJSON(toSave);
            var dirty = ko.toJSON(this.data) !== json;

            if(!dirty) return;

            var url = new URI('api/v2/rss/setRule');
            url.setData('ruleName', this.name());
            url.setData("ruleDef", json);

            this.canSave(false);
            var request = new Request.JSON({
               url: url,
               noCache: true,
               method: 'get',
               onFailure: function(response) {
                   //Unpexted behaviour, eror with status 200 trigger, why?
                   if(response.status !== 200) {
                       throw "Error saving rule";
                   }

                   this.data = toSave;
                   this.canSave(true);
               }.bind(this)
            }).send();
       }
    };

    var Feed = function(data, enabled) {
       this.name = data.name;
       this.url = data.url;
       this.enabled = enabled;
    };


    var orgOptionsApply = ko.bindingConventions.conventionBinders.options.apply;
    ko.bindingConventions.conventionBinders.options.apply = function(name, element, bindings, options, type, data, viewModel) {
        orgOptionsApply(name, element, bindings, options, type, data, viewModel)

        if (options.length === 0 || options[0]["name"]) {
            bindings.optionsText = function() { return "name"; };
        }
    };

    ko.bindingHandlers.modal = {
        init: function(element, valueAccessor) {
            valueAccessor().subscribe(function(value) {
            if(value) {
                setTimeout(function () {
                new MochaUI.Window({
                    title: "RSS auto download",
                    content: element,
                    storeOnClose: true,
                    addClass: 'windowFrame', // fixes iframe scrolling on iOS Safari
                    scrollbars: true,
                    maximizable: false,
                    closable: true,
                    paddingVertical: 0,
                    paddingHorizontal: 0,
                    onClose: function() {
                        valueAccessor()(null);
                    }
                });
                }, 0);
            }
            });

        }
    }


    ko.applyBindings(new Model(), button)
})();

Chamar setRule com determinados urls afetadosFeeds parece confundir qbitTorrent, ele não salva o feed afetado na regra, ele também ativa a regra, embora eu opte por não fazê-lo.

Url (dados periódicos editados)

" https://xxx.org/rss/feed?passkey=xxxx&feed=dl&type_origin=1&cats [] = 1c1c3 & cats [] = 1c1c6 & cats [] = 2c1c3 & cats [] = 2c1c6"

Eu atualizei o script acima para levar em consideração o comportamento / bugs inesperados com a API atual.
Também não renomeie seus feeds, mantenha o nome em sincronia com o URL

Oi! Em primeiro lugar, obrigado Anders pelo script. Mas eu tentei e talvez eu tenha feito algo errado porque tudo que vejo é um "RSS" laranja no menu superior (veja a captura de tela), que quando eu clico, aparece uma janela pop-up que realmente não me permite fazer nada ... o que devemos ver e onde? Não consegui encontrar mais nada. (Aliás, quando clico em "Adicionar" nada acontece e o menu suspenso está vazio e não pode ser editado)

Desde já, obrigado!

image

Olá @jadazul, obrigado.

Deve ser parecido com,
Rss

Foi testado em relação à interface de usuário da Web v4.1.1

Pode ser necessário ter um feed definido para que ele funcione, é apenas uma IU para regras. SE você tiver um feed RSS, mas não tiver regras, pressione Adicionar e poderá preencher os campos. Embora haja um bug no 4.1.1, então você não pode salvar regras que contenham feeds de url longos como meu exemplo na postagem acima

Embora haja um bug no 4.1.1, então você não pode salvar regras que contenham feeds de url longos como meu exemplo na postagem acima

Tem certeza de que seu script envia o URL do feed no mesmo formato que você usou ao adicionar o feed no qBittorrent?

@glassez

Eu uso o URL retornado de

api / v2 / rss / items

Obrigado novamente @AndersMalmgren

Como instalei o qBittorrent-nox em um servidor Ubuntu sem comando, não consegui encontrar uma maneira de adicionar um único feed RSS ... Eu li o Wiki da API, mas não há muitos exemplos de como fazer isso ... Tentei usar curl no terminal ssh, logando funciona e me passa um cookie, mas não usando o / api / v2, que não funciona, sempre recebo um erro 404 e não consigo encontrar nenhum exemplo de como faça isso corretamente, então desisti e tentei seu script (mas agora eu entendo que é apenas para gerenciar feeds existentes).

Existe alguma maneira de adicionar o feed para que eu possa usar seu script para gerenciá-lo mais tarde? Mesmo se estiver modificando manualmente alguns arquivos de configuração, eu só preciso encontrar uma maneira de fazer isso ...

Obrigado novamente!

Posso ver isso mais tarde, acabei de criar para dar suporte ao meu caso de uso que é adicionar regras aos feeds existentes

Editar: você verificou se há erros no console

Desculpe, acabei de ver sua edição ao verificar isso.

Sempre que tento com o curl, recebo o erro 404 e não muitos mais detalhes ...

Você está no 4.1.1? A API RSS foi adicionada em 4.1

Sim, instalei o qBittorrent-nox v4.1.1 em um servidor Ubuntu sem cabeça 18.04

Edit: risque isso, acabei de verificar e até pensei que tinha a última versão (porque usei o apt-get do Ubuntu, suponho que fosse a última versão), instalei a v4.0.3 em vez ... Meu mal, eu tentarei instalar a versão mais recente em breve. Obrigado por sua ajuda de qualquer maneira!

setRule ainda não está funcionando em 4.1.2

+1

setRule ainda não está funcionando na versão 4.1.3, aqui está um vídeo que criei, você pode ver que tudo dá errado quando tento definir uma url de feed

https://youtu.be/t_w9epoyxC8

@AndersMalmgren lembre-se de que você pode inserir o lado do servidor de melhorias webui em vez de usar Tampermonkey via Alt WebUI https://github.com/qbittorrent/qBittorrent/wiki/Alternate-WebUI-usage

setRule ainda não está funcionando na versão 4.1.3, aqui está um vídeo que criei, você pode ver que tudo dá errado quando tento definir uma url de feed

https://youtu.be/t_w9epoyxC8

O protocolo foi alterado. Não me lembro exatamente qual, pois fiz a modificação há algum tempo. Por favor, verifique.

`

// ==UserScript==
// <strong i="11">@name</strong>         qbittorrent rss
// <strong i="12">@namespace</strong>    http://tampermonkey.net/
// <strong i="13">@version</strong>      0.1
// <strong i="14">@description</strong>  Adds rss rule window to qBittorent web UI
// <strong i="15">@author</strong>       Anders Malmgren
// <strong i="16">@match</strong>        
// <strong i="17">@grant</strong>        none
// <strong i="18">@require</strong>      http://knockoutjs.com/downloads/knockout-3.4.2.js
// <strong i="19">@require</strong>      http://andersmalmgren.github.io/Knockout.BindingConventions/src/Knockout.BindingConventions.js
// ==/UserScript==
(function() {
    var modalTemplate = '<div>\
<select data-name="rules"></select>\
<button data-name="addRule">Add</button>\
<button data-name="deleteSelectedRule">Delete</button>\
<div data-name="selectedRule">\
    <div><label><input data-name="enabled"/>Enabled</label></div>\
    <div><label>Name</label><input data-name="name" /></div>\
    <div><label>Must contain</label><input data-name="mustContain" /></div>\
    <div><label>Must NOT contain</label><input data-name="mustNotContain" /></div>\
    <div><label>Assigned Category</label><input data-name="assignedCategory" /></div>\
    <div><label>Save path</label><input data-name="savePath" /></div>\
    <label>Feeds</label>\
    <div data-name="feeds">\
        <div><label><input data-name="enabled"/><span data-name="name"></span></label></div>\
    </div>\
    <button data-name="save">Save</button>\
</div>\
</div>'

    var button = new Element("a", { html: "RSS<div data-name='modal' data-bind='modal: modal'>" + modalTemplate + "</div>"});
    button.setAttribute("data-bind", "click: showRss");

    var feeds = null;
    new Request.JSON({
            url:  new URI('api/v2/rss/items'),
            noCache: true,
            method: 'get',
            onFailure: function() {
            //TODO: error handling
            },
            onSuccess: function(response) {
            feeds = Object.keys(response).map(function(key) { return { name: key, url: response[key] != "" ? response[key]["url"] : key }; })
            }
        }).send();

    $("mochaToolbar").append(button);

    var Model = function() {
        this.modal = ko.observable().extend({notify: 'always'});;
        this.modal.subscribe(function(value) { console.log(value);});
    };

    Model.prototype = {
        showRss: function() {
            if(this.modal() == null) {
                this.modal(new RssModel());
            }
        }
    };

    var RssModel = function() {
    this.rules = ko.observableArray();
    this.selectedRule = ko.observable();

    this.listRules();
    this.canDeleteSelectedRule = ko.computed(function() { return this.selectedRule() != null }, this);
    };

    RssModel.prototype = {
        listRules: function() {
var url = new URI('api/v2/rss/rules');
        var request = new Request.JSON({
            url: url,
            noCache: true,
            method: 'get',
            onFailure: function() {
            //TODO: error handling
            },
            onSuccess: function(response) {
            this.rules(Object.keys(response).map(function(key) { return new Rule(key, response[key]); }));
            }.bind(this)
        }).send();
        },
        addRule: function() {
            this.rules.push(new Rule("Untitled", { enabled: false, mustContain: "", mustNotContain: "",assignedCategory: "", savePath: "", affectedFeeds: []}));
        },
        deleteSelectedRule: function() {
            var rule = this.selectedRule();
            var url = new URI('api/v2/rss/removeRule');
            url.setData('ruleName', rule.name());
            new Request.JSON({
            url: url,
            noCache: true,
            method: 'get',
            onFailure: function(response) {
                //Unpexted behaviour, eror with status 200 trigger, why?
                if(response.status !== 200) {
                    throw "Error deleting rule";
                }
                this.rules.remove(rule);

            }.bind(this)
            }).send();

        }
    };

    var Rule = function(name, data) {
        this.name = ko.observable(name);
        this.enabled = data.enabled;
        this.mustContain = data.mustContain;
        this.assignedCategory = data.assignedCategory;
        this.mustNotContain = data.mustNotContain;
        this.savePath = data.savePath;
        this.feeds = feeds.map(function(f) { return new Feed(f, data.affectedFeeds.indexOf(f.url) >= 0)});

        this.data = data;

        this.canSave = ko.observable(true);
    };

    Rule.prototype = {
    save: function() {
            var toSave = Object.assign({}, this.data);

            for (var key in toSave) {
            if (this.hasOwnProperty(key)) {
                    toSave[key] = ko.utils.unwrapObservable(this[key]);
            }
            }

            toSave.affectedFeeds = this.feeds.filter(function(f) { return f.enabled; }).map(function(f) { return f.url; });
            var json = ko.toJSON(toSave);
            var dirty = ko.toJSON(this.data) !== json;

            if(!dirty) return;

            var url = new URI('api/v2/rss/setRule');
            url.setData('ruleName', this.name());
            url.setData("ruleDef", json);

            this.canSave(false);
            var request = new Request.JSON({
            url: url,
            noCache: true,
            method: 'get',
            onFailure: function(response) {
                //Unpexted behaviour, eror with status 200 trigger, why?
                if(response.status !== 200) {
                    throw "Error saving rule";
                }

                this.data = toSave;
                this.canSave(true);
            }.bind(this)
            }).send();
    }
    };

    var Feed = function(data, enabled) {
    this.name = data.name;
    this.url = data.url;
    this.enabled = enabled;
    };


    var orgOptionsApply = ko.bindingConventions.conventionBinders.options.apply;
    ko.bindingConventions.conventionBinders.options.apply = function(name, element, bindings, options, type, data, viewModel) {
        orgOptionsApply(name, element, bindings, options, type, data, viewModel)

        if (options.length === 0 || options[0]["name"]) {
            bindings.optionsText = function() { return "name"; };
        }
    };

    ko.bindingHandlers.modal = {
        init: function(element, valueAccessor) {
            valueAccessor().subscribe(function(value) {
            if(value) {
                setTimeout(function () {
                new MochaUI.Window({
                    title: "RSS auto download",
                    content: element,
                    storeOnClose: true,
                    addClass: 'windowFrame', // fixes iframe scrolling on iOS Safari
                    scrollbars: true,
                    maximizable: false,
                    closable: true,
                    paddingVertical: 0,
                    paddingHorizontal: 0,
                    onClose: function() {
                        valueAccessor()(null);
                    }
                });
                }, 0);
            }
            });

        }
    }


    ko.applyBindings(new Model(), button)
})();

`

@ rqi14 você fez alguma alteração no meu código que postou acima?

Eu me lembrei de que algo mudou há um tempo, era o formato em que os URLs estavam listados, se bem me lembro, o setRules ainda leva uma série de strings de URL.

@ rqi14 você fez alguma alteração no meu código que postou acima?

Eu me lembrei de que algo mudou há um tempo, era o formato em que os URLs estavam listados, se bem me lembro, o setRules ainda leva uma série de strings de URL.

Sim eu fiz. Não me lembro que modificação fiz como disse. Mas agora está funcionando.

@ rqi14 Eu comparei nossas duas versões em uma ferramenta de comparação e sim, sua mudança eu já fiz. Eles mudaram o formato dos urls do feed retornados de api / v2 / rss / items

Quando eu uso o VNC e a GUI normal ou apenas copio as configurações com feeds RSS já configurados de uma máquina executando a GUI, posso interromper o qbittorrent e iniciar o qbittorrent-nox e ele pegará isso? Em outras palavras: falta apenas a GUI ou todo o conjunto de recursos?

Então, se entendi corretamente, temos que adicionar o feed RSS por nossa conta e ele não será adicionado ao webui?

Quando eu uso o VNC e a GUI normal ou apenas copio as configurações com feeds RSS já configurados de uma máquina executando a GUI, posso interromper o qbittorrent e iniciar o qbittorrent-nox e ele pegará isso? Em outras palavras: falta apenas a GUI ou todo o conjunto de recursos?

Aparentemente, apenas a GUI está faltando, mudei para -nox para testar antes que um torrent que eu estava esperando fosse publicado e foi baixado automaticamente com sucesso.

alguma idéia de quando a adição de GUI é direcionada?

Ei pessoal, aqui está minha versão mais recente da minha IU de regra de rss.
Agora ele usa postagens para todas as solicitações que alteram dados. Como um bônus, ele funciona com todos os urls de feed (é um bug em como o qbittorrent analisa caminhos de solicitações get atualmente).
Atualmente, esta IU só oferece suporte a regras, você não pode adicionar feeds, etc. Mas sinta-se à vontade para adicioná-lo você mesmo

// ==UserScript==
// <strong i="8">@name</strong>         qbittorrent rss
// <strong i="9">@namespace</strong>    http://tampermonkey.net/
// <strong i="10">@version</strong>      0.1
// <strong i="11">@description</strong>  Adds rss rule window to qBittorent web UI
// <strong i="12">@author</strong>       Anders Malmgren
// <strong i="13">@match</strong>        http://winserver:8080
// <strong i="14">@match</strong>        http://localhost:8080/
// <strong i="15">@grant</strong>        none
// <strong i="16">@require</strong>      http://knockoutjs.com/downloads/knockout-3.4.2.js
// <strong i="17">@require</strong>      http://andersmalmgren.github.io/Knockout.BindingConventions/src/Knockout.BindingConventions.js
// ==/UserScript==

(function() {
    var modalTemplate = '<div>\
   <select data-name="rules"></select>\
   <button data-name="addRule">Add</button>\
   <button data-name="deleteSelectedRule">Delete</button>\
   <div data-name="selectedRule">\
      <div><label><input data-name="enabled"/>Enabled</label></div>\
      <div><label>Name</label><input data-name="name" /></div>\
      <div><label>Must contain</label><input data-name="mustContain" /></div>\
      <div><label>Must NOT contain</label><input data-name="mustNotContain" /></div>\
      <div><label>Save path</label><input data-name="savePath" /></div>\
      <label>Feeds</label>\
      <div data-name="feeds">\
          <div><label><input data-name="enabled"/><span data-name="name"></span></label></div>\
      </div>\
      <button data-name="save">Save</button>\
   </div>\
</div>'

    var button = new Element("a", { html: "RSS<div data-name='modal' data-bind='modal: modal'>" + modalTemplate + "</div>"});
    button.setAttribute("data-bind", "click: showRss");

    var feeds = null;
    new Request.JSON({
            url:  new URI('api/v2/rss/items'),
            noCache: true,
            method: 'get',
            onFailure: function() {
               //TODO: error handling
            },
            onSuccess: function(response) {
               feeds = Object.keys(response).map(function(key) { return { name: key, url: response[key] != "" ? response[key] : key }; })
            }
        }).send();

    $("mochaToolbar").append(button);

    var Model = function() {
        this.modal = ko.observable().extend({notify: 'always'});;
        this.modal.subscribe(function(value) { console.log(value);});
    };

    Model.prototype = {
        showRss: function() {
            if(this.modal() == null) {
                this.modal(new RssModel());
            }
        }
    };

    var RssModel = function() {
      this.rules = ko.observableArray();
      this.selectedRule = ko.observable();

      this.listRules();
      this.canDeleteSelectedRule = ko.computed(function() { return this.selectedRule() != null }, this);
    };

    RssModel.prototype = {
          listRules: function() {
var url = new URI('api/v2/rss/rules');
        var request = new Request.JSON({
            url: url,
            noCache: true,
            method: 'get',
            onFailure: function() {
               //TODO: error handling
            },
            onSuccess: function(response) {
               this.rules(Object.keys(response).map(function(key) { return new Rule(key, response[key]); }));
            }.bind(this)
        }).send();
        },
        addRule: function() {
            this.rules.push(new Rule("Untitled", { enabled: false, mustContain: "", mustNotContain: "", savePath: "", affectedFeeds: []}));
        },
        deleteSelectedRule: function() {
            var rule = this.selectedRule();
            var url = new URI('api/v2/rss/removeRule');
            new Request.JSON({
               url: url,
               noCache: true,
               method: 'post',
               data: { ruleName: rule.name() },
               onFailure: function(response) {
                   //Unpexted behaviour, eror with status 200 trigger, why?
                   if(response.status !== 200) {
                       throw "Error deleting rule";
                   }
                   this.rules.remove(rule);

               }.bind(this)
            }).send();

        }
    };

    var Rule = function(name, data) {
        this.name = ko.observable(name);
        this.enabled = data.enabled;
        this.mustContain = data.mustContain;
        this.mustNotContain = data.mustNotContain;
        this.savePath = data.savePath;
        this.feeds = feeds.map(function(f) { return new Feed(f, data.affectedFeeds.indexOf(f.url.url) >= 0)});

        this.data = data;

        this.canSave = ko.observable(true);
    };

    Rule.prototype = {
       save: function() {
            var toSave = Object.assign({}, this.data);

            for (var key in toSave) {
               if (this.hasOwnProperty(key)) {
                    toSave[key] = ko.utils.unwrapObservable(this[key]);
               }
            }

            toSave.affectedFeeds = this.feeds.filter(function(f) { return f.enabled; }).map(function(f) { return f.url; });
            var json = ko.toJSON(toSave);
            var dirty = ko.toJSON(this.data) !== json;

            if(!dirty) return;

            var url = new URI('api/v2/rss/setRule');

            this.canSave(false);
            var request = new Request.JSON({
               url: url,
               noCache: true,
               method: 'post',
               data: { ruleName: this.name(), ruleDef: json },
               onFailure: function(response) {
                   //Unpexted behaviour, eror with status 200 trigger, why?
                   if(response.status !== 200) {
                       throw "Error saving rule";
                   }

                   this.data = toSave;
                   this.canSave(true);
               }.bind(this)
            }).send();
       }
    };

    var Feed = function(data, enabled) {
       this.name = data.name;
       this.url = data.url.url;
       this.id = data.url.uid;
       this.enabled = enabled;
    };


    var orgOptionsApply = ko.bindingConventions.conventionBinders.options.apply;
    ko.bindingConventions.conventionBinders.options.apply = function(name, element, bindings, options, type, data, viewModel) {
        orgOptionsApply(name, element, bindings, options, type, data, viewModel)

        if (options.length === 0 || options[0]["name"]) {
            bindings.optionsText = function() { return "name"; };
        }
    };

    ko.bindingHandlers.modal = {
        init: function(element, valueAccessor) {
            valueAccessor().subscribe(function(value) {
            if(value) {
                setTimeout(function () {
                new MochaUI.Window({
                    title: "RSS auto download",
                    content: element,
                    storeOnClose: true,
                    addClass: 'windowFrame', // fixes iframe scrolling on iOS Safari
                    scrollbars: true,
                    maximizable: false,
                    closable: true,
                    paddingVertical: 0,
                    paddingHorizontal: 0,
                    onClose: function() {
                        valueAccessor()(null);
                    }
                });
                }, 0);
            }
            });

        }
    }


    ko.applyBindings(new Model(), button)
})();

Ok pessoal, bifurquei qbittorrent. Agora você pode adicionar minha UI de regras RSS usando o método webui alternativo. Aqui está o meu repo

https://github.com/AndersMalmgren/qBittorrent

Instruções para IU alternativa
https://github.com/qbittorrent/qBittorrent/wiki/Alternate-WebUI-usage

@AndersMalmgren por que você não abre um PR para essa mudança?

@Piccirello Algumas razões, primeiro eu uso um mecanismo MVVM chamado Knockout, não tenho certeza se a equipe principal deseja adicionar outro mecanismo à mistura. Em segundo lugar, não há suporte a idioma. Terceiro, seus visuais não são coerentes com o resto da IU e, por último, preciso limpá-lo. : D

Hoje é o aniversário de 5 anos dessa solicitação de recurso aqui no github.

É possível obter algum feedback sobre os planos futuros das equipes para RSS e webui.

É possível obter algum feedback sobre os planos futuros das equipes para RSS e webui.

O feedback não mudou durante estes 5 anos. Ele será implementado assim que houver um desenvolvedor web que queira contribuir com ele.

Nesse ínterim, minha IU alternativa faz o trabalho :)

Eu sou um desenvolvedor web e estou disposto a trabalhar nisso (eu mesmo quero muito esse recurso). Realmente não sei quando / se serei capaz de terminá-lo, já que não estou familiarizado com a base de código.

@alexiooo quando se trata de métodos RSS Web API, você pode conferir meu branch como usá-los

@alexiooo , você também pode entrar em contato com @Piccirello. Ele tem trabalhado muito em nosso cliente web ultimamente. Talvez ele tenha alguma experiência em implementação de RSS. Pelo menos ele pode ajudar com a base de código.

+1

@Piccirello @glassez @ngosang @buinsky
Esta parece ser uma solicitação de longa duração e muito popular, seria possível adicioná-la a um marco.
obrigado

Simplesmente não tenho tempo para fazer isso agora. Eu nem tive a chance de abordar os comentários sobre meus PRs existentes.

O fato é que temos apenas um desenvolvedor web. Precisamos de mais apoio da comunidade para fazer isso.

@alexiooo Como @glassez mencionou, sinta-se à vontade para

@Piccirello Existe alguma orientação sobre compatibilidade do navegador? Eu quero usar alguns recursos do ES6, especificamente Classes ( https://caniuse.com/#feat = es6-class)

Isso é algo que precisamos decidir há algum tempo. Sei que discutimos esse tópico em outras edições / prs, mas não consigo lembrar onde.

Por outro lado, temos classes mocha que provavelmente realizarão tudo o que você precisa das classes ES6. Por outro lado, as classes ES6 são suportadas por todos os navegadores que nossos usuários provavelmente usam, exceto o IE11. Não gosto do IE11 tanto quanto qualquer pessoa, mas não quero encerrar o suporte sem um bom motivo. O verdadeiro problema é que não temos nenhum tipo de métrica para saber quais navegadores nossos usuários estão usando.

Edit: Eu encontrei este post de @ Chocobo1 , com o qual concordo em grande parte.

Não acho que muitas pessoas estejam usando o IE11, até a Microsoft diz para não usá-lo https://techcommunity.microsoft.com/t5/Windows-IT-Pro-Blog/The-perils-of-using-Internet-Explorer- como-seu-navegador-padrão / ba-p / 331732

Seria possível optar por métricas, que podem ser habilitadas nas configurações e registrar estatísticas anônimas para coisas como essa?

Esse é um ponto justo. Parece que o IE ainda comanda entre 5 e 10% do mercado de navegadores para desktop, dependendo da sua fonte . 10% parece muito alto, e eu hesitaria em encerrar o suporte para tantos usuários.

Mas, talvez 4.2.0 seja um bom momento para fazer a mudança para es6. Os usuários do IE terão que permanecer no 4.1 ou usar um navegador moderno. Não quero tomar essa decisão sozinho. @ Chocobo1 o que você

Esses 10% também incluiriam usuários mais velhos que nem sabem o que é torrent. Acho que no que diz respeito aos usuários do qBittorrent o nunber usando o IE seria bem menor, mas é impossível dizer sem nenhuma estatística de usuários do qBittorrent.

Muitos usuários do qBittorrent mudaram para ele devido a problemas com o uTorrent, e se eles estão cientes dos perigos do uTorrent para mover para o qBittorrent ENTÃO vá para as configurações e configure-o para ser acessível através de um webgui Eu duvido que eles ainda use o IE.

Mas estou apenas supondo que não tenho nenhum número real para disparar.

Adicionar métricas é um salto bastante grande a curto prazo (especialmente em um mundo pós-GDPR), mas presumindo que haja pelo menos uma versão entre agora e quando você descartar o suporte do navegador, isso lhe dá a oportunidade de codificar em um aviso de fim de vida. Dessa forma, você pode direcionar mensagens especificamente para os navegadores afetados e dar uma cutucada nos usuários.

Dado que esse empurrão ajuda os usuários a perceberem que sua escolha de navegador tem implicações de segurança mais amplas do que apenas qB ... e coloca um alerta bem na frente deles, o que as métricas e as notícias nunca farão, essa talvez seja uma abordagem melhor.

mas não quero largar o suporte sem um bom motivo.

A maneira como eu penso é: ter classes ES6 é tão significativo que queremos descartar o suporte ao IE11? Não estou totalmente certo ...
Mesmo se a resposta for positiva, IMO ainda é muito cedo para fazer a mudança na série v4.2.x, eu concordo com https://github.com/qbittorrent/qBittorrent/issues/453#issuecomment -475126288 que devemos tenha um aviso de fim de linha com antecedência (pelo menos para algumas versões). Se alguém quiser realizá-lo, registre outro problema (ou PR) e vamos discutir lá.

Alternativamente, podemos usar o Babel para a transpilação. Estamos presos a uma etapa de compilação de qualquer maneira, então ela não terá tanto impacto. Dessa forma, podemos usar ES6 e oferecer suporte ao IE ao mesmo tempo.

Texto datilografado pode ser usado. Ele irá compilar para objetos de protótipo padrão

O typescript é possível, sim, mas eu apenas quis dizer transpilar o javascript ES6 simples para o javascript que será executado no IE.

Sim, mas como você precisa dessa etapa de construção extra, você pode muito bem digitar e se beneficiar da segurança de digitação

Se isso não for possível atualmente, que tal uma opção de "cliente" para a IU do servidor X, para que possamos executar qbittorrent-nox e a IU separadamente? O Deluge faz algo assim: a IU principal também pode atuar como um cliente para o servidor, então você pode ter o servidor rodando em uma máquina sem tela e controlá-lo remotamente de outro computador.

Nesse ínterim, minha IU alternativa faz o trabalho :)

@AndersMalmgren
Eu adoraria ter instruções sobre como implantar sua IU alternativa com uma instalação do Windows do qBittorrent.
Ou seja, baixe XXX para uma pasta, aponte o qBittorrent "IU da web alternativa do usuário" para essa pasta.
Eu posso ver que você postou script em um comentário acima e também fez um fork.
Posso copiar o script da sua postagem, salvá-lo em um arquivo com um determinado nome de arquivo (por favor, diga-me como ele deve ser chamado!) E, em seguida, apontar a IU da web alternativa do qBittorrent para a pasta que contém esse arquivo?
Muito obrigado por fornecer isso à comunidade.

@bakertony
Olá, primeiro certifique-se de que você está no branch 4.1.x.

src\webui\www todos aqueles devem ir para uma pasta em seu computador local. Certifique-se também de copiar src\icons para src\webui\www\public\images

@bakertony
Olá, primeiro certifique-se de que você está no branch 4.1.x.

src\webui\www todos aqueles devem ir para uma pasta em seu computador local. Certifique-se também de copiar src\icons para src\webui\www\public\images

Obrigado por isso!
Apenas para realmente explicar aos outros:
1) Eu fui para https://github.com/AndersMalmgren/qBittorrent
2) Fiz o download (clique em "clonar ou baixar")
3) copiei a pasta "qBittorrent-mastersrc \ webui \ www" para um local no meu computador
4) Criei uma pasta de imagens em "www \ public" na pasta copiada no meu computador
5) copiou o conteúdo de "qBittorrent-mastersrc \ icons" para "www \ public \ images"
6) Em qBittorrent "configurações -> IU da Web -> Usar IU da Web alternativa", configurei o local dos arquivos como a pasta www, cliquei em OK
7) naveguei até " http: // localhost : 8080" para ver a nova IU

Posso ver que há um novo ícone "RSS" na barra de ferramentas, permitindo-me ver os downloads automáticos RSS existentes.
Isso é muito legal, obrigado por isso.
Infelizmente, eu esperava ver a guia RSS completa, ou seja, ver o conteúdo do feed RSS e baixar torrents adicionais conforme necessário: - / Esperando que um dia chegue uma atualização do qBittorrent!

@bakertony Olá, parece que api / v2 / rss / items? withData = true deve ser capaz de fornecer esses dados. não tentei embora.
https://github.com/qbittorrent/qBittorrent/wiki/Web-API-Documentation#get -all-items

Então você pode ser capaz de usar o método add torrent para adicionar um torrent

https://github.com/qbittorrent/qBittorrent/wiki/Web-API-Documentation#add -new-torrent

@bakertony Consertei uma IU para download. Certifique-se de usar o branch 41x se você estiver na versão para download do qbittorrent. O mestre é se você construir o código do mestre

https://github.com/AndersMalmgren/qBittorrent/tree/v4_1_x

Muito obrigado por isso @AndersMalmgren. No entanto, não funciona como em uma instância HTTPS qb, pois você tenta obter duas libs js de uma fonte HTTP. Isso é bloqueado pelo navegador, pois são de origem cruzada. Simplesmente mudar o http para https corrige isso. Idealmente, as libs devem ser empacotadas com a WebUI, eu acho.

Além disso, com a IU alternativa selecionada, todas as solicitações de ícones / imagens na IU falham com err 500. Não tenho certeza porque, eles estão todos no local correto no sistema de arquivos. Sem erros no qbittorrent ou nginx ... estranho.

Meu maior problema é que não consigo adicionar novos feeds RSS. Existe uma maneira de inseri-los no armazenamento de configuração qb de alguma forma?

Você poderia escolher este recurso para a versão compatível com Raspberry Pi 2? obrigado

@AndersMalmgren ,

@AndersMalmgren , na verdade era apenas um complemento NoScript bloqueando o javascript de seu repo e knockoutjs. Depois de permitir, ele funciona.

@AndersMalmgren , a API ainda não suporta a configuração (inteligente) de filtragem de episódios ou você simplesmente não se preocupou em incluí-la?

@Ingvix Só adicionou aqueles que eu mesmo uso.

https://github.com/qbittorrent/qBittorrent/wiki/Web-API-Documentation#set -auto-Download-rule

@AndersMalmgren , tudo bem, obrigado. Acho que vou tentar ver se consigo fazer sozinho.

Como isso ainda não foi adicionado? Esta solicitação de recurso tem 6 anos. Vamos! É uma parte essencial de qualquer cliente bittorrent.

Sim Owen! Com tanto quanto pagamos por isso, é ultrajante que você ainda não tenha codificado e enviado !!
Como você coloca um <</ sarcasmo>>?

Já coloquei um mais nisto, mas também estou feliz em colocar meu dinheiro onde está minha boca, e contribuiria para uma recompensa por este!

Meh vou continuar a usar utorrent 3.3 para linux de vários anos atrás até que este recurso esteja completo.

Nossa ... 6 anos

Sim, eu desistiria de esperar se eu fosse você.

+1

Parece meio sem sentido, mas vou adicionar meu +1 a este pedido ... então, continue usando o uTorrent e checando a cada dois anos para ver se há algum progresso. Dito isso, percebo que é um produto gratuito e agradeço que ele faça o que faz, embora se for apoiado por publicidade, fazer com que as pessoas desta lista migrem aumentará essa receita ...

@WilliCJ como na terra isso é inútil? Rtorrent é a única IU que apresenta gerenciamento RSS completo E é de código aberto. É amplamente utilizado.

Desculpe, @owenashurst, não devo ter sido claro, o que eu quis dizer é que é inútil adicionar meu pequeno pedido "+1" a um pedido de um tópico não acionado que já tem 6 anos. Eu tenho que me desculpar, obviamente, eu coloquei no lugar errado porque eu nem percebi que havia um aplicativo Rtorrent. Você está recomendando isso em vez de uTorrent e qBittorrent?

@WilliCJ haha ok, sim Rtorrent é um aplicativo baseado em Linux, tem uma IU chamada Rutorrent e há um plugin RSS que é comumente instalado por padrão. Qbittorent é uma plataforma cruzada, entretanto, não tenho certeza se o Rtorrent foi compilado cruzado.

Obrigado @owenashurst , acabei de verificar e parece que o Rtorrent ainda é apenas Linux e, como estou executando uma plataforma Windows na caixa que estou usando, não vai funcionar para mim. Obrigado mesmo assim! Considerando isso, porém, eu ainda gostaria de colocar minha mão para cima para tornar os feeds RSS e opções de filtros do qBittorrent acessíveis através do webui na lista de dev!

6 anos de espera é muito tempo para um recurso para mim.
Qualquer cliente de torrent alternativo com suporte a Linux, docker, rss e webui?

@ Haxy89 se você leu os comentários anteriores, mencionei o Rtorrent que é um cliente bittorrent baseado em Linux e a IU da web (Rutorrent) que você instala separadamente tem um plugin com suporte RSS que todos os tutoriais online incluem como padrão. Há também um contêiner docker que contém tudo de qualquer maneira.

@owenashurst @ Haxy89 @WilliCJ vocês experimentaram a implementação altWebUI em https://github.com/qbittorrent/qBittorrent/issues/453#issuecomment -483063942 + https://github.com/qbittorrent/qBittorrent/issues/453# issuecomment -483342384?

@WolfganP Eu não tentei ainda não, desde que ele possa gerenciar feeds RSS em adicionar / editar / excluir, então isso é muito bom. Eu vi que você não consegue ver / baixar torrents perdidos do feed RSS, mas isso não é muito importante.

@WolfganP
Só tentei, mas ...
obraz

Nada para fazer aqui...

Vou lutar com RTorrent

@ Haxy89 Sim, não é possível adicionar feeds da webUI. Não tive vontade de pesquisar uma nova solução, então recompilei o qbittorrent com a IU normal incluída e adicionei esses feeds via SSH e encaminhamento X11. Além disso, algumas opções para download automático não foram incluídas, então se for necessário configurá-las, será necessário usar o X11-forwarding novamente ou editar os arquivos de configuração manualmente. É meio chato, mas não é como se eu ainda precisasse abrir a IU normal com muita frequência e qBittorrent tem a melhor extensão de navegador para adicionar novos torrents na hora, para que eu possa suportar a situação.

@WolfganP
Só tentei, mas ...
obraz

Nada para fazer aqui...

O que o console diz? Algo não está configurado corretamente. Certifique-se de estar no branch 4.1.x btw.

editar: Atualmente você precisa configurar seus feeds a partir da IU do desktop. Mas eu tenho uma versão que pode configurar feeds também. Mas é um pouco bugado

@WolfganP

Não estou usando um desktop.
Seria ótimo ter a possibilidade de configurar tudo da Web como no RTorrent

@ Haxy89 @AndersMalmgren Tenho o mesmo problema na guia Feeds estar vazia, mesmo se já houver um feed definido, mas não tive tempo para solucionar o problema adequadamente. Exemplo de rss / feeds.json:

{
    "The Pirate Bay - Video": {
        "uid": "{ad569ad7-ea3e-4bb5-8c85-a43215b5d352}",
        "url": "https://thepiratebay.org/rss//top100/200"
    }
}

Como estou trabalhando com uma construção mestre, um problema pode ser que a bifurcação altWebUI de @AndersMalmgren está muito atrás do estado da WebUI atual. Talvez @Piccirello (também conhecido como mestre WebUI :-) possa sugerir uma maneira de seguir em frente e ajudar a solucionar problemas.

@wolfganp Eu só testei em 4.1.5, atualizará para 1.7 e veja

@WolfganP funciona em 4.1.7 para mim

btw, não há função API para forçar uma busca RSS. Portanto, você precisa adicionar uma regra automática ao seu feed. caso contrário, a guia Feeds estará vazia, embora deva exibir o nome do feed na guia Feeds.

Atualizei meu branch 4.1.x com uma IU de gerenciamento de feed básica

image

@AndersMalmgren funciona bem para mim agora (apenas lista de feeds testada, não outra funcionalidade). Muito obrigado!

BTW, na linha 39 do rss.js você provavelmente precisará atualizar o formato do ícone RSS para svg : src='images/qbt-theme/rss-config.svg'

@WolfganP Você precisa usar os ícones de 4.1.x. Lá o ícone é um png

@owenashurst @ Haxy89 @WilliCJ vocês experimentaram a implementação altWebUI de # 453 (comentário) + # 453 (comentário) ?

@WolfganP eu tenho agora, e o botão "Regras de RSS" em si não aparece corretamente (provavelmente fiz algo errado, mas pensei que tinha seguido as instruções), mas parece que me permite acessar e editar o RSS regras de download automático e veja os feeds RSS existentes, mas não os adicione / edite.

Verifique se há erros no console

Verifique se há erros no console

Desculpe @AndersMalmgren , não consigo ver nenhum erro que pareça estar relacionado ao webui.

Minha instalação original do qBittorrent foi simplesmente do instalador baixado do site qBittorent.org, mas agora baixei o clone / zip do github e copiei alguns arquivos que não estavam na pasta "qBittorrent-mastersrc \ icons" do " https://github.com/AndersMalmgren/qBittorrent " clone / zip. O ícone para os feeds RSS agora está lá.

Obrigado Anders e Owen!

... agora só preciso descobrir como fazer o filebot funcionar a partir do qBittorrent!

btw, não há função API para forçar uma busca RSS. Portanto, você precisa adicionar uma regra automática ao seu feed. caso contrário, a guia Feeds estará vazia, embora deva exibir o nome do feed na guia Feeds.

@AndersMalmgren Apenas pensando em voz alta (e não tentei porque estou AFK): talvez uma solução alternativa seja adicionar uma regra que nunca corresponda a nenhum torrent, mas irá acionar a atualização do feed de qualquer maneira?

Eu não sei do que vocês estão falando. Qual API você realmente sente falta?

adicionar uma regra que nunca corresponde a nenhum torrent, mas irá acionar a atualização do feed de qualquer maneira?

Não funciona assim.
Os feeds são atualizados em um intervalo especificado. Quando regras de atualizações de feed são aplicadas a ele.

Precisamos expor essas configurações ao usuário

image

Isso pode ser corrigido com a API atual. Mas a função Atualizar todos os feeds não está presente na API

image

Ou atualize o feed do singel para esse assunto

image

Eu adicionei configurações de feed de rss à guia de configurações de download em meu branch 4.1.x

image

@AndersMalmgren
Alguma configuração para download automático?
Onde os torrents são baixados automaticamente? Pasta de download padrão?
Filtros para download automático apenas de torrents selecionados, etc.?

@ Haxy89 Não foram essas as primeiras mudanças que ele fez em seu repo? Ou pelo menos os anunciados nesta edição. Você pode definir o local de download para cada regra.

@ Haxy89 Esses foram incluídos como @Ingvix diz. As configurações de RSS acima não eram até agora.

Eu adicionei configurações de feed de rss à guia de configurações de download

Você pode fornecer suas alterações como solicitação pull?
Ou é incompatível com o WebUI integrado qBittorrent?

Mas a função Atualizar todos os feeds não está presente na API

Será.

Eu adicionei configurações de feed de rss à guia de configurações de download

Você pode fornecer suas alterações como solicitação pull?
Ou é incompatível com o WebUI integrado qBittorrent?

O único recurso que falta é a tradução. Está codificado por enquanto

https://github.com/AndersMalmgren/qBittorrent/blob/c52de3980f7543248e88f76c09f53da41dc4d63b/src/webui/www/private/preferences_content.html#L236

Ficaria bem mesmo com a tradução faltando, pelo menos poderemos tê-la!

Então consegui fazer funcionar, pelo menos visualmente. No entanto, ele nunca adicionou torrents. Estou assumindo que incluir / não incluir suporta regex? devo digitar com as barras ou sem? se não, não sei como funciona. e você consideraria oferecer suporte a regex?

também depois de mexer nas configurações de rss ele realmente parou de funcionar completamente. ele produz este erro:
Tipo de arquivo inaceitável, apenas arquivo regular é permitido

quando eu vou para o url
Estou usando o debian 10 qbittorrent dos repos. é 4.1.5-1

quando eu modifico as configurações na seção de download, ele desativa a nova interface do usuário e eu tenho que reativá-la (e rezar para que não estrague tudo)

de qualquer forma, gostaria apenas de dizer que você está fazendo o trabalho do senhor. Eu sou muito grato por ter acesso ao rss no webui, mesmo que seja um pouco bugado.

@xrishox Não expus os campos de regex, pois eu mesmo não os uso. Pode consertar. Obrigado :)

você sabe o que significa este erro "Tipo de arquivo inaceitável, apenas arquivo normal é permitido"

às vezes, quando vou para o url do webui que aparece. parece que só pode ser corrigido excluindo o qbittorrent.conf e reiniciando

editar 1:
Não sei se este é um bug específico da minha instalação ou algo que outras pessoas irão encontrar também, então irei postar a solução que funcionou para mim caso outra pessoa tenha o mesmo problema.

https://github.com/qbittorrent/qBittorrent/issues/10503#issuecomment -486923269

"# 10485 renomeou a página de login de login.html para index.html. V4.1.5 ainda procura login.html, mas sua pasta pública contém um index.html. Tente renomear esse arquivo para login.html."

editar 2:

Agora estou tendo um problema estranho em que de vez em quando ele desativa o webui alternativo e tenho que reativá-lo e digitar o caminho alternativo novamente. Não é um grande problema, pois pelo menos funciona, mas não tenho certeza por que está fazendo isso. Também estou recebendo bugs estranhos da interface do usuário que fazem com que os ícones da interface do usuário não apareçam e o texto seja duplicado por algum motivo estranho. Não sei por que isso acontece porque copiei todos os ícones para / private e / public. não prejudica minha capacidade de usar qbittorrent, então não estou particularmente preocupado com isso. apenas relatá-lo aqui para fins de integridade.

e aqui está uma foto das estranhas peculiaridades da interface do usuário https://i.imgur.com/kkdGyzs.png

Eu realmente espero que no ponto em que seja considerado estável e robusto, ele seja mesclado, já que esse é um recurso incrível de se ter.

Mas a função Atualizar todos os feeds não está presente na API
Será.

Obrigado @glassez ! https://github.com/qbittorrent/qBittorrent/pull/11055

você sabe o que significa este erro "Tipo de arquivo inaceitável, apenas arquivo normal é permitido"

Ocorre quando alt webUI está habilitado em * nix e o arquivo solicitado não é um "arquivo normal" (não tenho certeza do que significa exatamente). Provavelmente também quando esse arquivo não existir, então seu tipo não pode ser verificado.

@xrishox Eu expus a opção regex. Está no meu ramo 4,1.x

Eu adicionei configurações de feed de rss à guia de configurações de download em meu branch 4.1.x

Eu o transporto para o mestre qBittorrent (# 11056).
Infelizmente, não posso fazer isso com outro código de @AndersMalmgren , porque é incompatível com nosso código-base.

@glassez é muito antigo para mim :)

Editar: e meu código precisa ser limpo para um lançamento oficial

@AndersMalmgren você teve a chance de tentar https://github.com/qbittorrent/qBittorrent/pull/11055 ? (Permitir atualizar item (ns) RSS via WebAPI)

Legal, habilitei o regex. Ainda não tive um evento em que ele fosse acionado, então espero que funcione.

Tenho algumas sugestões de qualidade de vida, se você estiver aberto a elas. Observe que essas não são solicitações ou demandas, pois na verdade estão funcionando perfeitamente para o meu caso de uso, mas algumas coisas que você pode considerar.

Quando você clica em salvar na página "Download automático", pode salvar as modificações para todos os downloads automáticos que você modificou e não apenas aquele que está em foco no momento. Ou, alternativamente, adicionar um botão Salvar tudo.

Outro recurso que seria útil seria tê-lo de forma que o material que foi baixado automaticamente pudesse ser opcionalmente adicionado a uma categoria / tag onde a categoria / tag é o nome do que foi baixado automaticamente.

@WolfganP Eu não tenho um ambiente C ++ no momento, não trabalho com ele há anos, então não me preocupei em tentar compilá-lo para ser honesto. Acho que está planejado para o marco de 4,2. Mas é uma solução fácil, uma vez que o método de descanso esteja em vigor.

@xrishox Obrigado pelo feedback, posso adicionar um botão Salvar tudo. A categoria parece muito subjetiva e pode não se encaixar. Posso expor o campo da categoria se quiser?

@AndersMalmgren Se ajudar, você pode usar meu Dockerfile para construir facilmente seu código qBittorrent local. Ele também irá construir a libtorrent 1.1 a partir do código-fonte. Ele tem algumas desvantagens agora (você ainda não pode passar na configuração, ele não oferece suporte a compilações incrementais), mas torna muito fácil compilar o qBittorrent.

Compilação do Docker: docker build -t qbittorrent/qbittorrent .
Docker executado: docker run --rm -it -p 8080:8080 qbittorrent/qbittorrent

@Piccirello quando o 4.2 está planejado? Não há razão para eu corrigir isso até que o 4.2 esteja próximo do lançamento

Neste ponto, seu palpite é tão bom quanto o meu.

@Piccirello quando o 4.2 está planejado? Não há razão para eu corrigir isso até que o 4.2 esteja próximo do lançamento

Um beta público de 4.2.0 pode ser lançado nos próximos dias / semana ou dois de acordo com # 10047
Existe uma versão alfa 4.2.0 que foi postada anteriormente e que estou usando desde o final de junho.

Tudo bem, quando a correção RSS estiver em beta, posso implementá-la no meu mestre

Acabei de ter um gatilho de evento rss e a regex parece não funcionar. Copiei do rutorrent exatamente onde funciona e tentei com e sem as barras.

Agora a ação "refreshItem" está disponível no branch v4.1.x.

@glassez posso obter um binário beta em algum lugar? obrigado

Eu não posso esperar para você aperfeiçoar rss ui. @AndersMalmgren Você pode fazer uma solicitação de pull no master?

@ caoli5288 você tentou usar o método altWebUI conforme https://github.com/qbittorrent/qBittorrent/issues/453#issuecomment -483063942? (https://github.com/AndersMalmgren/qBittorrent use o branch 4.1 conforme https://github.com/qbittorrent/qBittorrent/issues/453#issuecomment-483342384)

@WolfganP Funciona, mas não muito perfeito. Diferente do mostrado em https://github.com/qbittorrent/qBittorrent/issues/453#issuecomment -519135601 e difícil para o conteúdo de feeds do navegador.

图片

@ caoli5288 https://github.com/qbittorrent/qBittorrent/issues/453#issuecomment -519135601 não é o webUI, mas o QtUI. Esses comentários estavam relacionados à atualização de feed não disponível na API da web, implementada posteriormente por @glassez em https://github.com/qbittorrent/qBittorrent/pull/11055

Como tá indo? Podemos ver esse recurso no próximo lançamento?

Como tá indo? Podemos ver esse recurso no próximo lançamento?

Você pode tentar isso: https://github.com/miniers/qb-web
mas só tem chinês

Como tá indo? Podemos ver esse recurso no próximo lançamento?

Você pode tentar isso: https://github.com/miniers/qb-web
mas só tem chinês

@miniers obrigado! Você experimentou com o AltWebUI? Acabei de abrir o problema https://github.com/miniers/qb-web/issues/3 para perguntar sobre o uso de strings de tradução existentes.

Sou +1 no RSS. Isso significa que o download de RSS básico está chegando ao qbittorrent-nox?

(duvidoso que seja ignorado a partir de 2013)

Há alguma esperança de ver isso em 4.2? @ Chocobo1 Eu vi que você fez muitas melhorias e acho que essa é a maior coisa que sinto falta no webui :(

+1 Eu uso o qbittorrent há anos e estou procurando ativamente por outro aplicativo de torrent devido à falta de suporte RSS da IU da web no qbittorrent.

wtf 9 anos mais tarde e ainda não reeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee atualização

@ikiddoi Você provavelmente deve ler seu comentário acima e perceber que está em uma versão beta do qbittorrent.

Ref: https://github.com/qbittorrent/qBittorrent/issues/453#issuecomment -549786145

Estou faltando alguma coisa, não estou vendo a opção no WebUI usando qbitorrent-nox da instável (4.2.0 \ ~ 201911110018-6775-8711613 \ ~ ubuntu18.04.1).

Observe com certeza, mas sempre houve um problema de paridade de recursos entre o nox e a versão padrão.

Consertei suporte 4.2 em meu branch master

https://github.com/AndersMalmgren/qBittorrent/tree/master

Ele também tem suporte para atualizar feeds agora. Clique no pequeno ícone de atualização ao lado do nome do feed

Não entendo a lentidão da equipe oficial em lidar com a comunidade.
Veja esses milhares de questões em aberto!
Talvez seja hora de encontrar um substituto para qbittorrent.

Não entendo a lentidão da equipe oficial em lidar com a comunidade.
Veja esses milhares de questões em aberto!
Talvez seja hora de encontrar um substituto para qbittorrent.

É porque eles não têm desenvolvedores. Você é mais do que bem-vindo para contribuir e fornecer soluções para as questões em aberto, mas isso provavelmente não o interessa, pois é um trabalho não remunerado.

Quanto você doou para ajudar a desenvolver os recursos e as correções? Os desenvolvedores trabalham em seu próprio tempo, fazendo trabalho livre, e mesmo que gostássemos que algumas coisas como essa fossem implementadas antes, devemos mostrar gratidão pelo trabalho e esforço que eles colocaram no projeto, ao invés de agir como se fosse nosso direito que eles façam o que quisermos de graça e ficar com raiva deles quando não sacrificam mais de seu tempo por nós.

Inferno, se eu fosse um dos desenvolvedores, começaria a reconsiderar se quero colocar meu tempo e esforço em um projeto quando os usuários do projeto são incrivelmente ingratos.

Uau, o direito neste tópico.

A equipe oficial divulgou um comunicado oficial que simplesmente não
tinham tempo para gastar neste recurso, mas estavam abertos a contribuições de
a comunidade. Fique feliz por finalmente estar chegando aqui ou contribua você mesmo.

Em 14 de novembro de 2019, 12:28:20 caoli5288 [email protected] escreveu:

Não entendo a lentidão da equipe oficial em lidar com a comunidade.
Veja esses milhares de questões em aberto!
Talvez seja hora de encontrar um substituto para qbittorrent.-
Você está recebendo isso porque foi mencionado.
Responda a este e-mail diretamente, visualize-o no GitHub ou cancele a inscrição.

Quanto você doou para ajudar a desenvolver os recursos e correções

@ BradleyDS2 Ouvir a comunidade e tornar o software melhor é uma das éticas do software de código aberto. Como você pode dizer o quanto eu doo?

Você é mais que bem-vindo para contribuir e fornecer soluções para os problemas em aberto

É uma ideia arrogante. O que a maioria dos usuários pode fazer senão reclamar? Olhe para sua conta. Você não contribuiu com uma única linha de código para nenhum projeto. É porque você está feliz com algum projeto? Ou você acha que o github deve excluir a página de problemas e apenas manter a solicitação de pull?

O software de código aberto perderá usuários se não ouvir a comunidade. É estranho que eu seja acusado de meramente declarar um fato,

O que a maioria dos usuários pode fazer senão reclamar?

Doe, receba pedidos, feedback construtivo. Pergunte à equipe o que eles gostariam que você fizesse para contribuir.

Quanto a outra coisa que você disse, vou costurar algumas de suas próprias palavras como resposta.

Como você pode dizer
a ética do software livre
Essa é uma ideia arrogante

A equipe está trabalhando muito, só porque o que você especificamente quer não está sendo feito não diminui o esforço que eles colocam. Se você não quer ser construtivo e está aqui apenas para reclamar, por favor, saia. Ninguém precisa dessa toxidade.

Eles ouvem a comunidade e priorizam os problemas. Este demorou muito porque eles não tinham literalmente ninguém que pudesse trabalhar nele durante a maior parte do tempo em que esteve aberto.

Eles ouvem a comunidade e priorizam os problemas

@ BradleyDS2 Então, as mais de

Sou um desenvolvedor de código aberto e contribuí para dezenas de projetos de código aberto. O que é que você fez? Não vejo você contribuindo com alguns projetos, me parece que você está apenas conversando.

Eu não fiz nada com qbittorrent; Iniciei uma solicitação dockerfile há alguns meses, e ela foi rejeitada.

Você só estava certo sobre uma coisa. Estou indo embora.

Eles ouvem a comunidade e priorizam os problemas

@ BradleyDS2 Então, as mais de

Estou me referindo ao 6500+ fechado.

Sou um desenvolvedor de código aberto e contribuí para dezenas de projetos de código aberto. O que é que você fez? Não vejo você contribuindo com nada para nenhum projeto, me parece que você está apenas conversando.

Você deve estar faltando alguma coisa, já que eu definitivamente já fiz solicitações de pull para projetos antes, mas uso principalmente o gitlab.

Eu não fiz nada com qbittorrent; Iniciei uma solicitação dockerfile há alguns meses, e ela foi rejeitada.

Você e eu sabemos por que foi rejeitado. Ele foi configurado para aceitar automaticamente o aviso legal e os desenvolvedores também disseram: "Não acho que temos a capacidade de mantê-lo oficialmente agora."

Um único motivo pelo qual ainda não foi implementado em todos esses anos é que o projeto qBittorrent não tem um desenvolvedor web ativo / permanente em sua equipe . Esta razão foi mencionada aqui muitas vezes, então aqueles que não entendem, devem pensar seriamente sobre suas habilidades mentais.

Consertei suporte 4.2 em meu branch master

https://github.com/AndersMalmgren/qBittorrent/tree/master

Ele também tem suporte para atualizar feeds agora. Clique no pequeno ícone de atualização ao lado do nome do feed

Presumi que a função de download automático de RSS agora seria implementada sem a necessidade de uma IU alternativa, mas não é esse o caso? Pelo menos não consigo ver uma maneira de acessar minhas regras de autodownload da webUI após construir seu branch master.

Consertei suporte 4.2 em meu branch master
https://github.com/AndersMalmgren/qBittorrent/tree/master
Ele também tem suporte para atualizar feeds agora. Clique no pequeno ícone de atualização ao lado do nome do feed

Presumi que a função de download automático de RSS agora seria implementada sem a necessidade de uma IU alternativa, mas não é esse o caso? Pelo menos não consigo ver uma maneira de acessar minhas regras de autodownload da webUI após construir seu branch master.

Não sei como funciona o processo de compilação do qbittorrent, mas os arquivos estão lá, então acho que devem ser incluídos na compilação.

Mas eu uso o método alternativo de IU

@AndersMalmgren Bem, mais uma vez fiz conforme as instruções em https://github.com/qbittorrent/qBittorrent/issues/453#issuecomment -483063942 com as fontes com as quais também construí qbittorrent e fiz com que funcionasse. Engraçado que as mudanças não estão incluídas na construção em si, embora estejam no código-fonte.

@AndersMalmgren Bem, mais uma vez fiz conforme as instruções em # 453 (comentário) com as fontes com as quais também construí o qbittorrent e fiz com que funcionasse. Engraçado que as mudanças não estão incluídas na construção em si, embora estejam no código-fonte.

Talvez haja uma lista em algum lugar que você deva adicionar rss.js também, imagino :)

@AndersMalmgren Bem, mais uma vez fiz conforme as instruções em # 453 (comentário) com as fontes com as quais também construí o qbittorrent e fiz com que funcionasse. Engraçado que as mudanças não estão incluídas na construção em si, embora estejam no código-fonte.

Não há necessidade de reconstruir tudo usando @AndersMalmgren fork para usar os recursos RSS (pelos quais todos nós o agradecemos :-)
Basta obter seu código-fonte mestre como zip, extrair a pasta da web e apontar as configurações AltWebUI de builds oficiais do qBt para essa pasta. Tudo funciona.

@WolfganP Se eu entendi @Ingvix correto, ele construiu o código-fonte em um binário e esse binário não continha minhas alterações.

Mas você está correto, para usar minhas alterações com o binário padrão, você precisa usar o método alternativo da interface do usuário da web.

Olhando através do código, parece que a API já está construída, apenas a interface do usuário precisa ser escrita? https://github.com/qbittorrent/qBittorrent/blob/master/src/webui/api/rsscontroller.cpp

Eu não sei muito sobre c ++, mas eu sei js e talvez possa colocar algo junto

@ljmerza você pode

@ljmerza você pode

Qual branch devo usar com 4.2.1?

@ljmerza você pode

Qual branch devo usar com 4.2.1?

O branch v4_2_x do meu repo foi atualizado para suportar 4.2.x

@ljmerza você pode

Qual branch devo usar com 4.2.1?

O branch v4_2_x do meu repo foi atualizado para suportar 4.2.x

Está planejando uma solicitação de pull para obter suporte a rss webui no master?

@AndersMalmgren Você pode abrir uma solicitação pull para mesclar suas alterações neste repo?

@AndersMalmgren Você pode abrir uma solicitação pull para mesclar suas alterações neste repo?

Eu poderia, mas não tenho certeza se a equipe quer isso, não funciona como o resto da IU e não fiz um ótimo trabalho de design no código, só queria algo rápido para trabalhar para meu próprio uso :)

@AndersMalmgren Você pode abrir uma solicitação pull para mesclar suas alterações neste repo?

Eu apoio esse movimento.
Não tenho nenhum conhecimento em programação, (apenas copiar e colar) e quando tento usar a WUI alternativa sempre quebra e devo voltar do zero.
Se isso se tornar a WUI por padrão, pessoas como eu podem aproveitar as vantagens desse recurso RSS.

Não há necessidade de mesclar o código e esperar pelos lançamentos da funcionalidade WebUI (se WebAPI não foi modificada) desde que o altWebUI foi implementado. Use as ferramentas existentes para obter @AndersMalmgren ou outras mudanças de devs no WebUI, configure o qBt oficial e você está pronto para ir.

ou seja: para baixar apenas parte de uma árvore de código-fonte do github, use https://minhaskamal.github.io/DownGit
Especificamente para atualizar mods RSS @AndersMalmgren -> https://minhaskamal.github.io/DownGit/#/home ? Url = https:% 2F% 2Fgithub.com% 2FAndersMalmgren% 2FqBittorrent% 2Ftree% 2Fmaster% 2Fsrc% 2Fwebui% 2Fsrc% 2Fwebui em seguida, expanda o zip em alguma pasta e use-o como você altWebUI seguindo as instruções em https://github.com/qbittorrent/qBittorrent/wiki/Alternate-WebUI-usage

Não sei o que estou fazendo de errado.

o link é o que eu obtenho no Chrome quando faço as alterações nas configurações de WebUI
https://mega.nz/#!c9hTgYKa!2q4agsrwv787vwCre -as4IKog1lGQLTBAsGsMfDTeAo

e esta outra minha pasta www com ícones
https://mega.nz/#!AtoFFKhJ!q8RiQQdV2oYBHMhbcqnpmiUZ3cQFSKYltUiDRZCGY0E

esta é a minha configuração WebUI
WebUI \ Address = *
WebUI \ AlternativeUIEnabled = true
WebUI \ AuthSubnetWhitelist = @ Invalid ()
WebUI \ AuthSubnetWhitelistEnabled = false
WebUI \ CSRFProtection = true
WebUI \ ClickjackingProtection = true
WebUI \ Enabled = true
WebUI \ HTTPS \ Enabled = false
WebUI \ HostHeaderValidation = true
WebUI \ LocalHostAuth = false
WebUI \ Password_ha1 = xxxxx
WebUI \ Port = 1340
WebUI \ RootFolder = / mnt / Share / www /
WebUI \ ServerDomains = *
WebUI \ UseUPnP = true
WebUI \ Username = xxxx

Alguém pode me ajudar?

@Piocas Este tópico fórum oficial qBittorrent para obter ajuda de configuração.

Esse seria um recurso maravilhoso de se ter.

É triste ver que 7 anos se passaram e isso não foi implementado. Meio louco, na verdade.

Não há necessidade de mesclar o código e esperar pelos lançamentos da funcionalidade WebUI (se WebAPI não foi modificada) desde que o altWebUI foi implementado. Use as ferramentas existentes para obter @AndersMalmgren ou outras mudanças de devs no WebUI, configure o qBt oficial e você está pronto para ir.

ou seja: para baixar apenas parte de uma árvore de código-fonte do github, use https://minhaskamal.github.io/DownGit
Especificamente para atualizar mods RSS @AndersMalmgren -> https://minhaskamal.github.io/DownGit/#/home ? Url = https:% 2F% 2Fgithub.com% 2FAndersMalmgren% 2FqBittorrent% 2Ftree% 2Fmaster% 2Fsrc% 2Fwebui% 2Fsrc% 2Fwebui em seguida, expanda o zip em alguma pasta e use-o como você altWebUI seguindo as instruções em https://github.com/qbittorrent/qBittorrent/wiki/Alternate-WebUI-usage

Isso funcionou para mim, embora acertar o caminho tenha me confundido um pouco no início. Em qualquer caso, uma vez que isso já foi implementado, como eu (ou qualquer pessoa) posso ajudar a mesclar essas alterações no upstream?

apenas para confirmar, apenas a função controlar / editar não está disponível na IU? Os feeds RSS ainda acionam downloads?

+1 Por favor, adicione recursos RSS ao qbittorrent-nox para que tenha paridade de recursos com qBittorrent com X windows.

qbittorrent-nox tem recursos RSS, é o front-end da web que não fornece nenhuma IU para ele.

Portanto, agora você precisa de uma interface para gerenciá-lo.

Portanto, agora você precisa de uma interface para gerenciá-lo.

Você já pode controlá-lo com solicitações HTTP para o WebAPI. É isso que o WebUI faz nos bastidores. São apenas vários botões que fazem solicitações.

Portanto, até que o WebUI seja atualizado para fornecer uma maneira gráfica de fazer isso, você sempre pode apenas fazer solicitações com um script ou algo assim.

Ou literalmente instale você mesmo https://github.com/qbittorrent/qBittorrent/issues/453#issuecomment -600877487

Outra alt webUI implementando a funcionalidade RSS https://github.com/CzBiX/qb-web

Outra alt webUI implementando a funcionalidade RSS https://github.com/CzBiX/qb-web

gostaria que este fosse o webUI padrão! É muito melhor do que o padrão!

Outra alt webUI implementando a funcionalidade RSS https://github.com/CzBiX/qb-web

gostaria que este fosse o webUI padrão! É muito melhor do que o padrão!

É por isso que o alt WebUI (e recentemente o material dos modelos de IU do Qt) foi implementado, para permitir ao usuário personalizar a funcionalidade da IU sem a necessidade de tocar no núcleo.
Lembre-se de que qualquer mudança no código central significa que algum desenvolvedor (comunidade, não pago) precisa mantê-lo para sempre ...

Estou tentado a encerrar este problema agora pelos seguintes motivos:

  • A conversa prolongou-se por muito tempo e fora do assunto. Mesmo que isso tenha acontecido com algumas coisas boas, este tíquete deve ser sobre o suporte RSS no WebUI oficial. É uma solicitação de recurso simples e clara, não o lugar para muitas das coisas que estão aqui.
  • Existem muitas +1 / me too / pleeeeease / i've waited 58 years instead of contributing in any way whatsoever to the project besides this disrespectful and ungrateful comment, why is this not done yet? posts bagunçando toda a conversa.
  • Como a funcionalidade solicitada agora está disponível por meio de WebUIs alternativos, a única coisa razoável que não foi resolvida é oferecer suporte a isso no oficial.

Quando eu fechar este, abrirei dois novos tópicos:

  • Um para rastrear a implementação desse recurso no WebUI principal (e focar exclusivamente nisso). Não há necessidade de +1 comentários se você apenas quiser dizer "sim, eu também quero isso", use apenas as reações.
  • Uma chamada "discussão de desenvolvimento de WebUI alternativa" ou semelhante para as pessoas discutirem livremente o desenvolvimento de WebUI alternativa em um local centralizado.

Se alguém tiver outras dúvidas, entre em contato.

Obrigado a todos pelo feedback.

O tópico de discussão de desenvolvimento está disponível: https://github.com/qbittorrent/qBittorrent/issues/12354.
A solicitação de recurso de acompanhamento também está disponível em https://github.com/qbittorrent/qBittorrent/issues/12355. Por favor, não envie spam, use reações se quiser apenas "+1".

Esta página foi útil?
0 / 5 - 0 avaliações