Wishlist Search: Ignore search results already seen

Description: 
I have several "wishlist" searches ongoing, looking for rare files. Most of the time, the wishilist search engine returns results that I had already seen, that for one reason or another was not acceptable. In addition to excluding search results from my own share folder (see different topic), it would be great if there was a checkbox option in the Wish List Search window to Ignore or Exclude search results that have already been seen in prior wishlist searches. Thanks!
0
Your rating: None
1
Average: 1 (5 votes)

Comments

I wanted to revive this feature request, since I do use wishlist searches a lot, I find the same results repeatedly from the same user from session to session. I waste a lot of time closing "wishlist search" tabs, that I have already rejected in prior sessions. Perhaps the way to deal with this, since in the search box you can exclude a term with a '-' (minus sign) before a search term, is there a way to include the ability to exclude a specific USER from the wishlist search by including the username in the search criteria with a "-" (minus sign) in front of the username? Thanks, Nir.

Nir:
Could you make it so that the USER NAME can be used as a search criteria for wishlist searches (or, conversely avoid seeing the same wishlist results from the same user by placing a minus sign (-) in front of a username as part of the wishlist search criteria?)

What if I just add an option to ignore wishlist results from users who've already returned results?

Thanks!

Try this build, it should block repeated results from each user per wishlist search:

http://www.slsknet.org/SoulseekQt/Windows/SoulseekQt-2013-3-25.exe

I changed a lot of stuff under the hood related to wishlist searches, so let me know how it works for you!

Thanks, Nir

....

I'll post a Mac build here later today.

Thanks, Nir

testing...

The change should be automatic, you should not be getting results from the same user for a particular wish list search more than once in a session.

Ideally, the omission of "already seen from a particular user" wishlist results would not be limited the current session, but would carry over to subsequent slsk sessions for the same wishlist search....

Try this one then: http://www.slsknet.org/SoulseekQt/Mac/SoulseekQt-2013-3-30.dmg

It gives you the option to discard repeated results via a checkbox in the the wish list search results window, and the information about users who have already returned results will persist between sessions. The only thing I don't like about this setup is that there's no way to disable the discarding behavior without first getting more visible results, but I'm sure I'll be able to do something about it later on, and this may be closer to what you're looking for. Even if it isn't, let me know.

Thanks, Nir

I have always wondered, what is the criteria is for slsk to initiate and repeat a wishlist search. Is set for a time interval? Also, is it possible to initiate a wishlist search directly in the "wishlist search" tab, without typing it into the "Manual Search" tab?

Yes, the client sends a few wish list searches per hour, this is to ensure that the server and distributed network don't become flooded.

edit: Sorry, I was really tired when I wrote that response, and didn't process the second part of your question. There isn't a way to manually run a wishlist search, but that could be a nice new feature. I'll add it to my to do list.

The function seems to be working. [edit: see bug report below] With the new "Discard Repeated Results" checkbox ticked, the wishlist results do not return the same user, regardless whether new files are added to the user's share folder that satisfy the wishlist search.

Note that when wishlist search results are returned, the ticked checkbox is always unchecked by default. If left unticked, it does not "reset" the discard setting; it seems to keep excluding the already seen USERS from subsequent searches for that Wishlist search. I agree, there should be an option to "reset" the wishlist search to its original status, without exclusions. Perhaps this could be done with a context menu for each individual Wishlist Search?

Nir,
There is a bug: Apparently, ticking the "Discard Repeated Results" box prevents the Wishlist Search from returning duplicate results from the current set the next time it runs, but does not keep discarded any historical results returned by the same wishlist search prior to the current set. So, this produces duplicate wishlist returns every other time the Wishlist Search runs. Hope that makes sense.

Yeah, going back through my responses it looks like I didn't make it as clear as I thought that the filtering does occur on a per-user basis. Storing entire search result sets in memory and on disk just doesn't seem very practical... and really, the chance that you'll miss a user adding what you're looking for after you've already received results from them is pretty slim. You can always clear the record of users whose results are discarded by disabling and re-enabling the option.

The option not being checked whenever the search results window opens is a bug, thanks for letting me know. It should now be fixed. You should now additionally be able to toggle the discard option directly from the wish list context menu:

http://www.slsknet.org/SoulseekQt/Mac/SoulseekQt-2013-3-31.dmg

I'm not sure I understand your question at the end of the third paragraph of post (1). If the discard option is not enabled, no repeat filtering is applied. Results from all users will be shown, and to reiterate, disabling the option and re-enabling it will clear the record of users whose results were already received.

Regarding the file limit, many users who had previously shared their files publicly but set their upload slots to 0 with the old client so that users couldn't download from them without realizing this was happening and talking to them first had abused the upload number limit by setting it to 1 and making it very difficult for people to download from them. As an alternative, I implemented a maximum queued megabytes per user setting. Note that like the number setting this only limits the amount of data a downloader can have in the queued state, and doesn't apply to already running uploads. The option is available in the above build.

