Qbittorrent: Contrôler / modifier les flux RSS à partir de l'interface utilisateur Web

Créé le 25 févr. 2013  ·  281Commentaires  ·  Source: qbittorrent/qBittorrent

J'ai qbittorrent en cours d'exécution sur OpenSUSE 12.2 que j'ai utilisé pour configurer des flux RSS pour télécharger automatiquement des torrents et j'ai utilisé cette boîte comme serveur multimédia pour ma maison. Je peux à peu près tout ajuster via une session ssh ou via l'interface utilisateur Web. Ce serait bien de pouvoir contrôler les flux RSS pour qbittorrent sans avoir à ssh -Y dans la boîte et à tirer sur l'interface graphique et à faire les modifications. Idéalement, je souhaite utiliser l'interface utilisateur Web de mon iPAD et régler les flux RSS, cette fonctionnalité peut-elle être ajoutée à l'interface utilisateur Web?
Merci
jdavis3980

Feature request Help wanted RSS WebUI

Commentaire le plus utile

Je suis tenté de fermer ce problème maintenant pour les raisons suivantes:

  • La conversation a duré trop longtemps et trop hors sujet. Même s'il en est résulté de bonnes choses, ce ticket est censé concerner le support RSS dans la WebUI officielle. C'est une demande de fonctionnalité simple et claire, pas l'endroit pour beaucoup de choses qui sont ici.
  • Il y a beaucoup de +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? qui encombrent toute la conversation.
  • Étant donné que la fonctionnalité qu'il a demandée est maintenant disponible via d'autres WebUI, la seule chose raisonnable qui reste sans réponse est de la prendre en charge dans la version officielle.

Quand je ferme celui-ci, j'ouvrirai deux nouveaux threads:

  • Un pour suivre la mise en œuvre de cette fonctionnalité dans l'interface Web principale (et se concentrer exclusivement sur cela). Pas besoin +1 commentaires
  • L'une appelée "Discussion sur le développement WebUI alternatif" ou similaire pour que les gens puissent discuter librement du développement WebUI alternatif dans un endroit centralisé.

Si quelqu'un a d'autres préoccupations, faites-le moi savoir.

Tous les 281 commentaires

+1 Veuillez ajouter des capacités RSS à qbittorrent-nox afin qu'il ait la parité des fonctionnalités avec qBittorrent avec X windows.

+1

+1 sur Windows pour

+1

+1

+1

@buinsky J'ai vu que vous avez travaillé dans l'interface Web. Il semble que cette fonctionnalité puisse être utile.

+1

Cette fonctionnalité manquante est peut-être un facteur décisif pour les personnes qui migrent depuis uTorrent. Tout le reste est génial et encore meilleur.

Merci et continuez votre bon travail :)

+1
Je voudrais voir cela se produire.

+1

+1 Selon l'article ci-dessus, c'est un facteur décisif pour moi. J'aimerais que cela se produise.

+1
Devoir s'en tenir au bloatware uTorrent à cause de cela

+1 S'il vous plaît - meilleur client sans tête que j'ai trouvé à ce jour, et cela le rendrait simplement complet.

+1

+1. Ce serait très utile.

S'il vous plaît! +1

Veuillez ajouter cette fonctionnalité! +1

+1 pour cette fonctionnalité

+1
Disparu depuis le début

+1
cela me fera passer d'utorrent

+1
Je suis coincé sans ça maintenant

+1

+1

+1

Ouais, j'adorerais vraiment avoir cette fonctionnalité! Peut contrôler à partir du coussin oculaire alors :-). : +1:

+1 besoin d'une interface utilisateur Web avec RSS pour un serveur sans tête.

+1

+1

+1

+1

+1

+1

+1

+1

+1

Trois ans, et toujours pas de support pour les flux RSS dans la version sans tête? Bien que la version Windows soit excellente, c'est tout simplement décevant.

Peut-être que quelqu'un peut me donner des conseils sur l'édition du .conf? Je ne suis pas non plus opposé à cela, mais j'aimerais quand même voir l'interface utilisateur suivre.

J'ai essayé de modifier le fichier en utilisant quelques encodages différents pour les chemins de sauvegarde et je n'ai pas pu le faire fonctionner. J'ai fini par devoir utiliser flexget à la place.

+1

+1

J'adorerais migrer du serveur uTorrent qui est une source fermée et ne semble pas être activement développé, mais c'est la seule chose qui m'arrête

+1

+1

Enfin, j'ai opté pour Flexget: qui peut être exécuté sans tête, tout en offrant les fonctionnalités dont j'ai besoin.

Cela exclurait la possibilité de se baser automatiquement sur des liens magnétiques.

+1

+1

+1 (et le tri par dates ajoutées et terminées ne pouvait pas faire de mal)

Le sam.25 juin 2016 17:23 Rihards Skuja [email protected]
a écrit:

+1

-
Vous recevez ceci parce que vous êtes abonné à ce fil.
Répondez directement à cet e-mail, affichez-le sur GitHub
https://github.com/qbittorrent/qBittorrent/issues/453#issuecomment -228571166,
ou couper le fil
https://github.com/notifications/unsubscribe/AGbY-5ty-GOC3gqmyGctI5zjwX6cJMGhks5qPZw8gaJpZM4AdExq
.

Le transfert ssh X11 fonctionne bien mais cette fonctionnalité dans webUI serait bien meilleure.

+1 j'utilise flexget pour l'instant mais avoir intégré RSS dans qbittorrent-nox serait fantastique!

+1

et le tri par dates ajoutées et terminées ne pouvait pas nuire

Ajouté dans # 5547

+1

+1

+1

Personne n'a essayé d'implémenter cette fonctionnalité sur un fork ou un patch? C'est vraiment étrange qu'après tout ce temps, il n'y ait toujours pas d'implémentation de cette fonctionnalité de base et vraiment nécessaire.

+1 à ce sujet. Exécuter une boîte torrent / PleX sans tête et cela le compléterait.

+1

+100!

Oui, +1 pour moi.

Wow, j'ai passé une heure à chercher cette option à activer dans la configuration / etc uniquement pour découvrir que qbtorrent nox ne le prend pas en charge. Pouah. :désappointé:

J'utilise Sonarr pour l'instant, qui est assez complet, mais je cherchais quelque chose de léger et intégré

+1

+1

Surpris, ce n'est pas encore ajouté après 4 ans. Pas étonnant que tout le monde utilise rTorrent.

+1 OMG c'est vraiment ridicule faisons de qBittorent un très bon client bittorent

Une sorte de WebAPI liée à RSS peut (devrait) être implémentée dans le cadre de # 6505.

J'ai commencé à implémenter le support RSS dans WebUI. Mais je ne peux pas terminer ce travail à cause des antidépresseurs que je prends.

@ qbittorrent / webdev
Cela peut peut-être aider quelqu'un à implémenter le support RSS dans WebUI. Mon code situé ici:

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

+1

+1

+1

Encore une autre personne ajoutant un +1 après de nombreuses années.

+1

+1 va probablement finir par écrire quelque chose pour analyser le flux RSS et pousser moi-même l'API à ce rythme ...

@buinsky , vous ne pouvez toujours pas terminer votre travail à ce sujet?

@glassez je ne peux malheureusement pas.

J'apprécie vraiment @glassez pour avoir essayé de résoudre ce problème. Y a-t-il un calendrier approximatif que vous pouvez nous donner sur la mise en œuvre du correctif et la version de qBittorrent qui aura probablement le correctif?

+1

+1

+1

+1

+1

+1 c'est ennuyeux d'avoir à distance dans mon serveur pour la seule chose nécessaire ... changements rss. sinon client génial!

