[Users] New Feature: Supported methods and lookup

Bogdan-Andrei Iancu bogdan at voice-system.ro
Fri Dec 9 15:27:34 CET 2005


Hi,

based on Juha's patch - saving in usrloc the supported methods 
advertised during REGISTER - I extended lookup() function to perform 
method based filtering. What this means: lookup() may return only 
contacts which supports the method of the processed request.

Ex: there are two clients registering as same user:
    1) a SIP phone which support INVITE & family, but no presence and 
messaging.
    2) a soft messaging client : supports only MESSAGE
When a call hits the server, the lookup() will send it only to contact 
(1), to the phone, since the contact (2) does not support INVITE. When a 
MESSAGE hits the server, the lookup() will send it only to contact (2), 
to the soft client, since the contact (1) does not support MESSAGE.


the advantage is that you avoid un-necessary parallel forking and extra 
signalling. Also there are SIP implementation which does not even reply 
to methods they are not supporting, forcing the proxy to generate 
timeout..:(


The feature may be turned on or off via the module parameter 
"method_filtering":
       http://www.openser.org/docs/modules/1.1.x/registrar.html#AEN247

For more, see also the script snapshot from :
       http://www.openser.org/docs/modules/1.1.x/registrar.html#AEN288


regards,
bogdan
      




More information about the Users mailing list