Finally, I've been really rushing through developing these options, so apologies in advance if anything doesn't work properly. Let me know and I'll fix it ASAP.

Thanks, Nir

Regarding the file limit, many users who had previously shared their files publicly but set their upload slots to 0 with the old client so that users couldn't download from them without realizing this was happening and talking to them first had abused the upload number limit by setting it to 1 and making it very difficult for people to download from them. As an alternative, I implemented a maximum queued megabytes per user setting. Note that like the number setting this only limits the amount of data a downloader can have in the queued state, and doesn't apply to already running uploads. The option is available in the above build.

THIS WAS IN RESPONSE TO MY PM QUERY REGARDIING WHY THE "MAXIMUM NUMBER OF QUEUED UPLOADS PER USER" WAS UNABLE TO BE SET BELOW 10. INTERESTING SOLUTION. DOES 0=UNLIMITED? I WILL GIVE IT A TRY. THANKS FOR THAT.

You can use the blockquote HTML tag, and it'll look like this:

Yeah, going back through my responses it looks like I didn't make it as clear as I thought that the filtering does occur on a per-user basis. Storing entire search result sets in memory and on disk just doesn't seem very practical... and really, the chance that you'll miss a user adding what you're looking for after you've already received results from them is pretty slim.

To answer your question at the end: There's no unlimited setting as of yet, but that might be a good idea :)

I have stopped testing this build - it is returning duplicates consistently. Please advise.

You're right, it's not exactly working. I'll look into it and post here as soon as I have something.

Thanks, Nir

Sorry for the wait, long day at work :) apparently the code setting up the UI for each new results page was inadvertently resetting the user set record. This is fixed in the next build, far as I can tell:

http://www.slsknet.org/SoulseekQt/Mac/SoulseekQt-2013-4-2.dmg

I've also added the option to manually run the wish list search as we've discussed earlier on.

Thanks, Nir

No problem. Ok, I am testing the 2013-4-2 build.

Question:
If I want to clear & reset the "show repeated results/discard repeated results" user database for a particular wishlist search, and it is currently set to "discard", I would go to the wishlist pane, right-click, select "show repeated results", then right-click again, and choose "discard repeated results." And that will wipe the repeated user database clean for that wishlist search. Is that correct?

And, unticking then ticking the checkbox in the results window will do the same? (without having to close the results window?)

And, where is the user database actually kept on my mac and on a pc?

Thanks.

Ok, after testing, the client "Wishlist Search" function seems to be working properly. I will let you know if I notice any other problems with it. Just a reminder of my earlier suggestion which may avoid some confusion for some uers: Since the results are discarded on a per-user basis, you may want to clarify that a bit by renaming the conext-menu & wishlist results window options to "Show/Discard Repeated User Results", so folks would be less likely to think that the discarded results were exact matches of the file attributes.... Thanks, NIr.

Yes on both counts. The user record is kept as part of the client database, saved to .Soulseek.* on the Mac and soulseek-client-dat.* on the PC.

Thanks, Nir

Hi, there also an Idea how to improve and make more flexible Wishlist Search.
First of all it would be nice if there will be an option to add the ususal search filter commands to wishlist search "strings".
It will help a lot if you can exclude some words. For example if you search some rare group album, but these words are also used in a name for some very common song, excluding the artist's (of this song) name from search result would help a lot, i think.

And one more question - there was a request about manual run of wishlist, and you said that it would be a nice new feature!!! That's great news.
But now i see an option to manually run a single search.
So, Is it possible to add a feature to run all the wishlist at once?

It will help a lot if you can exclude some words. For example if you search some rare group album, but these words are also used in a name for some very common song, excluding the artist's (of this song) name from search result would help a lot, i think.

I believe you can, by placing a minus sign (-) in front of the word you want to exclude. For example, if you want to search for the song "Mac The Knife", but want to exclude the Bobby Darin version, your search string might be: mac the knife -darin

Also, I think Nir answered your question above regarding running all wishlist searches at once, when he said

Yes, the client sends a few wish list searches per hour, this is to ensure that the server and distributed network don't become flooded.

Can this be improved to continue adding more search results to the discarded list? Say some users were not online at the time the initial set of results were discarded, then the next time slsk is run they return results, would it be possible to add them to the existing discarded set?

Thank you. I have an extensive wish list and waste a lot of time with repeat results.

The "discarded" wishlist search results are cumulative, as long as you keep that option selected in the Wishlist item context menu (by right-clicking on the individual wishlist search "Search/Wish List Searches" tab, then selecting "Discard Repeated Results"), OR, after a wishlist search result is returned, by ticking the "discard repeated results" checkbox in the bottom of the results window. Discarded results are then remembered and previously discarded results are not shown again until you change the setting by un-ticking the checkbox, or by choosing "show repeated results". Then, from what I understand, the previous discard list is reset, and you start from scratch if you choose the "discard" option again in the future. Hope this helps.