Henning Westerholt wrote:
On Sunday 04 April 2010, Maxim Sobolev wrote:
We have some new functionality for the nathelper
planned that would need
to know final destination URI for the message to work properly.
Currently this means that we have to require script writer to invoke
this function only after all URI transformations have been applied,
which might quite significantly complicate script logic. Moreover it
might be even impossible in some cases to do so, for example when using
t_relay() function, which uses transaction state to determine message
destination.
Hi Maxim,
so the callback you think about should be registered in the configuration, or
the module, e.g. nathelper? If the latter, then perhaps the event_route stuff
that Daniel implemented some time ago may be help you here. It looks that it
could fit to your needs, more informations can e.g. be found here:
http://by-miconda.blogspot.com/2009/12/best-of-new-in-kamailio-300-9.html
Yes, for the module, so that the module can defer some actions for the
later time. In my case I need to apply some transformations before the
message gets reassembled for the delivery.
Therefore, I
see the need for a callback mechanism in core, allowing
callback functions to be registered on per-message basis and then to be
executed in some well-defined points of message processing. The
mechanism could be sufficiently generic to allow different uses. One of
the other use that I have in mind is destructor callback, which is to be
called when the message structure is being freed, so that modules would
be able to release any resources allocated (memory, connections,
descriptors, etc).
Did i understand you correctly that you need to have the CB bound to a certain
message? The existing way of achieving this functionality is to bind against a
transaction or a dialog, this is not usable here? For the destructor call, i
think there is a callback when the transaction is destroyed, the
'TMCB_DESTROY'. The problem i see here is also the message state, that is not
available if you run in without TM.
Yes, exactly, I need something for the message. TM callback is not
really what I am thinking about here. It has to be on the lower level
than that.
Regards,
--
Maksym Sobolyev
Sippy Software, Inc.
Internet Telephony (VoIP) Experts
T/F: +1-646-651-1110
Web:
http://www.sippysoft.com
MSN: sales(a)sippysoft.com
Skype: SippySoft