Daniel-Constantin Mierla writes:
In case of
topology:
A - P1 - P2 - P1 - B
is the idea to use in P1 context "in" when initial request comes to P1
from A or B and context "out" when initial request comes to P1 from P2?
Does context need to be set in replies too? If so, is reply context the
same as the corresponding request context?
And finally, does context need to be set for in-dialog requests/replies
the same way as for initial requests?
Normally the context has to be set for the initial request. Set one
value for the request coming from A to P1 and another one for P2 to P1,
using one of the event routes.
I did more testing on this. When P1 receives INVITE from A, it calls
tps_set_context("leg1") in on_topos:msg-sending and when it receives the
INVITE from P2, it calls tps_set_context("leg2").
INVITE and 200 OK seems to work as they should, but when P1 receives ACK
from A, it first forwards the ACK back to itself and adds Route header
to it. After receiving the ACK from itself, it removes the Route header
and adds second Via header with different branch value and then forwards
the ACK to P2.
I have pcap of this if it would help to figure out what is going on.
-- Juha