[reSIProcate] how to send reINVITE with DUM ?

Diego Susa dsusa at cestel.es
Wed Jun 21 11:07:31 CDT 2006


Hi:
I'm trying to make a little example program that implements the "Flow 
IV" section in RFC3725 (3pcc).
The problem is that I can't find a way to send the reINVITE  properly 
(message number 6 in Figure 4).
I've found no place in DUM docs, wikis, forums, etc which tells me how 
to send a reINVITE from a UAC.
I've tried these 2 approaches:
1) sending the INVITE and reINVITE to client "A" as in the basicCall 
example in /dum/test:
dumC1->send(dumC1->makeInviteSession(client1Aor, 0, new 
b2buaAppDialogSet(*dumC1, "Client1(INVITE)")));
This way doesn't work because client "A" thinks the reINVITE is a "new" 
invite, and tells me the softphone is "busy" with the first one.
2) making a copy of the first INVITE, the SipMessage created by the 
makeInviteSession() call. Then "sending" this SipMessage as reINVITE. I 
manually set the SDP content of client "B" as the RFC indicates, and 
also incrementes the CSeq number of the original message.
This way doesn't work, the example program asserts at 
InviteSession.cxx:1515, telling that "DUM delivered a INVITE to the 
InviteSession". The message traced at this point is: 481 Call 
Leg/Transaction Does Not Exist.

Could anyone give me a hint about sending reINVITEs with DUM ?
thanks in advance....
Diego






More information about the resiprocate-devel mailing list