2011/5/31 Daniel-Constantin Mierla miconda@gmail.com:
the best you have to code it in C, should not be that hard:
- keep the transaction ID in some list
- after a while, based on a timer process, lookup transaction
- add a branch and forward it
Or, if possible, fake somehow a negative reply and inject it from the network, then kamailio will trigger a failure route, the media server will still play.
Or put another proxy before media server, use rtimer+mqueue to cancel a transaction after a while with: http://kamailio.org/docs/modules/stable/modules_k/tmx.html#id2784882
Inside intermediary proxy, drop the cancels. It might work at the end :-)
Thanks a lot Daniel. Finally it seems that the late branch would always arrive to a PSTN gateway under our control, so calling like a "Sleep(10)" function in the gw before it relays the call to the carriers would do the job in an easily way.
I hope this is finally the case. If not, let's code C :)
Cheers.