Hi
Running Kamailio Registrar Node + rtpengine without dialog module, only TRX module.
Situation: Some customer are in ranges to which RTP can directly be routed, some are not.
So rtpengine shall be engaged only when backhauling of the rtp stream is required.
On a message from a CPE, this is done by checking $si and on a message to the CPE by checking $(ulc(aor=>addr)[$T_branch_idx]{uri.host});
On a BYE, rtpengine_delete() is called no matter if RTP was backhauled or not. If rtpengine does not find the call to delete, no harm happens.
But now I struggle with Session Refresh Re-Invites TO the CPE as they are routed very early on and do not pass the whole location lookup stuff, therefore I have no access to the aor=>addr to determine if the destination needs backhauling or not.
So the obvious solution which came to my mind is to call rtpengine_query() and see if it is finding the call and if so, call rtpengine_manage() to keep backhauling traffic on the Re-Invites refrreshing the session.
Unfortunately, I found no way to check if rtpengine_query finds the call. Did I miss something?