+1 n'avait même pas remarqué que ce n'était pas une chose. :( Voudrais certainement!

Veuillez implémenter cette fonctionnalité!

Malheureusement, le projet n'a pas de développeur web actif pour le moment ...

+1
J'ai vu la page d'accueil de qbittorrent et j'ai sauté directement pour installer sans en-tête

  • Contrôle à distance via l'interface utilisateur Web, écrit avec AJAX
    - Presque identique à l'interface graphique standard

Ce texte ne dit pas qu'il manque des fonctionnalités, mais simplement que l'interface graphique n'est pas exactement la même.

Existe-t-il un guide pour faire fonctionner RSS dans qbittorrent via SSH?

+1

+1!
Comment se fait-il que ce ne soit pas encore là?

Parce que quiconque se soucie de cela ne l'a pas encore mis en œuvre. Je pense que les pull requests sont les bienvenues.

Eh bien, pendant que les gens attendent, j'aimerais souligner que le serveur utorrent pour linux 3.3_alpha a un composant rss dans l'interface utilisateur Web

et avec la communauté 0.83 webui, il est complet (le webui stock manque de quelques éléments)

Une API Web appropriée est en cours de développement. J'espère qu'il sortira avec la première mise à jour de la branche 4.0.x.
Quant à l'interface utilisateur Web, je ne peux pas planifier sa sortie car nous n'avons pas de développeur Web actif.

vient de passer sur un NAS Rockstor et j'ai réalisé que ma configuration RSS ne pouvait pas être importée depuis l'interface Web. Aie...

+1! Je viens d'acheter un NAS Netgear et cette fonctionnalité est vraiment nécessaire sur la version web-ui!

+1

+1

+1

+1

C'est en quelque sorte une solution si vous avez besoin d'une solution de contournement.
https://askubuntu.com/questions/498232/using-rss-in-qbittorrent

+1

qBittorrent v4.1 a une API de gestion RSS expérimentale. Regardez ici .

Verrons-nous bientôt cela soutenu? Je lance qbittorent en tant que service. C'est vraiment ennuyeux que je doive arrêter le service et le démarrer sur le bureau pour gérer les téléchargements RSS

Verrons-nous bientôt cela soutenu?

N'avez-vous pas remarqué mon commentaire précédent? Ou voulez-vous dire l'interface utilisateur Web?

Je veux dire l'interface utilisateur Web, mais je travaille sur l'injection d'une vue pour cela à l'aide de tamper monkey pour Chrome, restez à l'écoute

Alors voilà, il nécessite Tampermonkey pour Chrome. Son hautement non testé, ne me blâmez pas s'il écrase vos règles ou similaire.

// ==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)
})();

L'appel de setRule avec certaines URL affectées semble confondre qbitTorrent, il ne sauvegarde pas le flux affecté sur la règle, il active également la règle même si je choisis de ne pas le faire.

Url (données personnelles modifiées)

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

J'ai mis à jour le script ci-dessus pour prendre en compte les comportements / bogues inattendus avec l'API actuelle.
Ne renommez pas non plus vos flux, gardez le nom synchronisé avec l'URL

Salut! Tout d'abord, merci Anders pour le script. Mais je l'ai essayé et peut-être que j'ai fait quelque chose de mal parce que tout ce que je vois est un "RSS" orange dans le menu du haut (voir la capture d'écran), que lorsque je clique, j'ai cette fenêtre contextuelle qui ne me permet pas vraiment de faire quoi que ce soit ... que sommes-nous censés voir et où? Je n'ai rien trouvé d'autre. (Btw, lorsque je clique sur "Ajouter", rien ne se passe et le menu déroulant est vide et non modifiable)

Merci d'avance!

image

Salut @jadazul Merci.

Cela devrait ressembler à,
Rss

Il est testé par rapport à l'interface utilisateur Web v4.1.1

Vous devrez peut-être définir un flux pour que cela fonctionne, ce n'est qu'une interface utilisateur pour les règles. SI vous avez un flux RSS mais pas de règles, vous devez appuyer sur Ajouter et vous pouvez remplir les champs. Bien qu'il y ait un bogue dans la version 4.1.1, vous ne pouvez donc pas enregistrer les règles contenant de longs flux d'URL comme mon exemple dans l'article ci-dessus

Bien qu'il y ait un bogue dans la version 4.1.1, vous ne pouvez donc pas enregistrer les règles contenant de longs flux d'URL comme mon exemple dans l'article ci-dessus

Êtes-vous sûr que votre script envoie l'URL du flux dans le même format que celui que vous avez utilisé lors de l'ajout du flux dans qBittorrent?

@glassez

J'utilise l'URL renvoyée par

api / v2 / rss / éléments

Merci encore @AndersMalmgren

Comme j'ai installé qBittorrent-nox dans un serveur Ubuntu sans tête, je n'ai pas trouvé de moyen d'ajouter un seul flux RSS ... J'ai lu le Wiki pour l'API, mais il n'y a pas beaucoup d'exemples sur la façon de le faire ... J'ai essayé d'utiliser curl dans le terminal ssh, la connexion fonctionne et me donne un cookie, mais sans utiliser le / api / v2, cela ne fonctionne pas, j'obtiens une erreur 404 à chaque fois et je n'ai pas trouvé d'exemple sur la façon de faites-le correctement, alors j'ai abandonné et essayé votre script (mais maintenant je comprends que ce n'est que pour gérer les flux existants).

Existe-t-il un moyen d'ajouter le flux afin que je puisse utiliser votre script pour le gérer plus tard? Même si cela modifie manuellement certains fichiers de configuration, j'ai juste besoin de trouver un moyen de le faire ...

Merci encore!

Je peux l'examiner plus tard, je l'ai juste fait pour prendre en charge mon cas d'utilisation qui ajoute des règles aux flux existants

Edit: avez-vous vérifié la console pour les erreurs

Désolé, je viens de voir votre modification en vérifiant ceci.

Chaque fois que j'essaye avec curl, j'obtiens juste l'erreur 404 et pas beaucoup plus de détails ...

Êtes-vous sur 4.1.1? L'API RSS a été ajoutée en 4.1

Oui, j'ai installé qBittorrent-nox v4.1.1 sur un serveur Ubuntu 18.04 sans tête

