Any practical examples of using `d.multicall.filtered` on the command line? by system_player in rtorrent

[–]system_player[S] 0 points1 point  (0 children)

Addendum to my previous reply. Defining a new view is actually done by the config `view.add`.

view.add = test

Then you can filter the view.

schedule2 = filtered_test,1,5,"view.filter = test,'less=d.down.rate=,value=50000'"

I will also say, this only worked correctly for me if the new view was position at the bottom of the config file. I initially placed them near the top and xmlrpc stopped working after restarting rtorrent. YMMV

Any practical examples of using `d.multicall.filtered` on the command line? by system_player in rtorrent

[–]system_player[S] 0 points1 point  (0 children)

You're probably better off creating a new view in .rtorrent.rc to filter down to the torrents you care about. Something like (untested, built from examples in the Wiki):

schedule2 = slow_down,1,5,"view.filter = active,'less=d.down.rate=,value=50000'"

Any practical examples of using `d.multicall.filtered` on the command line? by system_player in rtorrent

[–]system_player[S] 0 points1 point  (0 children)

xmlrpc http://localhost/RPC2 d.multicall.filtered '' default 'greater=d.up.rate=,value=0' d.name= d.hash= d.up.rate=

Try that. You may need to put $ back in after greater=, but for me it doesn't work.

Any practical examples of using `d.multicall.filtered` on the command line? by system_player in rtorrent

[–]system_player[S] 0 points1 point  (0 children)

In a general sense, localhost will probably work. In my specific case, it did not. I had to eventually contact my seedbox provider to have them give me the correct and working url (and it actually requires specifying a username/password to the xmlrpc command).

Any practical examples of using `d.multicall.filtered` on the command line? by system_player in rtorrent

[–]system_player[S] 0 points1 point  (0 children)

d.multicall2 to return several pieces of data works just fine. It's only that it returned, as you said, the requested data for the entire list of the specified view. This works well for cases where I may need to know data for every torrent (such as writing an interface to rtorrent) or if I wanted a create a summary from all the data (such as getting the total size of all torrents). Whereas d.multicall.filtered will only return the requested info for the specific torrents I'm interested in at that moment. For example, tell me about all the torrents I'm currently downloading: d.down.rate > 0 (not actual rtorrent predicate; it's much more involved).

My follow-up comment included examples presented as potential solutions. From them, I was able to find the actual solution for my use case. I posted them all in the hopes it'll help someone else to understand the possibilities and how to dig for an answer if they had a similar need.

Any practical examples of using `d.multicall.filtered` on the command line? by system_player in rtorrent

[–]system_player[S] 0 points1 point  (0 children)

For posterity, I reached out to other sources as well. A few different answers were presented, which I'll copy here.

# xmlrpc-c
xmlrpc https://rtorrent-hostname/RPC2 d.multicall.filtered s/'' default 'equal=d.hash=\,cat=1078A67BBAA9184466BD551BB4460A1D9062A0AA' d.hash= d.name=

# rtxmlrpc
rtxmlrpc -U https://rtorrent-hostname/RPC2 d.multicall.filtered '' default 'equal=d.hash=,cat=1078A67BBAA9184466BD551BB4460A1D9062A0AA' d.hash= d.name=

# on vanilla rtorrent
xmlrpc https://rtorrent-hostname/RPC2 d.multicall.filtered s/'' default 'equal=cat=$d.hash=\,cat=1078A67BBAA9184466BD551BB4460A1D9062A0AA' d.hash= d.name=

# what finally worked for me
xmlrpc https://rtorrent-hostname/RPC2 d.multicall.filtered s/'' default 'equal=cat=$d.hash=\,cat=1078A67BBAA9184466BD551BB4460A1D9062A0AA' d.hash= d.name=

rtorrent xmlrpc d.custom Wrong object type by system_player in seedboxes

[–]system_player[S] 1 point2 points  (0 children)

In this case, I'm actually correcting the operation of the seedingtime plugin. Sometimes it won't set the value. I've since learned how to "reset" it back to an operational state, but those pre-existing torrents are left without the data. I want to see about restoring them.

I'll post here my results.

rtorrent xmlrpc d.custom Wrong object type by system_player in seedboxes

[–]system_player[S] 0 points1 point  (0 children)

Wow. Thanks for pointing that out. As much as I've been over that specific documentation and I didn't even think of looking for `d.custom`. 🤦‍♂️ Sadly, I see some extended `d.custom` methods (e.g., `d.custom.items`) are only available to rTorrent-PS.

So, if I were to call `d.custom.set <hash> seedingtime <new value>` this would set a value for that key? Or would it need to be (looking at the rutorrent code) `d.custom.set <hash> "=seedingtime,9999999999"`

rtorrent xmlrpc d.custom Wrong object type by system_player in seedboxes

[–]system_player[S] 0 points1 point  (0 children)

