Hello,
On 09/09/14 16:15, Drazen Rep wrote:
Hi,
I am using Kamailio 4.1.1 and dlg_manage() function for processing SIP requests with dialog module. After call is established Kamailio is being used for generating in-dialog INFO request toward caller (using t_uac_dlg function via xmlrpc). INFO messages are correctly generated but dialog calee_cseq value is not being incremented with every message. That represents a problem since other SIP requests generated by callee side (like OPTIONS) are not in order, and there is no correct information about calee_cseq value in dialog memory records.
The question is how can I increment dialog calee_cseq value when local INFO request toward caller is being generated using t_uac_dlg via xmlrpc?
such feature is not available at this moment.
If the callee hasn't sent yet a message, the proxy won't have any clue on what is going to be initial cseq used by callee, because there is no constraint to start from 1 in the SIP RFC.
In the master branch (to become 4.2), I added recently support to increment the cseq towards caller, with the main target to handle authentication challenge from gateways/termination providers. In other words, dialog module has some capabilities towards handling cseq differences, but exactly what you need is not there.
To get that, probably a new rpc command has to be exported by dialog module, to catch cseq updates, because t_uac_dlg is from tm module, with no relation to dialog. So, overall, it is about writing some c code to dialog module -- as starting point you can look at dlg_cseq.{c,h} files to see how cseq can be updated and eventually at dlg_bridge rpc command to see how a request within dialog can be sent (it sends a REFER withing dialog) or dlg terminate (which sends BYE).
On the other hand, maybe there are other options for your needs, what is the purpose for INFO requests sent by the proxy?
Cheers, Daniel