[SIP Beyond VoIP] couple of sylkserver questions
Saúl Ibarra Corretgé
saul at ag-projects.com
Mon Nov 12 15:06:57 CET 2012
On Nov 12, 2012, at 2:45 PM, Juha Heinanen wrote:
> sip-session client has add_participant and remove_participant commands
> that can be used to add and remove participants from conference, but it
> does not have command to list conference participants. rfc4353 tells:
> The conference notification service allows a conference-aware
> participant to subscribe to it, and receive notifications that
> contain the list of participants. When a new participant joins or
> leaves, subscribers are notified. The conference notification
> service also allows a user to do a "fetch"  to obtain the current
> is this "fetch" somehow possible from sylkserver?
The participants list is fetched with a subscription to the 'conference' event. SIP SIMPLE (the SDK) will always subscribe to such event if the remote Contact header contains ';isfocus'. Now sip-session doesn't print participants, but it wouldn't be hard at all to do so, since it already subscribes to such event. Also, what RFC4353 refers to as 'fetch' is just sending a SUBSCRIBE with expires 0, in order to trigger a NOTIFY with the participants update, but in our case we already have such list though is not printed anywhere.
> rfc4353 further states:
> There is no explicit means in SIP to destroy a conference. However,
> a conference may be destroyed as a by-product of a user leaving the
> conference, which can be done with BYE. In particular, if the
> conference policy states that the conference is destroyed once the
> last user or a specific user leaves, when that user does leave (using
> a SIP BYE request), the conference is destroyed.
> based on my tests, looks like conference is destroyed when last user
> leaves it. is that the only way to destroy conference? for example,
> when a user joins, there could be some way to tell that conference is
> destroyed when this user leaves it no matter how many other users are
> still in conference. or there could be a special bye header that means
> that the whole conference is destroyed.
Yes, when the last user leaves the conference is destroyed. Well, many things could be done there, but there is no standard way to do it nor a one-fits-all solution, unfortunately. I'd leave that to the client, that is, if you want to send the conference, you may ask the server to remove each participant one by one and then you can exit yourself. In any case, I haven't given these ideas much thought yet, so there is room for improvement :-)
Saúl Ibarra Corretgé
More information about the SIPBeyondVoIP