Opened 12 years ago

Closed 8 years ago

Last modified 8 years ago

#555 closed patch (patch_rejected)

icq search

Reported by: shaman Owned by: MarkDoliner
Milestone: Patches Needing Improvement Component: ICQ
Version: 2.0 Keywords: icq search
Cc: Zweckoptimismus

Description

It would be a perfect enhancement, if gaim was able to search users in icq database not only by their email, but just like official icq does it, or some windows unofficial clients. For example - miranda.

Attachments (3)

icq.png (34.8 KB) - added by goyko 12 years ago.
Search plugin [Screenshot]
white_page.diff (40.0 KB) - added by goyko 11 years ago.
ICQ WhitePages "Search for Buddy by Information" and "Set Buddy Info"
white_page2.diff (43.4 KB) - added by MarkDoliner 11 years ago.

Download all attachments as: .zip

Change History (18)

comment:1 Changed 12 years ago by lschiere

  • Owner set to MarkDoliner

Changed 12 years ago by goyko

Search plugin [Screenshot]

comment:2 Changed 12 years ago by goyko

I just want to let you know that I am currently working on this. Initially, I began developing a pidgin plugin that would implement searching in all protocols that support searching. Unfortunately, I didn't know about the Field Request API, and it turned out that integrating libpurple and my code would be kinda reinventig the wheel, so I stopped somewhere at the GUI development stage. I submitted a screenshot of what I've done. Anyway, I confined to implementing an icq whitepages search. What do you think, is it a good idea to put search functionality for all supported protocols in one window? I think that meets the pidgin philosophy of hiding the protocols from the users, also it is easier for new users to use "Buddies->Add Buddy" menu than digging the account actions in Accounts menu.

If someone is working (had worked) on this issue, we may exchange some info, code or ideas.

comment:3 Changed 11 years ago by seanegan

  • Component changed from pidgin (gtk) to ICQ

comment:4 Changed 11 years ago by dmitriid

What do you think, is it a good idea to put search functionality for all supported protocols in one window?

I believe the answer would be 'yes'

See SIM (http://sim-im.org/wiki/Main_Page) for an example.

However, if such a combined functionality is difficult to implement, it would be nice to see search functionality added to different protocols one-by-one

comment:5 Changed 11 years ago by goyko

At last, it works. Currently, it is limited to showing only the first 20 results. I know no way of requesting the next pages, although the total amount of results is known, the server sends it back. Recently I played around with Wireshark, and was able to extract some information about ICQ6 way of doing this type of search, and more specifically, how it requests more than one page of results. But I don't know if it is possible to mix these two "versions" (?) of the protocol. I.e. the login sequences and registering services to be done the old way, and the searching - the new way. Maybe I will try it.

comment:6 Changed 11 years ago by goyko

I forgot to mention, this patch is against 2.2.1

comment:7 Changed 11 years ago by MarkDoliner

  • Type changed from enhancement to patch

comment:8 Changed 11 years ago by goyko

I replaced the patch with a new one, which also includes setting of user details. The features were overlapping, and I wasn't able to make them separate patches. I also made the strings more consistent across the various dialogs.

comment:9 Changed 11 years ago by goyko

Updated against 2.2.2 and added Country field in Set Info and Search dialogs.

Changed 11 years ago by goyko

ICQ WhitePages "Search for Buddy by Information" and "Set Buddy Info"

comment:10 Changed 11 years ago by goyko

Hi guys, any comments on this?
I'd really like someone to review this and tell me if something should be changed.
One possible improvement that comes to my mind is to collect the results in linked list and, after all of them are received, to populate the dialog at once. I don't know if it's worth though. I've never run into problems with the current solution.

Best Regards

Changed 11 years ago by MarkDoliner

comment:11 Changed 11 years ago by MarkDoliner

Sorry it took me so long to look at this. I've uploaded a revised version of your patch. These are the changes I made:

  • Wrapped new strings in _() to mark them for translation
  • Changed space indentation to tabs and various other minor formatting
  • Changed comments to /* */

There might be a few other things that will need to be changed before this is acceptable, but at least this will need to be changed before I'm willing to check it in:

  • All request fields should be pre-populated with the user's existing info. And if the user enters an empty string it should clear the field on the server.

comment:12 Changed 11 years ago by MarkDoliner

Oh, so if you'd like to continue working on this (I hope that you do!) please base any additional changes off of white_page2.diff Thanks!

comment:13 Changed 10 years ago by rekkanoryo

  • Milestone set to Patches Needing Improvement

Is there anything going on with this patch?

comment:14 Changed 9 years ago by Zweckoptimismus

Will there be any further activities on this? Looks like a great idea, I've always been looking for something like this...

comment:15 Changed 8 years ago by rekkanoryo

  • Resolution set to patch_rejected
  • Status changed from new to closed

Resolving this patch as "patch_rejected" because the issues mentioned here over a year ago have not been addressed. Anyone who wants to pick this patch up and improve it is more than welcome to do so.

Note: See TracTickets for help on using tickets.
All information, including names and email addresses, entered onto this website or sent to mailing lists affiliated with this website will be public. Do not post confidential information, especially passwords!