Open markcs opened 7 years ago
I'm seeing the same thing using Deluge 1.3.12,
I had a similar issue. I was using the default Execute plugin before installing ultnrg's version. The problem was the original config file was still being read from. The new format has 6 arguments while the original has only 3 causing the error. To fix the issue make sure deluge is closed then remove execute.conf and execute.conf~ from the config folder. Restart deluge and the plugin should work properly.
The original config format is: { "file": 1, "format": 1 }{ "commands": [ [ "1", "complete", "/etc/btscanclient/sources/finished.py" ] }
While the new config format is: { "file": 1, "format": 1 }{ "commands": [ [ "dbcf67b166b1b16ef35cf6a4e4d4482bcc2b01af", "complete", "/etc/btscanclient/sources/finished.py", "script", "", "" ] ] }
I know this is over a year later, but maybe it will help someone else further down the road.
@mccarronma This unfortunately doesn't work for me; using Deluge 1.3.15.
Doesn't work - it was never fixed. Broken from day 1.
Just spent a few hours renaming the entire plugin from execute to executed so it would show up separately from a Seedbox forced install of Execute, which worked fine. It simply won't save settings for any trigger you give it. Doesn't matter if the execute.conf file is there or not. Even when using a completely custom executed.conf it still doesn't work.
You're right. It wasn't the conf file that was the problem. I was able to get the plugin working a while ago by editing the core.py file. I believe it was partially due to me running deluge on a linux machine. When looking my version of the file I noticed I commented out this section.
EDITED 180514 Never to be run on windows commented out
cmd_args = [torrent_id, torrent_name, download_location]
if windows_check:
Escape ampersand on windows (see #2784)
cmd_args = [cmd_args.replace("&", "^^^&") for cmd_arg in cmd_args]
cmd = [cmd.replace("&", "^^^&") for cmd_arg in cmd]
There may be other sections I changed. Hopefully this can set you down the right road. If you need me to I can upload the .egg and the core.py files for my working version.
Wouldn't hurt to have a copy of your version to see if I can get it working - it's far easier to use the delay feature in it than to try and program it into python (or multiple bash scripts).
I tried the Executed package I created on a Linux server which was a no-go. Continually got the 6 vs 3 arguments error. I also tried the default package on a Windows install of Deluge, which also didn't work.
I'm not super familiar with working on Github. I forked ultnrg's original repo, and uploaded my core.py file and placed an .egg in the repo's home folder. I labeled the .egg as version 1.3.1 but I believe deluge will see it as version 1.3. The files were hastily put together for my own uses and has been working successfully for a few months. There may be some reduced functionality as all I required was the additional pass through of label argument.
Here's a link to the fork. https://github.com/mccarronma/deluge-execute
Let me know if it works for you, then let me know if there are any specific changes you need. I'll see what I can do.
Thanks for the update. Due to my seedbox provider forcing the standard 1.3.1 distro onto all their slots, I'll have to convert it to "Executed" like I did the original (or it gets overwritten). Fortunately I know all the bits and pieces to rename now, so can probably get it done by the end of the weekend.
This is the error seen in the log file
File "/usr/lib/python2.7/dist-packages/deluge/core/rpcserver.py", line 299, in dispatch ret = self.factory.methods[method](*args, **kwargs)
TypeError: add_command() takes exactly 6 arguments (3 given)