[Pidgin] #3794: Buddy list synchronization policy
Pidgin
trac at pidgin.im
Wed Oct 31 06:58:32 EDT 2007
#3794: Buddy list synchronization policy
--------------------------+-------------------------------------------------
Reporter: BillyCrook | Type: enhancement
Status: new | Priority: minor
Component: pidgin (gtk) | Version: 2.2.2
Keywords: | Pending: 0
--------------------------+-------------------------------------------------
I propose addign a buddy list synchronization policy. This could be
implemented in two parts.
First, an application-level setting under 'Tools'>'Preferences'. It would
take another tab most likely, but by using a gtk treeview, as suggested in
http://developer.pidgin.im/ticket/3782 , this is less of an issue. You
could call this tab 'Buddy list Sync' or Buddy list arpitration', whatever
you think most people would 'get'. Policies should be listed in an
'Available Policy' list on right, and an 'Applied Policy' list on left, or
vice versa. The user could choose which policies should be applied, and
in which order. This will allow for the contingency of one protocol not
supporting a specific policy. The applied policy would be an ordered
list, where the first applicable policy is applied to each account. Below
these two lists, a 'Policy Definition' area would define what a policy
means/does, but be greyed out when the form opens. Each policy in
'Available Policy', when selected, would enable this field, and display
the "Definition" of each policy.
The useful policies that I can think of off the top of my head should
include:[[BR]]
Use Client but sync it with server at logon[[BR]]
Use Client List[[BR]]
Use Server List[[BR]]
Use Server List but ignore server's groupings*[[BR]]
*This would provide for when the chat server admin thinks he knows best
which buddies to group where, and is wrong.
Every policy could be defined as a combination of at least the following
options. Note that no [ ] should be exclusive to any other [ ][[BR]]
Propagate buddy Additions to [ ] server [ ] client[[BR]]
Propagate buddy deletions to [ ] server [ ] client[[BR]]
Propagate group schema to [ ] server [ ] client[[BR]]
On account login, load buddies from [ ] server [ ] client[[BR]]
On account login, load group schema from [ ] server [ ] client[[BR]]
In the future, a third option could be added like [ ] HomeServer for
synchronizing buddy lists between client instances where the protocol does
not support, or the chat server is not trusted. The HomeServer host would
likely also handle log aggregation.
Second, an account-level setting under 'Accounts'>'Add/Edit'>[account
name]>'Modify', a 'Buddy List Sync' tab could appear. Then in that tab,
there would be a combo box (drop down box) to list all policies applicable
for this account's protocol. The first, and default account-level buddy
list sync policy should be <global default>, which would point to the
first applicable policy in the global list. Then a full list of all
applicable policies should follow (regardless whether they were selected
in 'Applied Policies' or only in 'Available Policies' in the global
config.
Then the 'Effective Policy' should be displayed in a read only label to
show what is currently being applied as a result of the global 'Applied
Policy' order, and the account-selected policy, which should always
override.
Sorry to be so long winded, but I wanted to get my ideas out there so
people could tear them apart for me.
--
Ticket URL: <http://developer.pidgin.im/ticket/3794>
Pidgin <http://pidgin.im>
Pidgin
More information about the Tracker
mailing list