use the Transfer command in S1 and transfer the call to S2. Dialplan on S1 [test_context] exten => _X.,1,Transfer(SIP/${EXTEN}@IP_of_S2) exten => _X.,n,NoOp(${TRANSFERSTATUS}) exten => _X.,n,Hangup Dialplan on S2 [default] exten => _X.,1,Playback(somemsg) exten => _X.,n,Hangup [test_context] exten => _X.,1,Answer exten => _X.,n,Playback(msg) exten => _X.,n,Hangup The context for the SIP peer C1 is defined as 'test_context' in S1 and S2. In C1, I have set 'promiscredir = yes' in sip.conf. When I dial from C1, the call is successfully transferred to S1 (I get TRANSFERSTATUS as SUCCESS and I can see C1 trying to send the call to S2). But the call does not get authenticated on S2 and goes into default context instead of 'test_context'. How can I transfer the call such that S2 authenticates the call and sends it to the required context? Thanks