Hi Brian, I have thought about this problem and discussed with Bogdan and he come up with the simplest solution - take the Cseq from the received Invite. And your scenario should be solved. I will make this change and let you know when to update from svn.
Regards, -- Anca Vamanu www.voice-system.ro opensipsl...@encambio.com wrote: > Hello Anca, > > I'm approaching the problem from a different perspective now, > and making progress with your help. Please note the 'CSEQ'... > > Caller OpenSIPS B2B Mediaserver > | | | > INVITE CSEQ 1 ------------->| INVITE CSEQ 2 ----->| > | | | > |<-- 401 WWW-Authenticate |<-------- 401 WWW-Authenticate > | | | > INVITE CSEQ 2 ------------->| INVITE CSEQ 2 ----->| > | | !!!!!! | > | | | > |<-- 401 WWW-Authenticate |<-------- 401 WWW-Authenticate > | | | > > As you can see, the above scenario will not work. The B2B logic is > not increasing the CSEQ of the second incoming INVITE. This is the > real one that should actually start the dialog. > > How do you recommend to correct this. Can I simply adjust your > prepaid.xml file? > > My best guess is that I can insert a 'delete_entity' to try to > indicate to the B2b logic that a new dialog begins at the second > INVITE, but I don't know how to do that. Is this right? > > <!-- prepaid.xml, insert a new 'request' block --> > <rules> > <request> > <invite> > <rule id="1"> > <condition> > <state>1</state> > <sender> > <type>server</type> > <id>server1</id> > </sender> > </condition> > > <action> > <delete_entity/> > <bridge> > <client> > <id>server1</id> > </client> > <client> > <id>client1</id> > <destination> > <value type="initial">server1</value> > </destination> > </client> > </bridge> > <state>2</state> > </action> > </rule> > > Alternatively I could try changing the routing script to only call > the B2B logic at the second INVITE, but that would be very hacky. > > # initial requests > if (is_method("INVITE") && src_ip != myself) { # rewrite block > if (!t_newtran()) { # to ignore any > sl_reply_error(); # INVITE request > exit; # without a Auth > } # header > b2b_init_request("prepaid", > "sip:t...@medsrv.host.tld:5080;transport=tcp", > "sip:t...@medsrv.host.tld:5080;transport=tcp"); > exit; > } > > I prefer doing it correctly, by adjusting your prepaid.xml scenario. > > Regards, > Brian > > _______________________________________________ > Users mailing list > Users@lists.opensips.org > http://lists.opensips.org/cgi-bin/mailman/listinfo/users > > _______________________________________________ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users