Edit: Scratch ça, je viens de vérifier et même je pensais avoir la dernière version (parce que j'ai utilisé apt-get d'Ubuntu, je supposais que c'était la dernière version), j'ai installé la v4.0.3 à la place ... Mon mauvais, je J'essaierai d'installer la dernière version bientôt. Merci pour votre aide quand même!

setRule ne fonctionne toujours pas dans la version 4.1.2

+1

setRule ne fonctionne toujours pas dans la version 4.1.3, voici une vidéo que j'ai créée, vous pouvez voir que tout va mal lorsque j'essaye de définir une URL de flux

https://youtu.be/t_w9epoyxC8

@AndersMalmgren n'oubliez pas que vous pouvez insérer vos améliorations webui côté serveur au lieu d'utiliser Tampermonkey via Alt WebUI https://github.com/qbittorrent/qBittorrent/wiki/Alternate-WebUI-usage

setRule ne fonctionne toujours pas dans la version 4.1.3, voici une vidéo que j'ai créée, vous pouvez voir que tout va mal lorsque j'essaye de définir une URL de flux

https://youtu.be/t_w9epoyxC8

Le protocole a été modifié. Je ne me souviens pas exactement lequel car j'ai fait la modification il y a quelque temps. Vérifiez s'il vous plaît.

»

// ==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 avez-vous apporté des modifications à mon code que vous avez publié ci-dessus?

Je me suis souvenu que quelque chose avait changé il y a quelque temps, c'était le format dans lequel les URL étaient répertoriées si je me souviens bien, les setRules prennent toujours un tableau de chaînes d'URL.

@ rqi14 avez-vous apporté des modifications à mon code que vous avez publié ci-dessus?

Je me suis souvenu que quelque chose avait changé il y a quelque temps, c'était le format dans lequel les URL étaient répertoriées si je me souviens bien, les setRules prennent toujours un tableau de chaînes d'URL.

Oui je l'ai fait. Je ne me souviens pas de la modification que j'ai faite comme je l'ai dit. Mais cela fonctionne maintenant.

@ rqi14 J'ai comparé nos deux versions dans un outil de comparaison et oui, votre modification, j'ai déjà fait. Ils ont changé le format des URL de flux renvoyées par api / v2 / rss / items

Lorsque j'utilise VNC et l'interface graphique régulière ou que je copie simplement les paramètres avec la configuration des flux RSS déjà à partir d'une machine exécutant l'interface graphique, puis-je arrêter qbittorrent et démarrer qbittorrent-nox et il reprendra cela? En d'autres termes: est-ce qu'il manque seulement l'interface graphique ou l'ensemble des fonctionnalités?

Donc, si je comprends bien, nous devons ajouter le flux RSS par nous-mêmes et il ne sera pas ajouté au webui?

Lorsque j'utilise VNC et l'interface graphique régulière ou que je copie simplement les paramètres avec la configuration des flux RSS déjà à partir d'une machine exécutant l'interface graphique, puis-je arrêter qbittorrent et démarrer qbittorrent-nox et il reprendra cela? En d'autres termes: est-ce qu'il manque seulement l'interface graphique ou l'ensemble des fonctionnalités?

Apparemment, seule l'interface graphique est manquante, je suis passé à -nox pour tester avant qu'un torrent que j'attendais ne soit publié, et il a été téléchargé automatiquement avec succès.

une idée quand l'ajout de GUI est ciblé?

Salut les gars, voici ma dernière version de mon interface utilisateur de règles rss.
Il utilise désormais des messages pour toutes les demandes qui font muter les données. En prime, il fonctionne avec toutes les URL de flux (c'est un bogue dans la façon dont qbittorrent analyse actuellement les chemins des requêtes get).
Cette interface utilisateur ne prend en charge que les règles actuellement, vous ne pouvez pas ajouter de flux, etc. Mais n'hésitez pas à l'ajouter vous-même

// ==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 les gars, j'ai forké qbittorrent. Vous pouvez maintenant ajouter mon interface utilisateur RSS Rules en utilisant la méthode alternative webui. Voici mon repo

https://github.com/AndersMalmgren/qBittorrent

Instructions pour une interface utilisateur alternative
https://github.com/qbittorrent/qBittorrent/wiki/Alternate-WebUI-usage

@AndersMalmgren pourquoi

@Piccirello Quelques raisons, j'utilise d'abord un moteur MVVM appelé Knockout, je ne suis pas sûr que l'équipe principale veuille ajouter un autre moteur au mix. Deuxièmement, aucun support linguistique. Troisièmement, ses visuels ne sont pas cohérents avec le reste de l'interface utilisateur et je dois enfin le nettoyer. :RÉ

Aujourd'hui, c'est le 5e anniversaire de cette demande de fonctionnalité ici sur github.

Est-il possible d'obtenir des commentaires sur les projets futurs des équipes pour le RSS et le webui.

Est-il possible d'obtenir des commentaires sur les projets futurs des équipes pour le RSS et le webui.

Le retour d'expérience n'a pas changé au cours de ces 5 années. Il sera implémenté dès qu'un développeur web souhaite y contribuer.

En attendant, mon interface utilisateur alternative fait le travail :)

Je suis un développeur Web et je suis prêt à travailler dessus (je veux vraiment cette fonctionnalité moi-même). Je ne sais pas vraiment quand / si je pourrai le terminer, car je ne connais pas du tout la base de code.

@alexiooo en ce qui concerne les méthodes de l'API Web RSS, vous pouvez consulter ma branche comment les utiliser

@alexiooo , vous pouvez également contacter @Piccirello. Il a fait beaucoup de travail dans notre client Web ces derniers temps. Peut-être qu'il a une certaine expérience de la mise en œuvre RSS. Au moins, il peut aider avec la base de code.

+1

@Piccirello @glassez @ngosang @buinsky
Cela semble être une demande de longue date et très populaire, serait-il possible de l'ajouter à un jalon.
Merci

Je n'ai tout simplement pas le temps de m'occuper de cela maintenant. Je n'ai même pas eu l'occasion de répondre aux commentaires sur mes PR existants.

Le fait est que nous n'avons qu'un seul développeur Web. Nous avons besoin de plus de soutien de la communauté pour y parvenir.

@alexiooo Comme @glassez l'a mentionné, n'hésitez pas à nous contacter si vous avez des questions sur l'architecture webui / webapi ou la base de code de qBittorrent. Je n'ai aucune expérience avec RSS.

@Piccirello Existe-t-il des directives sur la compatibilité des navigateurs? Je souhaite utiliser certaines fonctionnalités ES6, en particulier les classes ( https://caniuse.com/#feat = es6-class)

C'est quelque chose que nous devons décider depuis un moment. Je sais que nous avons discuté de ce sujet dans d'autres numéros / prs, mais je ne me souviens pas où.

Un sous la main, nous avons des classes moka qui accompliront probablement tout ce dont vous avez besoin des classes ES6. D'autre part, les classes ES6 sont prises en charge par tous les navigateurs que nos utilisateurs utilisent probablement , autres que IE11. Je n'aime pas IE11 autant que la personne suivante, mais je ne veux pas abandonner le support sans raison valable. Le vrai problème est que nous n'avons aucune sorte de métrique pour savoir quels navigateurs nos utilisateurs utilisent.

Edit: J'ai trouvé ce post de @ Chocobo1 , avec lequel je suis largement d'accord.

Je ne pense pas que beaucoup de gens utilisent IE11, même Microsoft dit de ne pas l'utiliser https://techcommunity.microsoft.com/t5/Windows-IT-Pro-Blog/The-perils-of-using-Internet-Explorer- en tant que navigateur par défaut / ba-p / 331732

Serait-il possible d'activer les métriques, qui peuvent être activées dans les paramètres et d'enregistrer des statistiques anonymes pour des choses comme celle-ci?

C'est un bon point. Il semble qu'IE contrôle encore entre 5 et 10% du marché des navigateurs de bureau, selon votre source . 10% semble assez élevé, et j'hésiterais à abandonner le support pour autant d'utilisateurs.

Mais, peut-être que 4.2.0 est le bon moment pour passer à es6. Les utilisateurs d'IE devront soit rester sur 4.1, soit utiliser un navigateur moderne. Cependant, je ne veux pas prendre cette décision seule. @ Chocobo1 que

Ces 10% comprendraient également les utilisateurs plus âgés qui ne savent même pas ce qu'est le torrenting. Je pense qu'en ce qui concerne les utilisateurs de qBittorrent, le nunber utilisant IE serait bien inférieur, mais il est impossible de le dire sans aucune statistique sur les utilisateurs de qBittorrent.

De nombreux utilisateurs de qBittorrent y sont passés en raison des problèmes avec uTorrent, et s'ils sont suffisamment conscients des dangers d'uTorrent pour passer à qBittorrent ALORS allez dans les paramètres et configurez-le pour qu'il soit accessible via une interface Web, je doute qu'ils utilisez IE.

Mais je suppose simplement que je n'ai pas de chiffres réels pour partir.

L'ajout de métriques est un bond assez important pour accomplir à court terme (en particulier dans un monde post GDPR), mais en supposant qu'il y ait au moins une version entre maintenant et lorsque vous supprimez la prise en charge du navigateur, cela vous donne la possibilité de coder dans un avertissement EOL. De cette façon, vous pouvez cibler les messages spécifiquement vers les navigateurs concernés et donner un coup de pouce aux utilisateurs.

Étant donné que ce coup de pouce aide les utilisateurs à réaliser que le choix de leur navigateur a des implications de sécurité plus larges que le simple qB ... et qu'il met l'alerte juste devant eux, quelles métriques et messages d'actualité ne le feront jamais, c'est peut-être une meilleure approche.

mais je ne veux pas abandonner le support sans raison valable.

La façon dont je pense est la suivante: le fait d'avoir des classes ES6 est-il si important que nous voulons abandonner le support IE11? Je ne suis pas tout à fait sûr...
Même si la réponse est positive, l'OMI il est encore trop tôt pour faire le changement dans la série v4.2.x, je suis d'accord avec https://github.com/qbittorrent/qBittorrent/issues/453#issuecomment -475126288 que nous devrions avoir un avertissement EOL au préalable (au moins pour quelques versions). Si quelqu'un veut le réaliser, veuillez déposer un autre problème (ou PR) et discutons-en.

Alternativement, nous pouvons utiliser Babel pour la transpilation. De toute façon, nous sommes coincés avec une étape de compilation, donc cela n'aura pas autant d'impact. De cette façon, nous pouvons utiliser ES6 et prendre en charge IE en même temps.

Typescript peut être utilisé. Il compilera en objets prototypes standard

Typescript est possible, oui, mais je voulais juste dire transpiler du javascript ES6 brut en javascript qui fonctionnera sur IE.

Oui, mais comme vous avez besoin de cette étape de construction supplémentaire, vous pouvez aussi bien utiliser le typographie et bénéficier de la sécurité des types

Si ce n'est actuellement pas possible, qu'en est-il d'une option "client" pour l'interface utilisateur du serveur X, afin que nous puissions exécuter qbittorrent-nox et l'interface utilisateur séparément? Deluge fait quelque chose comme ceci: l'interface utilisateur principale peut également agir en tant que client pour le serveur, vous pouvez donc faire fonctionner le serveur dans une machine sans écran et le contrôler à distance depuis un autre ordinateur.

En attendant, mon interface utilisateur alternative fait le travail :)

@AndersMalmgren
J'aimerais avoir des instructions sur la façon de déployer votre interface utilisateur alternative avec une installation Windows de qBittorrent.
Ie télécharger XXX dans un dossier, pointez qBittorrent "User Alternative Web UI" vers ce dossier.
Je peux voir que vous avez publié le script dans un commentaire ci-dessus et que vous avez également fait un fork.
Puis-je copier le script de votre publication, l'enregistrer dans un fichier avec un certain nom de fichier (s'il vous plaît dites-moi comment il devrait être appelé!) Et puis pointer l'interface utilisateur Web alternative de qBittorrent vers le dossier contenant ce fichier?
Merci beaucoup de l'avoir fourni à la communauté.

