Hi Bogdan!
regardin the example:
case -3: is not defined as return value, looks like a typo
klaus
Bogdan-Andrei Iancu wrote:
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
_______________________________________________
Devel mailing list
Devel(a)openser.org
http://openser.org/cgi-bin/mailman/listinfo/devel