Hi Joachim,
the reason haven't changed: avps doesn't work in on_reply route since the avp belong to a transaction and the on_reply route execution is not synchronized and may be done in parallel for same transaction.
For the moment there is no solution to this - synchronizing the on_reply routes will be quite ugly :-/
But what will be done (there was a discussion with Juha on this topic) is to add global avps which not being bound to a transaction can be used inside on_reply route. I guess this will solve your problem....
regards, bogdan
Joachim Fabini wrote:
Hi again,
Having solved the previous topic using Bogdan's hint I stumbled straight into a new problem. Is there a workaround for not being able to use the avp-ops from onreply_route?
Some details on the reason: We implement the Service- Route extension according to RFC 3608. The registrar returns in the 200OK a ServiceRoute header where all proxies on the (return) path register themselves.
The last proxy (that forwards the 200 OK to the UA) is supposed to store the ServiceRoute locally. Our plan was straight-forward: to store the header field's content via avp-ops from within the onreply_route.
Unfortunately avp-ops are not available in onreply_route - Bogdan explains the reason why in http://www.archivum.info/serdev%40iptel.org/2005-02/msg00274.html
Is there a specific reason why the access to the avp list is not synchronized? Performance? Basically, provided a good description of the implementation and concept, imho it could be left to users to restrict themselves to have avpops writes in only in their onreply_routes for a specific avp pair. Or, provide synchronized avps?
So, does anyone have an idea how we can:
- Store an AVP containing header fields extracted from a
200 OK message
- Retrieve this AVP on incoming invites in order to place
these values into the message (security check and/or Route enforcement).
Thanks in advance, best regards --Joachim
Users mailing list Users@openser.org http://openser.org/cgi-bin/mailman/listinfo/users