@bakertony
Salut, assurez-vous d'abord que vous êtes sur la branche 4.1.x.

src\webui\www tout cela devrait aller dans un dossier sur votre ordinateur local. Assurez-vous également de copier src\icons vers src\webui\www\public\images

@bakertony
Salut, assurez-vous d'abord que vous êtes sur la branche 4.1.x.

src\webui\www tout cela devrait aller dans un dossier sur votre ordinateur local. Assurez-vous également de copier src\icons vers src\webui\www\public\images

Merci pour ça!
Juste pour vraiment l'expliquer aux autres:
1) Je suis allé sur https://github.com/AndersMalmgren/qBittorrent
2) J'ai téléchargé (cliquez sur "cloner ou télécharger")
3) copié le dossier "qBittorrent-mastersrc \ webui \ www" dans un emplacement sur mon ordinateur
4) J'ai créé un dossier d'images dans "www \ public" dans le dossier copié sur mon ordinateur
5) copié le contenu de "qBittorrent-mastersrc \ icons" dans "www \ public \ images"
6) Dans les paramètres de qBittorrent "-> UI Web -> Utiliser une autre interface Web", j'ai défini l'emplacement des fichiers sur le dossier www, j'ai cliqué sur OK
7) accédé à " http: // localhost : 8080" pour voir la nouvelle interface utilisateur

Je peux voir qu'il y a une nouvelle icône "RSS" sur la barre d'outils, me permettant de voir les téléchargements automatiques RSS existants.
C'est très cool, merci pour ça.
Malheureusement, j'espérais voir l'onglet RSS complet, c'est-à-dire voir le contenu du flux RSS et télécharger des torrents supplémentaires si nécessaire: - / En espérant que cela viendra un jour dans une mise à jour de qBittorrent!

@bakertony Salut, il semble que api / v2 / rss / items? withData = true devrait pouvoir vous donner ces données. Je n'ai pas essayé cependant.
https://github.com/qbittorrent/qBittorrent/wiki/Web-API-Documentation#get -all-items

Ensuite, vous pourrez peut-être utiliser la méthode add torrent pour ajouter un torrent

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

@bakertony J'ai corrigé une interface utilisateur pour le téléchargement. Assurez-vous d'utiliser la branche 41x si vous utilisez la version téléchargeable de qbittorrent. Le maître est si vous construisez la source à partir du maître

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

Merci beaucoup pour ça @AndersMalmgren. Cependant, cela ne fonctionne pas comme sur une instance qb HTTPS, car vous essayez d'extraire deux bibliothèques js à partir d'une source HTTP. Ceci est bloqué par le navigateur car ils sont d'origine croisée. Changer simplement le http en https résout ce problème. Idéalement, les bibliothèques devraient être empaquetées avec WebUI, je pense.

Aussi avec l'interface utilisateur alternative sélectionnée, toutes les demandes d'icônes / images dans l'interface utilisateur échouent avec l'erreur 500. Je ne sais pas pourquoi, elles se trouvent toutes au bon emplacement sur le système de fichiers. Aucune erreur dans qbittorrent ou nginx ... bizarre.

Mon plus gros problème est que je ne peux pas ajouter de nouveaux flux RSS. Existe-t-il un moyen de les insérer dans le magasin de configuration qb?

Pourriez-vous s'il vous plaît choisir cette fonctionnalité dans la version prenant en charge Raspberry Pi 2? Merci

@AndersMalmgren , j'ai cloné votre branche

@AndersMalmgren , en fait c'était juste un addon NoScript bloquant le javascript de votre repo et knockoutjs. Après leur avoir permis, cela fonctionne.

@AndersMalmgren , l'API ne prend-elle pas encore en charge le filtrage d'épisodes (intelligent) ou n'avez-vous simplement pas pris la peine de l'inclure?

@Ingvix n'a ajouté que ceux que j'utilise moi-même.

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

@AndersMalmgren , d'accord, merci. Je suppose que je vais essayer de voir si je peux le faire moi-même.

Comment cela n'est-il pas encore ajouté? 6 ans cette demande de fonctionnalité est. Allons! C'est une partie essentielle de tout client bittorrent.

Ouais Owen! Avec autant que nous avons payé pour cela, il est scandaleux que vous n'ayez pas déjà codé et soumis !!
Comment mettez-vous un <</ sarcasme>>?

J'ai déjà mis un plus un là-dessus, mais je suis également heureux de mettre mon argent là où est ma bouche, et je contribuerais à une prime pour celui-ci!

Meh, je vais continuer à utiliser utorrent 3.3 pour Linux depuis plusieurs années jusqu'à ce que cette fonctionnalité soit complète.

Wow ... 6 ans

Ouais, j'abandonnerais d'attendre si j'étais toi.

+1

Cela semble inutile, mais je vais ajouter mon +1 à cette demande ... puis continuez à utiliser uTorrent et revenez tous les deux ans pour voir s'il y a des progrès. Cela dit, je me rends compte que c'est un produit gratuit et j'apprécie qu'il fasse ce qu'il fait, même si s'il est soutenu par la publicité, faire migrer les personnes figurant sur cette liste devrait augmenter ces revenus ...

@WilliCJ comment

Désolé @owenashurst Je dois avoir été peu clair, ce que je voulais dire, c'est qu'il est inutile d'ajouter ma petite requête "+1" à une requête à un fil non traité qui a déjà 6 ans. Je dois cependant m'excuser, je l'ai évidemment mis au mauvais endroit car je ne savais même pas qu'il y avait une application Rtorrent. Le recommandez-vous sur uTorrent et qBittorrent?

@WilliCJ haha ok, ouais Rtorrent est une application basée sur Linux, il a une interface utilisateur appelée Rutorrent et il y a un plugin RSS qui est généralement installé par défaut. Qbittorent est cependant multiplateforme, je ne sais pas si Rtorrent a été compilé de manière croisée.

Merci @owenashurst , je viens de vérifier, et il semble que Rtorrent n'est toujours que Linux, et comme j'exécute une plate-forme Windows sur la boîte que j'utilise, cela ne fonctionnera pas pour moi. Merci quand même! Compte tenu de cela cependant, j'aimerais toujours mettre la main sur la liste des développeurs pour que les flux RSS et les options de filtres de qBittorrent soient accessibles via le webui!

6 ans d'attente, c'est trop long pour une fonctionnalité pour moi.
Un client torrent alternatif avec support Linux, docker, rss et webui?

@ Haxy89 si vous lisez les commentaires précédents, j'ai mentionné Rtorrent qui est un client bittorrent basé sur Linux et l'interface utilisateur Web (Rutorrent) que vous installez séparément a un plugin avec support RSS que tous les tutoriels en ligne incluent par défaut. Il y a aussi un conteneur docker qui a tout de toute façon.

@owenashurst @ Haxy89 @WilliCJ avez-vous essayé l'implémentation altWebUI de https://github.com/qbittorrent/qBittorrent/issues/453#issuecomment -483063942 + https://github.com/qbittorrent/qBittorrent/issues/453# issueecomment -483342384?

@WolfganP Je ne l'ai pas encore essayé non, tant qu'il peut gérer les flux RSS comme dans ajouter / modifier / supprimer, c'est plutôt bien. J'ai vu que vous ne pouvez pas voir / télécharger des torrents à partir du flux RSS perdu mais ce n'est pas vraiment important.

@WolfganP
J'ai juste essayé mais ...
obraz

Rien à faire ici...

Je vais me battre avec RTorrent

@ Haxy89 Oui,

@WolfganP
J'ai juste essayé mais ...
obraz

Rien à faire ici...

