Überfluten Sie die WebUI und fügen Sie Torrents mit unterschiedlichen Download-Verzeichnissen und Labels hinzu

2158
Hayden Thring

Die Sintflut unterstützt also nicht nativ das Hinzufügen eines Torrents mit einem anderen Label oder einem anderen Download-Verzeichnis als das globale Set. Die Browser-Addons sind also auch nicht verfügbar. Also habe ich einen Weg gefunden, wie man Torrents dem Webui hinzufügt, ohne ein eigenes Plugin schreiben zu müssen.

0

1 Antwort auf die Frage

0
Hayden Thring

Wie es funktioniert, ist die Ausgabe des Browser-Addons an das untenstehende PHP-Skript, anstatt sich selbst zu überschwemmen. Der Scrip speichert dann den Torrent oder den Magneten in einem bestimmten Überwachungsverzeichnis, das von einem Parameter in der Addon-URL angegeben wird. Von hier aus wird das "AutoAdd" -Plugin für Sintflut eingerichtet, um die verschiedenen Überwachungsverzeichnisse zu überwachen und Torrents von jedem mit einem ausgewählten Label zu laden und ein Downloadverzeichnis (oder eine andere von diesem Addon verfügbare Einstellung) für dieses Überwachungsverzeichnis zu laden.

 <?php  //specify hostname in addon as server.com/thisScript.php?label=labelName //tested with these addons: //https://addons.mozilla.org/en-US/firefox/addon/bittorrent-webui-120685/ //https://chrome.google.com/webstore/detail/remote-torrent-adder/oabphaconndgibllomdcjbfdghcmenci?hl=en //in deluge mode, others may work. //specify server address as server.com/path/storeTorrent.php?label=labelname //label folder must first be created //use with AutoAdd plugin, to watch directories, and add with individual labels and locations //http://dev.deluge-torrent.org/wiki/Plugins/AutoAdd (configure with pc client) //edit $watchDir to your base watch dir yours  $watchDir = '/media/sdf1/home/private/deluge/watch/';  $label = str_replace(array("json",":"),"",$_REQUEST['label']);  //file_put_contents('debug.txt', json_encode($_REQUEST).'--'.file_get_contents('php://input'));//debug full //file_put_contents('debug.txt', $label;//debug just label param  if($label && is_dir($watchDir.$label)){ $json = file_get_contents('php://input'); $array = json_decode($json,true);  if($array['method'] == 'core.add_torrent_magnet'){ preg_match('#magnet:\?xt=urn:btih:(?<hash>.*?)&dn=(?<filename>.*?)&tr=(?<trackers>.*?)$#', $array['params'][0], $magnet_link); file_put_contents($watchDir.$label.$magnet_link['hash'].'.magnet', $array['params'][0]); }else if($array['method'] == 'core.add_torrent_file'){  file_put_contents( $watchDir.$label.md5($array['params'][1]).'.torrent', base64_decode($array['params'][1])); }   } else header(':', true, 401);   header('Content-Type: application/json'); echo '{"id": 0, "result": true, "error": null}'; ?> 

http://dev.deluge-torrent.org/wiki/Plugins/AutoAdd enter image description here