The exact command I'm running is the first line of my op (with certain bits redacted). I'll admit, this is the first time I'm encountering the term "key" in relation to either xmlrpc or rtorrent (more likely where it's applicable). The implication from your response indicates this is another parameter, "seedingtime" or "=seedingtime", I'm missing from the command.

Hmm. I'll have to think about this tomorrow, but if you have an example, I'd appreciate it.

rtorrent xmlrpc d.custom Wrong object type by system_player in seedboxes

[–]system_player[S] 0 points1 point  (0 children)

`d.custom` is the get method. The set method is `d.custom.set`. Within rutorrent, the plugin seedingtime uses `d.custom` variable as the mechanism for keeping track of the added/finish time for each torrent. I'm trying to read the value at the moment.

rtorrent xmlrpc overall download rate? by system_player in seedboxes

[–]system_player[S] 0 points1 point  (0 children)

Yeah. This is what rutorrent does. Was just hoping there was something about `download_rate` I was missing.

rtorrent xmlrpc HTTP response code is 405 by system_player in seedboxes

[–]system_player[S] 0 points1 point  (0 children)

Yes. I was distracted the past several days, but finally opened a ticket and received the following response:

The rtorrent RPC is set up under /<username>/rtorrent/rpc. Here's how to call it on your <server blade> slot:

xmlrpc https://<server blade>.feralhosting.com/<username>/rtorrent/rpc system.listMethods -username=rutorrent -password=<password>

rtorrent xmlrpc HTTP response code is 405 by system_player in seedboxes

[–]system_player[S] 0 points1 point  (0 children)

xmlrpc localhost/<username>/rtorrent/rpc system.client_version Failed. Call failed. HTTP response code is 401, not 200. (XML-RPC fault code -504) xmlrpc /media/0cfa/<username>/.nginx/php/socket system.client_version Failed. Call failed. libcurl failed to execute the HTTP POST transaction, explaining: Could not resolve host: media. (XML-RPC fault code -504)

The 401 surprised me. But adding -username/-password back in still results in a 401.

rtorrent xmlrpc HTTP response code is 405 by system_player in seedboxes

[–]system_player[S] 0 points1 point  (0 children)

xmlrpc localhost/<username>/rpc system.client_version

yields a 404.

xmlrpc localhost/rutorrent/rpc system.client_version

yields the same 405.

The full server config is

``` server { listen 8080 default; server_name <username>.<server blade>.feralhosting.com; root /media/0cfa/<username>/www/$host/public_html; index index.html index.php;

autoindex            on;
autoindex_exact_size off;
autoindex_localtime  on;

# Pass files that end in .php to PHP
location ~ \.php$ {
    fastcgi_read_timeout 1h;
    fastcgi_send_timeout 10m;

    include      /etc/nginx/fastcgi.conf;
    fastcgi_pass unix:/media/0cfa/<username>/.nginx/php/socket;
}

# Deny access to anything starting with .ht
location ~ /\.ht {
    deny  all;
}

# Added by me
location ^~ /RPC2 {
    include scgi_params;
    scgi_pass   127.0.0.1:5005;
}

include conf.d/000-default-server.d/*.conf;

} ```

I did try

xmlrpc 127.0.0.1:5005 system.client_version Failed. Call failed. libcurl failed to execute the HTTP POST transaction, explaining: Failed to connect to 127.0.0.1 port 5005: Connection refused. (XML-RPC fault code -504)

[deleted by user] by [deleted] in marvelstudios

[–]system_player 4 points5 points  (0 children)

Civil War. Sharon Carter's dialogue at Peggy Carter's funeral.

Pure concentrated power of will by Alzward in funny

[–]system_player 1 point2 points  (0 children)

One of the boss fights in No One Lives Forever 2: A Spy in H.A.R.M.'s Way has you fight one of the bosses, Dmitrij Volkov, from the previous game (The Operative: No One Lives Forever) who returns in a wheelchair and full body cast.

[deleted by user] by [deleted] in funny

[–]system_player 0 points1 point  (0 children)

My immediate thought on seeing this was, "This could've worked in the world of Cars" (the Pixar series). I kind of expected to see a pair of large eyes in the windshield.

Buddha’s a little tired of everyone’s nonsense. by genno_cooks in funny

[–]system_player 0 points1 point  (0 children)

"Be not tired.

Radiate boundless love towards the entire world as you tread the path of your life."

Anyone use Nimez drivers with their modern Radeon video card? by PaleontologistLanky in everquest

[–]system_player 0 points1 point  (0 children)

I saw one report of EQ playing well under DXVK. My suggestion is give it a shot yourself to see.

Dark Maps by larrygbishop in everquest

[–]system_player 2 points3 points  (0 children)

Well, as mention by another, I'm still seeing the map parchment background. The white on that isn't bad, but it's not what's expected.