Que dit la console? Quelque chose n'est pas correctement configuré. Assurez-vous que vous êtes sur la branche 4.1.x btw.

modifier: actuellement, vous devez configurer vos flux à partir de l'interface utilisateur de bureau. Mais j'ai une version qui peut également configurer des flux. Mais c'est un peu bogué

@WolfganP

Je n'utilise pas de bureau.
Ce serait génial d'avoir la possibilité de tout configurer à partir du Web comme dans RTorrent

@ Haxy89 @AndersMalmgren J'ai le même problème sur l'onglet Flux étant vide même s'il y a déjà un flux défini mais je n'ai pas eu le temps de résoudre correctement les problèmes. Exemple de rss / feeds.json:

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

Comme je travaille avec une version principale, un problème peut être que l'altWebUI de la fourche @AndersMalmgren est bien en retard sur l'état actuel de WebUI. Peut-être que @Piccirello (alias le maître WebUI :-) peut suggérer un moyen d'avancer et d'aider à résoudre les problèmes.

@wolfganp Je ne l'ai testé que sur 4.1.5 sera mis à jour à 1.7 et voir

@WolfganP Fonctionne sur 4.1.7 pour moi

btw, il n'y a pas de fonction API pour forcer une extraction RSS. Vous devez donc ajouter une règle automatique à votre flux. sinon, l'onglet Flux sera vide, bien qu'il devrait afficher le nom du flux sous l'onglet Flux.

Mise à jour de ma branche 4.1.x avec une interface utilisateur de base de gestion des flux

image

