Hi Everyone,
We have a strange problem with a client's SfB system running our UCMA 5.0 application on a trusted application server and it looks like the presence states of SfB users aren't being propagated to the buddy lists of other SfB clients in a timely way. So User1 is logged into a client on one workstation and User2 is logged into a client on a different workstation and they can see each others presence in their buddy lists on the clients. Without our UCMA application, when User1 changes their presence state it immediately shows up in the buddy list on User2 and visa-versa. However if our UCMA application is running then the client is claiming that this buddy list update is delayed. If they stop the UCMA application then the buddy list refreshes.
My understanding of the way buddy lists work is as follows (anyone correct me if this is wrong or incomplete etc..)
1. You create the buddy list in the SfB client by adding users.
2. The list is stored on the FES presumably so you can download the same list onto a different device in case you log into SfB from another workstation etc.. and also so the FES knows which clients it needs to push presence changes out to.
3. The client sends a SIP SUBSCRIBE to the FES and the FES sends back the buddy list and then sends presence updates out to that client whenever the presence changes of a buddy list user.
The UCMA 5.0 application we have uses a CollaborationPlatform class which is passed a ServerPlatformSettings instance and we then use the RemotePresenceView class to subscribe to presence updates for about 1000 users. I'm pretty sure that this subscription works using SIP SUBSCRIBE messages too so is it possible that the UCMA 5.0 subscription is somehow interfering with the SfB client subscription ? This seems unlikely to me as the FES can handle thousands of subscriptions which originate from client buddy lists with no issue when the UCMA application isn't running.
I can't actually replicate this issue on our system but we have a relatively small number of users so my approach is to create a few hundred users on the Active Directory, import them into the FES and then control them programatically (as we haven't got hundreds of VMs either) and see what happens then. If anyone has any ideas about what might be happening or ideas for tests to tease it out then I'd be very interested to hear them. Also any more detail on how the buddy list subscription vs the UCMA subscription works would also be very welcome.
Thanks.