PASSIVE PERSONALIZATION OF BUDDY LISTS
Personalizing communications for a first communication platform includes accessing status information for communication sessions by a communication identity that leverage a first communication platform other than an instant messaging platform. A participant list associated with the communication identity and the first communication platform is passively configured to persistently reflect a list of participant identities from communication sessions in which the communication identity recently participated using the communication platform.
1 . A method comprising:
generating, for a user, a recent contact group comprising at least one co-user with whom the user has had recent interactions;
analyzing, using at least one processor, one or more communication sessions associated with the user, the one or more communication sessions comprising a plurality of interactions between the user and a plurality of co-users;
determining, based on the analyzed one or more communication sessions, that an interaction between the user and a first co-user and from the plurality of interactions is a recent interaction;
adding, based on the determination that the interaction between the user and the first co-user is a recent interaction, the first co-user to the recent contact group; and
persistently maintaining the recent contact group for the user to reflect which co-users of the plurality of co-users have had recent interactions with the user.
2 . The method of claim 1 , wherein determining that the interaction is a recent interaction is based on a time since the interaction was discontinued.
3 . The method of claim 1 , further comprising:
detecting an interaction between the user and a second co-user of the one or more co-users;
determining that the interaction between the user and the second co-user is a recent interaction; and
adding, based on the determination that the interaction between the user and the second co-user is a recent interaction, the second co-user to the recent contact group.
4 . The method of claim 3 , further comprising:
detecting a second interaction between the user and the first co-user;
determining that the second interaction between the user and the first co-user is more recent than the interaction between the user and the second co-user; and
rearranging, based on determining that the second interaction between the user and the first co-user is more recent than the interaction between the user and the second co-user, the recent contact group by ordering the first co-user ahead of the second co-user.
5 . The method of claim 3 , further comprising:
monitoring a communication availability of the first co-user and the second co-user to determine that the second co-user is available and the first co-user is unavailable; and
organizing, based on determining that the second co-user is available and the first co-user is unavailable, the recent contact group by ordering the second co-user ahead of the first co-user.
6 . The method of claim 1 , wherein the recent contact group has a fixed size.
7 . The method of claim 6 , further comprising:
determining that an interaction between the user and a third co-user is less recent than interactions between the user and a number of other co-users, wherein the number of other co-users matches the fixed size of the recent contact group; and
removing, in response to the determination that the interaction between the user and the third co-user is less recent, the third co-user from the recent contact group.
8 . A non-transitory computer readable storage medium comprising instructions that, when executed by at least one processor, cause a computer system to:
generate, for a user, a recent contact group comprising at least one co-user with whom the user has had recent interactions;
analyze, using at least one processor, one or more communication sessions associated with the user, the one or more communication sessions comprising a plurality of interactions between the user and a plurality of co-users;
determine, based on the analyzed one or more communication sessions, that an interaction between the user and a first co-user and from the plurality of interactions is a recent interaction;
add, based on the determination that the interaction between the user and the first co-user is a recent interaction, the first co-user to the recent contact group; and
persistently maintain the recent contact group for the user to reflect which co-users of the plurality of co-users have had recent interactions with the user.
9 . The non-transitory computer readable storage medium of claim 8 , wherein determining that the interaction is a recent interaction is based on a time since the interaction was discontinued.
10 . The non-transitory computer readable storage medium of claim 8 , further comprising instructions that, when executed by the at least one processor, cause the computer system to:
detect an interaction between the user and a second co-user of the one or more co-users;
determine that the interaction between the user and the second co-user is a recent interaction; and
add, based on the determination that the interaction between the user and the second co-user is a recent interaction, the second co-user to the recent contact group.
11 . The non-transitory computer readable storage medium of claim 10 , further comprising instructions that, when executed by the at least one processor, cause the computer system to:
detect a second interaction between the user and the first co-user;
determine that the second interaction between the user and the first co-user is more recent than the interaction between the user and the second co-user; and
rearrange, based on determining that the second interaction between the user and the first co-user is more recent than the interaction between the user and the second co-user, the recent contact group by ordering the first co-user ahead of the second co-user.
12 . The non-transitory computer readable storage medium of claim 10 , further comprising instructions that, when executed by the at least one processor, cause the computer system to:
monitor a communication availability of the first co-user and the second co-user to determine that the second co-user is available and the first co-user is unavailable; and
organize, based on determining that the second co-user is available and the first co-user is unavailable, the recent contact group by ordering the second co-user ahead of the first co-user.
13 . The non-transitory computer readable storage medium of claim 8 , wherein the recent contact group has a fixed size.
14 . The non-transitory computer readable storage medium of claim 13 , further comprising instructions that, when executed by the at least one processor, cause the computer system to:
determine that an interaction between the user and a third co-user is less recent than interactions between the user and a number of other co-users, wherein the number of other co-users matches the fixed size of the recent contact group; and
remove, in response to the determination that the interaction between the user and the third co-user is less recent, the third co-user from the recent contact group.
15 . A system comprising:
at least one processor; and
a non-transitory computer readable storage medium comprising instructions that, when executed by the at least one processor, cause the system to:
generating, for a user, a recent contact group comprising at least one co-user with whom the user has had recent interactions;
analyzing, using at least one processor, one or more communication sessions associated with the user, the one or more communication sessions comprising a plurality of interactions between the user and a plurality of co-users;
determining, based on the analyzed one or more communication sessions, that an interaction between the user and a first co-user and from the plurality of interactions is a recent interaction;
adding, based on the determination that the interaction between the user and the first co-user is a recent interaction, the first co-user to the recent contact group; and
persistently maintaining the recent contact group for the user to reflect which co-users of the plurality of co-users have had recent interactions with the user.
16 . The system of claim 15 , wherein determining that the interaction is a recent interaction is based on a time since the interaction was discontinued.
17 . The system of claim 15 , further comprising instructions that, when executed by the at least one processor, cause the system to:
detect an interaction between the user and a second co-user of the one or more co-users;
determine that the interaction between the user and the second co-user is a recent interaction; and
add, based on the determination that the interaction between the user and the second co-user is a recent interaction, the second co-user to the recent contact group.
18 . The system of claim 17 , further comprising instructions that, when executed by the at least one processor, cause the system to:
detect a second interaction between the user and the first co-user;
determine that the second interaction between the user and the first co-user is more recent than the interaction between the user and the second co-user; and
rearrange, based on determining that the second interaction between the user and the first co-user is more recent than the interaction between the user and the second co-user, the recent contact group by ordering the first co-user ahead of the second co-user.
19 . The system of claim 17 , further comprising instructions that, when executed by the at least one processor, cause the system to:
monitor a communication availability of the first co-user and the second co-user to determine that the second co-user is available and the first co-user is unavailable; and
organize, based on determining that the second co-user is available and the first co-user is unavailable, the recent contact group by ordering the second co-user ahead of the first co-user.
20 . The system of claim 15 , wherein the recent contact group has a fixed size.