@AndersMalmgren fonctionne bien pour moi maintenant (juste une liste de flux testée, pas d'autres fonctionnalités). Merci beaucoup!

BTW, dans rss.js ligne 39, vous devrez probablement mettre à jour le format de l'icône RSS en svg : src='images/qbt-theme/rss-config.svg'

@WolfganP Vous devez utiliser les icônes de 4.1.x. Là, l'icône est un png

@owenashurst @ Haxy89 @WilliCJ avez-vous essayé l'implémentation altWebUI de # 453 (commentaire) + # 453 (commentaire) ?

@WolfganP J'ai maintenant, et le bouton "RSS Rules" lui-même ne s'affiche pas correctement (j'ai probablement fait quelque chose de mal, mais je pensais avoir suivi les instructions), mais il semble me permettre d'accéder et de modifier le RSS les règles de téléchargement automatique, et affichez les flux RSS existants sans les ajouter / les modifier.

Vérifiez la console pour les erreurs s'il vous plaît

Vérifiez la console pour les erreurs s'il vous plaît

Désolé @AndersMalmgren , je ne vois aucune erreur qui semble liée au webui.

Mon installation originale de qBittorrent provenait simplement du programme d'installation téléchargé sur le site qBittorent.org, mais j'ai maintenant téléchargé le clone / zip de github et copié quelques fichiers qui n'étaient pas dans le dossier "qBittorrent-mastersrc \ icons" du " https://github.com/AndersMalmgren/qBittorrent " clone / zip. L'icône des flux RSS est maintenant là.

Merci Anders et Owen!

... maintenant je dois juste trouver comment faire fonctionner filebot depuis qBittorrent!

btw, il n'y a pas de fonction API pour forcer une extraction RSS. Vous devez donc ajouter une règle automatique à votre flux. sinon, l'onglet Flux sera vide, bien qu'il devrait afficher le nom du flux sous l'onglet Flux.

@AndersMalmgren Je pense juste à voix haute (et je n'ai pas essayé comme je suis AFK): peut-être qu'une solution de contournement est d'ajouter une règle qui ne correspond jamais à aucun torrent, mais qui déclenchera la mise à jour du flux de toute façon?

Je ne sais pas de quoi vous parlez. Quelle API vous manque vraiment?

ajouter une règle qui ne correspond à aucun torrent, mais qui déclenchera quand même la mise à jour du flux?

Cela ne fonctionne pas de cette façon.
Les flux sont mis à jour à un intervalle spécifié. Lorsque les règles de mise à jour du flux lui sont appliquées.

Nous devons exposer ces paramètres à l'utilisateur

image

Cela peut être corrigé avec l'API actuelle. Mais la fonction de mise à jour de tous les flux n'est pas présente dans l'API

image

Ou mettez à jour le flux unique pour cette question

image

J'ai ajouté des paramètres de flux rss à l'onglet des paramètres de téléchargement dans ma branche 4.1.x

image

@AndersMalmgren
Des paramètres pour le téléchargement automatique?
Où les torrents sont-ils téléchargés automatiquement? Dossier de téléchargement par défaut?
Filtres pour télécharger automatiquement uniquement les torrents sélectionnés, etc.?

@ Haxy89 Ne sont-ils pas les premiers changements qu'il a apportés à son repo? Ou du moins celles annoncées dans ce numéro. Vous pouvez définir l'emplacement de téléchargement pour chaque règle.

@ Haxy89 Ceux-ci ont été inclus comme le dit @Ingvix . Les paramètres RSS ci-dessus n'étaient pas jusqu'à présent.

J'ai ajouté des paramètres de flux rss à l'onglet des paramètres de téléchargement

Pouvez-vous fournir vos modifications en tant que Pull Request?
Ou il est incompatible avec l'interface Web intégrée de qBittorrent?

Mais la fonction de mise à jour de tous les flux n'est pas présente dans l'API

Sera.

J'ai ajouté des paramètres de flux rss à l'onglet des paramètres de téléchargement

Pouvez-vous fournir vos modifications en tant que Pull Request?
Ou il est incompatible avec l'interface Web intégrée de qBittorrent?

La seule caractéristique manquante est la traduction. Son codé en dur pour le moment

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

Je serais bien même avec une traduction manquante, au moins nous pourrons l'avoir!

J'ai donc réussi à le faire fonctionner, au moins visuellement. Cependant, cela n'a jamais ajouté de torrents. Je suppose que l'inclusion / ne pas inclure prend en charge regex? dois-je le taper avec les barres obliques ou sans? sinon je ne sais pas vraiment comment ça marche. et envisageriez-vous de soutenir regex?

également après avoir joué avec les paramètres rss, il a en fait cessé de fonctionner ensemble. il génère cette erreur:
Type de fichier inacceptable, seul le fichier normal est autorisé

quand je vais à l'url
J'utilise le debian 10 qbittorrent des dépôts. c'est 4.1.5-1

lorsque je modifie les paramètres dans la section de téléchargement, cela désactive la nouvelle interface utilisateur et je dois la réactiver (et prier pour qu'elle ne casse pas tout)

de toute façon, je voudrais juste dire que vous faites le travail du seigneur. je suis tellement reconnaissant d'avoir accès à rss dans le webui même si c'est un peu bogué.

@xrishox Je n'ai pas exposé les champs regex car je ne les utilise pas moi-même. Peut corriger. Merci :)

savez-vous ce que signifie cette erreur "Type de fichier inacceptable, seul le fichier normal est autorisé"

parfois quand je vais à l'url webui qui apparaît. il ne semble être réparable qu'en supprimant le qbittorrent.conf et en recommençant

modifier 1:
Je ne sais pas s'il s'agit d'un bogue spécifique à mon installation ou de quelque chose que d'autres personnes rencontreront également, donc je posterai simplement la solution qui a fonctionné pour moi au cas où quelqu'un d'autre aurait le même problème.

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

"# 10485 a renommé la page de connexion de login.html en index.html. La v4.1.5 recherche toujours login.html, mais votre dossier public contient un index.html. Essayez de renommer ce fichier en login.html."

modifier 2:

Maintenant, j'ai ce problème étrange où de temps en temps, il désactive le Webui alternatif et je dois le réactiver et taper à nouveau le chemin alternatif. Ce n'est pas si grave car au moins cela fonctionne, mais je ne sais pas pourquoi cela fait cela. J'obtiens également d'étranges bogues d'interface utilisateur qui font en sorte que les icônes d'interface utilisateur n'apparaissent pas et que le texte est dupliqué pour une raison étrange. Je ne sais pas pourquoi c'est comme j'ai copié toutes les icônes dans / private et / public. cela ne perturbe pas ma capacité à utiliser qbittorrent, donc je ne suis pas particulièrement préoccupé par cela. ne le signalant ici que par souci d'exhaustivité.

et voici une image des bizarreries bizarres de l'interface utilisateur https://i.imgur.com/kkdGyzs.png

J'espère vraiment qu'au moment où cela s'avère stable et robuste, il sera fusionné car c'est une fonctionnalité incroyable à avoir.

Mais la fonction de mise à jour de tous les flux n'est pas présente dans l'API
Sera.

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

savez-vous ce que signifie cette erreur "Type de fichier inacceptable, seul le fichier normal est autorisé"

Cela se produit lorsque alt webUI est activé sur * nix et que le fichier demandé n'est pas un "fichier normal" (je ne suis pas sûr de ce que cela signifie exactement). Aussi probablement quand aucun fichier de ce type n'existe et que son type ne peut pas être vérifié.

@xrishox J'ai exposé l'option regex. C'est dans ma branche 4,1.x

J'ai ajouté des paramètres de flux rss à l'onglet des paramètres de téléchargement dans ma branche 4.1.x

Je l'ai porté dans qBittorrent master (# 11056).
Malheureusement, je ne peux pas faire cela avec un autre code de @AndersMalmgren , car il est incompatible avec notre base de code.

@glassez c'est trop vieille école pour moi :)

Edit: et mon code doit être nettoyé pour une version officielle

@AndersMalmgren avez-vous eu la chance d'essayer https://github.com/qbittorrent/qBittorrent/pull/11055 ? (Permet d'actualiser les éléments RSS via WebAPI)

Bien, j'ai activé le regex. Je n'ai pas encore eu d'événement où cela se déclencherait, alors j'espère que cela fonctionne.

J'ai quelques suggestions de qualité de vie si vous y êtes ouvert. Notez que ce ne sont pas des demandes ou des demandes car cela fonctionne parfaitement pour mon cas d'utilisation tel qu'il est, mais quelques éléments que vous pourriez considérer.

Lorsque vous cliquez sur Enregistrer sur la page "Téléchargement automatique", il peut enregistrer les modifications pour tous les téléchargements automatiques que vous avez modifiés et pas seulement celui qui est actuellement sélectionné. Ou encore en ajoutant un bouton Enregistrer tout.

Une autre fonctionnalité qui serait utile serait de l'avoir pour que les éléments téléchargés automatiquement puissent éventuellement être ajoutés à une catégorie / étiquette où la catégorie / étiquette est le nom de ce qu'elle a téléchargé automatiquement.

@WolfganP Je n'ai pas d'environnement C ++ pour le moment, je n'ai pas travaillé avec depuis des années donc je n'ai pas pris la peine d'essayer de le compiler pour être honnête. Je pense que c'est prévu pour l'étape 4.2. Mais c'est une solution facile une fois que la méthode de repos est en place.

@xrishox Merci pour vos commentaires, je peux ajouter un bouton Enregistrer tout. La catégorie semble très subjective et pourrait ne pas convenir. Je peux exposer le champ de catégorie si vous le souhaitez?

@AndersMalmgren Si cela vous aide, vous pouvez utiliser mon Dockerfile pour créer facilement votre code qBittorrent local. Il construira également libtorrent 1.1 à partir des sources. Il a quelques inconvénients pour le moment (vous ne pouvez pas encore passer en configuration, il ne prend pas en charge les builds incrémentiels) mais il est vraiment facile de construire qBittorrent.

Construction de Docker: docker build -t qbittorrent/qbittorrent .
Exécution de Docker: docker run --rm -it -p 8080:8080 qbittorrent/qbittorrent

@Piccirello Quand est-ce que 4.2 est prévu? Il n'y a aucune raison pour moi de résoudre ce problème jusqu'à ce que la version 4.2 soit proche de la sortie

À ce stade, votre estimation est aussi bonne que la mienne.

@Piccirello Quand est-ce que 4.2 est prévu? Il n'y a aucune raison pour moi de résoudre ce problème jusqu'à ce que la version 4.2 soit proche de la sortie

Une version bêta publique de 4.2.0 pourrait être publiée dans les prochains jours / semaine ou deux selon # 10047
Il existe une version alpha 4.2.0 qui a été publiée précédemment et que j'utilise depuis fin juin.

D'accord, lorsque le correctif RSS est en version bêta, je peux l'implémenter dans mon master

Donc, je viens d'avoir un déclencheur d'événement rss et l'expression régulière ne semble pas fonctionner. Je l'ai copié à partir de rutorrent exactement là où il fonctionne et je l'ai essayé avec et sans les barres obliques.

L'action "refreshItem" est désormais disponible dans la branche v4.1.x.

@glassez puis-je obtenir un binaire bêta quelque part? Merci

J'ai hâte que vous perfectionniez rss ui. @AndersMalmgren Pouvez-vous faire une pull request dans master?

@ caoli5288 avez-vous essayé d'utiliser la méthode altWebUI selon https://github.com/qbittorrent/qBittorrent/issues/453#issuecomment -483063942? (https://github.com/AndersMalmgren/qBittorrent utilise la branche 4.1 selon https://github.com/qbittorrent/qBittorrent/issues/453#issuecomment-483342384)

@WolfganP Cela fonctionne mais pas très parfait. Pas comme indiqué dans https://github.com/qbittorrent/qBittorrent/issues/453#issuecomment -519135601 et le contenu des flux de navigation est difficile.

图片

@ caoli5288 https://github.com/qbittorrent/qBittorrent/issues/453#issuecomment -519135601 n'est pas l'interface Web, mais la QtUI. Ces commentaires étaient liés à la mise à jour du flux non disponible sur l'API Web, implémentée plus tard par @glassez à https://github.com/qbittorrent/qBittorrent/pull/11055

Comment ça va? Pouvons-nous voir cette fonctionnalité dans la prochaine version?

Comment ça va? Pouvons-nous voir cette fonctionnalité dans la prochaine version?

Vous pouvez essayer ceci: https://github.com/miniers/qb-web
mais seulement du chinois

Comment ça va? Pouvons-nous voir cette fonctionnalité dans la prochaine version?

Vous pouvez essayer ceci: https://github.com/miniers/qb-web
mais seulement du chinois

@miniers merci! L'avez-vous essayé avec AltWebUI? Je viens d'ouvrir le numéro https://github.com/miniers/qb-web/issues/3 pour poser des questions sur l'utilisation des chaînes de traduction existantes.

Je suis +1 sur le RSS. Cela signifie-t-il que le téléchargement RSS de base arrive sur qbittorrent-nox?

(il est douteux que cela soit ignoré à partir de 2013)

Il y a un certain espoir de voir cela dans 4.2? @ Chocobo1 J'ai vu que tu avais fait beaucoup d'améliorations et je pense que c'est la plus grande chose qui me manque dans le webui :(

+1 J'utilise qbittorrent depuis des années et je recherche activement une autre application torrent en raison du manque de support RSS de l'interface utilisateur Web dans qbittorrent.

wtf 9 ans plus tard et toujours pas de mise à jour.

@ikiddoi Vous devriez probablement lire ci-dessus votre commentaire et vous rendre compte qu'il est dans une version bêta de qbittorrent.

Réf: https://github.com/qbittorrent/qBittorrent/issues/453#issuecomment -549786145

Il me manque quelque chose, je ne vois pas l'option dans l'interface utilisateur Web utilisant qbitorrent-nox de unstable (4.2.0 \ ~ 201911110018-6775-8711613 \ ~ ubuntu18.04.1).

Remarque tout à fait sûr mais il y avait toujours un problème de parité des fonctionnalités entre nox et la version standard.

J'ai corrigé le support 4.2 dans ma branche principale

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

Il prend également en charge les flux d'actualisation maintenant. Cliquez sur la petite icône d'actualisation à côté du nom du flux

Je ne comprends pas la lenteur de l'équipe officielle à traiter avec la communauté.
Regardez ces milliers de problèmes en suspens!
Il est peut-être temps de trouver un remplaçant pour qbittorrent.

Je ne comprends pas la lenteur de l'équipe officielle à traiter avec la communauté.
Regardez ces milliers de problèmes en suspens!
Il est peut-être temps de trouver un remplaçant pour qbittorrent.

C'est parce qu'ils manquent de développeurs. Vous êtes plus que bienvenu pour contribuer et apporter des solutions aux problèmes en suspens, mais cela ne vous intéresse probablement pas car il s'agit d'un travail non rémunéré.

Combien avez-vous donné pour aider à développer les fonctionnalités et les correctifs? Les développeurs travaillent pendant leur temps libre, et même si nous aimerions que certaines choses comme celle-ci soient implémentées plus tôt, nous devrions montrer notre gratitude pour le travail et les efforts qu'ils ont mis dans le projet, plutôt que d'agir. comme si c'était notre droit pour eux de faire ce que nous voulons gratuitement et de se fâcher contre eux quand ils ne sacrifient pas plus de leur temps pour nous.

Bon sang, si j'étais l'un des développeurs, je commencerais à reconsidérer si je veux consacrer mon temps et mes efforts à un projet lorsque les utilisateurs du projet sont incroyablement ingrats.

Wow, le droit dans ce fil.

L'équipe officielle a publié une déclaration officielle selon laquelle ils ne l'ont tout simplement pas fait
ont le temps de passer sur cette fonctionnalité, mais étaient ouverts aux contributions de
la communauté. Soyez heureux qu'il arrive enfin ou contribuez vous-même.

Le 14 novembre 2019 12:28:20 caoli5288 [email protected] a écrit:

Je ne comprends pas la lenteur de l'équipe officielle à traiter avec la communauté.
Regardez ces milliers de problèmes en suspens!
Il est peut-être temps de trouver un remplaçant pour qbittorrent.—
Vous recevez cela parce que vous avez été mentionné.
Répondez directement à cet e-mail, affichez-le sur GitHub ou désabonnez-vous.

Combien avez-vous donné pour aider à développer les fonctionnalités et les correctifs

@ BradleyDS2 Écouter la communauté et améliorer les logiciels fait partie de l'éthique des logiciels open source. Comment pouvez-vous dire combien je donne?

Vous êtes plus que bienvenu pour contribuer et apporter des solutions aux problèmes en suspens

C'est une idée arrogante. Que peuvent faire la plupart des utilisateurs à part se plaindre? Regardez votre compte. Vous n'avez contribué une seule ligne de code à aucun projet. Est-ce parce que vous êtes satisfait de n'importe quel projet? Ou pensez-vous que github devrait supprimer la page des problèmes et simplement conserver la demande d'extraction?

Un logiciel open source perdra des utilisateurs s'il n'écoute pas la communauté. Il est étrange que je sois accusé de simplement énoncer un fait,

Que peuvent faire la plupart des utilisateurs à part se plaindre?

Faites un don, tirez des demandes, commentaires constructifs. Demandez à l'équipe ce qu'elle aimerait que vous fassiez pour contribuer.

Quant à quelque chose d'autre que vous avez dit, je vais assembler certains de vos propres mots en guise de réponse.

Comment peux-tu dire
l'éthique des logiciels open source
C'est une idée arrogante

L'équipe travaille d'arrache-pied, simplement parce que ce que vous voulez spécifiquement n'est pas fait ne diminue pas l'effort qu'ils ont mis. Si vous ne voulez pas être constructif et que vous n'êtes là que pour vous plaindre, veuillez partir. Personne n'a besoin de cette toxicité.

Ils écoutent la communauté et hiérarchisent les problèmes. Celui-ci a pris tellement de temps parce qu'ils n'avaient littéralement personne qui pouvait y travailler pendant la majeure partie du temps où il était ouvert.

Ils écoutent la communauté et hiérarchisent les problèmes

@ BradleyDS2 Alors les 2000+ problèmes ouverts?

Je suis un développeur open source et j'ai contribué à des dizaines de projets open source. Qu'avez-vous fait? Je ne vous vois pas contribuer à certains projets, il me semble que vous ne faites que parler.

Je n'ai rien fait avec qbittorrent; J'ai lancé une requête dockerfile il y a quelques mois et elle a été rejetée.

Vous n'aviez raison que sur une chose. Je pars.

Ils écoutent la communauté et hiérarchisent les problèmes

@ BradleyDS2 Alors les 2000+ problèmes ouverts?

Je fais référence aux 6500+ fermés.

Je suis un développeur open source et j'ai contribué à des dizaines de projets open source. Qu'avez-vous fait? Je ne vous vois rien contribuer à un projet, il me semble que vous ne faites que parler.

Vous devez manquer quelque chose alors, car j'ai certainement déjà fait des pull requests pour des projets, mais j'utilise principalement gitlab.

Je n'ai rien fait avec qbittorrent; J'ai lancé une requête dockerfile il y a quelques mois et elle a été rejetée.

Vous et moi savons tous les deux pourquoi il a été rejeté. Il a été configuré pour accepter automatiquement l'avis légal, et les développeurs ont également déclaré: "Je ne pense pas que nous ayons la capacité de le maintenir officiellement maintenant."

Une seule raison pour laquelle il n'a toujours pas été mis en œuvre depuis toutes ces années est que le projet qBittorrent n'a pas de développeur Web actif / permanent dans son équipe . Cette raison a été mentionnée ici à plusieurs reprises, donc ceux qui ne la comprennent pas devraient sérieusement réfléchir à leurs capacités mentales.

J'ai corrigé le support 4.2 dans ma branche principale

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

Il prend également en charge les flux d'actualisation maintenant. Cliquez sur la petite icône d'actualisation à côté du nom du flux

J'ai supposé que la fonction de téléchargement automatique RSS serait désormais implémentée sans la nécessité d'une interface utilisateur alternative, mais n'est-ce pas le cas? Au moins, je ne vois pas un moyen d'accéder à mes règles de téléchargement automatique à partir de WebUI après avoir créé votre branche principale.

J'ai corrigé le support 4.2 dans ma branche principale
https://github.com/AndersMalmgren/qBittorrent/tree/master
Il prend également en charge les flux d'actualisation maintenant. Cliquez sur la petite icône d'actualisation à côté du nom du flux

J'ai supposé que la fonction de téléchargement automatique RSS serait désormais implémentée sans la nécessité d'une interface utilisateur alternative, mais n'est-ce pas le cas? Au moins, je ne vois pas un moyen d'accéder à mes règles de téléchargement automatique à partir de WebUI après avoir créé votre branche principale.

Je ne sais pas comment fonctionne le processus de construction de qbittorrent, mais les fichiers sont là, donc je suppose qu'il devrait être inclus dans la construction.

Mais j'utilise la méthode d'interface utilisateur alternative

@AndersMalmgren Eh bien, j'ai encore une fois fait comme indiqué dans https://github.com/qbittorrent/qBittorrent/issues/453#issuecomment -483063942 avec les sources avec lesquelles j'ai également construit qbittorrent et je l'ai fait fonctionner. C'est drôle que les changements ne soient pas inclus dans la construction elle-même bien qu'ils soient dans le code source.

@AndersMalmgren Eh bien, j'ai encore une fois fait comme indiqué dans # 453 (commentaire) avec les sources avec lesquelles j'ai également construit qbittorrent et je l'ai fait fonctionner. C'est drôle que les changements ne soient pas inclus dans la construction elle-même bien qu'ils soient dans le code source.

Peut-être qu'il y a une liste quelque part où vous devez ajouter rss.js aussi, je suppose :)

@AndersMalmgren Eh bien, j'ai encore une fois fait comme indiqué dans # 453 (commentaire) avec les sources avec lesquelles j'ai également construit qbittorrent et je l'ai fait fonctionner. C'est drôle que les changements ne soient pas inclus dans la construction elle-même bien qu'ils soient dans le code source.

Pas besoin de tout reconstruire en utilisant le fork @AndersMalmgren pour utiliser les fonctionnalités RSS (dont nous le remercions tous :-)
Obtenez simplement son code source principal sous forme de zip, extrayez le dossier Web et pointez les paramètres officiels de qBt construit AltWebUI vers ce dossier. Tout fonctionne.

@WolfganP Si je comprends bien @Ingvix, il a construit la source dans un binaire et ce binaire ne contenait pas mes modifications.

Mais vous avez raison, pour utiliser mes modifications avec le binaire standard, vous devez utiliser la méthode alternative de l'interface utilisateur Web.

En regardant à travers le code, il semble que l'API est déjà construite, juste l'interface utilisateur doit être écrite? https://github.com/qbittorrent/qBittorrent/blob/master/src/webui/api/rsscontroller.cpp

Je ne connais pas une tonne de C ++ mais je connais js et je peux peut-être mettre quelque chose ensemble

@ljmerza vous pouvez

@ljmerza vous pouvez

Quelle branche dois-je utiliser avec 4.2.1?

@ljmerza vous pouvez

Quelle branche dois-je utiliser avec 4.2.1?

La branche v4_2_x de mon dépôt est mise à jour pour prendre en charge 4.2.x

@ljmerza vous pouvez

Quelle branche dois-je utiliser avec 4.2.1?

La branche v4_2_x de mon dépôt est mise à jour pour prendre en charge 4.2.x

Vous planifiez une pull request pour obtenir le support rss webui dans master?

@AndersMalmgren Pouvez-vous ouvrir une pull request pour fusionner vos modifications dans ce dépôt?

@AndersMalmgren Pouvez-vous ouvrir une pull request pour fusionner vos modifications dans ce dépôt?

Je pourrais mais je ne suis pas sûr que l'équipe veuille que cela soit retiré, cela ne fonctionne pas comme le reste de l'interface utilisateur et je n'ai pas fait un travail de conception trop génial sur le code, je voulais juste que quelque chose fonctionne rapidement pour mon propre usage :)

@AndersMalmgren Pouvez-vous ouvrir une pull request pour fusionner vos modifications dans ce dépôt?

J'appuie cette motion.
Je n'ai aucune connaissance en programmation, (seulement copier et coller) et quand j'essaye d'utiliser l'alternative WUI, ça casse toujours et je dois revenir de zéro.
Si cela devient le WUI par défaut, des gens comme moi peuvent profiter de cette fonctionnalité RSS.

Il n'est pas nécessaire de fusionner le code et d'attendre les versions de la fonctionnalité WebUI (si WebAPI n'a pas été modifié) depuis l'implémentation de altWebUI. Utilisez les outils existants pour obtenir @AndersMalmgren ou d'autres modifications apportées par les développeurs à l'interface utilisateur Web, configurez qBt officiel et vous êtes prêt à partir.

ie: pour télécharger juste une partie de l'arborescence source depuis github, utilisez https://minhaskamal.github.io/DownGit
Spécifiquement pour la mise à jour des mods RSS @AndersMalmgren -> https://minhaskamal.github.io/DownGit/#/home ? Url = https:% 2F% 2Fgithub.com% 2FAndersMalmgren% 2FqBittorrent% 2Ftree% 2Fmaster% 2Fsrc% 2Fwebui% 2Fwww puis développez le zip sur un dossier et utilisez-le comme vous altWebUI en suivant les instructions sur https://github.com/qbittorrent/qBittorrent/wiki/Alternate-WebUI-usage

Je ne sais pas ce que je fais de mal.

le lien est ce que j'obtiens dans Chrome lorsque j'ai apporté les modifications aux paramètres WebUI
https://mega.nz/#!c9hTgYKa!2q4agsrwv787vwCre -as4IKog1lGQLTBAsGsMfDTeAo

et cet autre mon dossier www avec des icônes
https://mega.nz/#!AtoFFKhJ!q8RiQQdV2oYBHMhbcqnpmiUZ3cQFSKYltUiDRZCGY0E

c'est ma configuration WebUI
WebUI \ Adresse = *
WebUI \ AlternativeUIEnabled = true
WebUI \ AuthSubnetWhitelist = @ Invalide ()
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 / Partager / www /
WebUI \ ServerDomains = *
WebUI \ UseUPnP = true
WebUI \ Nom d'utilisateur = xxxx

Quelqu'un peut-il m'aider?

@Piocas Ce fil de discussion traite de la gestion RSS dans l'interface utilisateur Web. Veuillez ouvrir un nouveau problème si vous pensez qu'il s'agit d'un bogue ou rendez-vous sur le forum officiel qBittorrent pour obtenir de l'aide sur la configuration.

Ce serait une fonctionnalité merveilleuse à avoir.

Triste de voir 7 ans et cela n'a pas été mis en œuvre. Un peu fou en fait.

Il n'est pas nécessaire de fusionner le code et d'attendre les versions de la fonctionnalité WebUI (si WebAPI n'a pas été modifié) depuis l'implémentation de altWebUI. Utilisez les outils existants pour obtenir @AndersMalmgren ou d'autres modifications apportées par les développeurs à l'interface utilisateur Web, configurez qBt officiel et vous êtes prêt à partir.

ie: pour télécharger juste une partie de l'arborescence source depuis github, utilisez https://minhaskamal.github.io/DownGit
Spécifiquement pour la mise à jour des mods RSS @AndersMalmgren -> https://minhaskamal.github.io/DownGit/#/home ? Url = https:% 2F% 2Fgithub.com% 2FAndersMalmgren% 2FqBittorrent% 2Ftree% 2Fmaster% 2Fsrc% 2Fwebui% 2Fwww puis développez le zip sur un dossier et utilisez-le comme vous altWebUI en suivant les instructions sur https://github.com/qbittorrent/qBittorrent/wiki/Alternate-WebUI-usage

Cela a fonctionné pour moi, bien que le bon cheminement m'ait jeté une petite boucle au début. Dans tous les cas, puisque cela a déjà été implémenté, comment puis-je (ou n'importe qui) aider à fusionner ces changements en amont?

juste pour confirmer, seule la fonction de contrôle / édition n'est pas disponible dans l'interface utilisateur? Les flux RSS déclenchent-ils toujours des téléchargements?

+1 Veuillez ajouter des capacités RSS à qbittorrent-nox afin qu'il ait la parité des fonctionnalités avec qBittorrent avec X windows.

qbittorrent-nox a des capacités RSS, c'est le front-end Web qui ne fournit aucune interface utilisateur pour cela.

Alors maintenant, vous avez besoin d'une interface pour le gérer.

Alors maintenant, vous avez besoin d'une interface pour le gérer.

Vous pouvez déjà le contrôler avec des requêtes HTTP à WebAPI. C'est ce que fait la WebUI sous le capot. C'est juste un tas de boutons qui font des demandes.

Donc, jusqu'à ce que l'interface Web soit mise à jour pour fournir une manière graphique de le faire, vous pouvez toujours simplement faire des requêtes avec un script ou quelque chose.

Ou installez-le littéralement vous-même https://github.com/qbittorrent/qBittorrent/issues/453#issuecomment -600877487

Un autre alt webUI implémentant la fonctionnalité RSS https://github.com/CzBiX/qb-web

Un autre alt webUI implémentant la fonctionnalité RSS https://github.com/CzBiX/qb-web

souhaite que ce soit l'interface Web par défaut! C'est bien meilleur que celui par défaut!

Un autre alt webUI implémentant la fonctionnalité RSS https://github.com/CzBiX/qb-web

souhaite que ce soit l'interface Web par défaut! C'est bien meilleur que celui par défaut!

C'est pourquoi alt WebUI (et récemment les éléments des modèles Qt UI) a été implémenté, pour permettre à l'utilisateur de personnaliser les fonctionnalités de l'interface utilisateur sans avoir besoin de toucher le noyau.
N'oubliez pas que tout changement dans le code principal signifie que certains développeurs (communautaires, non payés) doivent le maintenir pour toujours ...

Je suis tenté de fermer ce problème maintenant pour les raisons suivantes:

  • La conversation a duré trop longtemps et trop hors sujet. Même s'il en est résulté de bonnes choses, ce ticket est censé concerner le support RSS dans la WebUI officielle. C'est une demande de fonctionnalité simple et claire, pas l'endroit pour beaucoup de choses qui sont ici.
  • Il y a beaucoup de +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? qui encombrent toute la conversation.
  • Étant donné que la fonctionnalité qu'il a demandée est maintenant disponible via d'autres WebUI, la seule chose raisonnable qui reste sans réponse est de la prendre en charge dans la version officielle.

Quand je ferme celui-ci, j'ouvrirai deux nouveaux threads:

  • Un pour suivre la mise en œuvre de cette fonctionnalité dans l'interface Web principale (et se concentrer exclusivement sur cela). Pas besoin +1 commentaires
  • L'une appelée "Discussion sur le développement WebUI alternatif" ou similaire pour que les gens puissent discuter librement du développement WebUI alternatif dans un endroit centralisé.

Si quelqu'un a d'autres préoccupations, faites-le moi savoir.

Merci pour les commentaires à tous.

Le fil de discussion sur le développement est en place: https://github.com/qbittorrent/qBittorrent/issues/12354.
La demande de fonctionnalité de suivi est également disponible sur https://github.com/qbittorrent/qBittorrent/issues/12355. Merci de ne pas envoyer de spam, utilisez des réactions si vous voulez simplement "+1".

Cette page vous a été utile?
0 / 5 - 0 notes