diff options
| author | Miklos Vajna <vmiklos@frugalware.org> | 2011-01-03 03:01:47 +0100 | 
|---|---|---|
| committer | Miklos Vajna <vmiklos@frugalware.org> | 2011-01-03 03:01:47 +0100 | 
| commit | cb6d3c9e9ec93705022ec24451246265c7841ebe (patch) | |
| tree | f8241046ea0f667716d2b659676c966c8c81ac80 | |
| parent | fbb15f23566d61d4c26a0b9fbcc00cf397737e52 (diff) | |
Add support for fetching group changes on the fly
So in case a user was not part of a group and it becomes (using Skype
UI), then BitlBee is now aware of this.
NOTE: current it seems the Skype part of this is broken. Use case: adding a
user to group #16 which already has a user.
<< GROUP 16 NROFUSERS 2
>> GET GROUP 16 NROFUSERS
<< GROUP 16 NROFUSERS 0
So it notifies about the number of users changed but I can't query the user
list as the number of users is then 0 - till Skype is not restarted.
| -rw-r--r-- | skype/skype.c | 8 | 
1 files changed, 7 insertions, 1 deletions
| diff --git a/skype/skype.c b/skype/skype.c index 8620e2c7..98d46cea 100644 --- a/skype/skype.c +++ b/skype/skype.c @@ -851,7 +851,13 @@ static void skype_parse_group(struct im_connection *ic, char *line)  		} else  			log_message(LOGLVL_ERROR,  				"No skype group with id %s. That's probably a bug.", id); -	} +	} else if (!strncmp(info, "NROFUSERS ", 10)) +		/* Number of users changed in this group, query its type to see +		 * if it's a custom one we should care about. */ +		skype_printf(ic, "GET GROUP %s TYPE", id); +	else if (!strcmp(info, "TYPE CUSTOM_GROUP")) +		/* This one is interesting, query its users. */ +		skype_printf(ic, "GET GROUP %s USERS", id);  }  static void skype_parse_chat(struct im_connection *ic, char *line) | 
