[asterisk-users] passing '302 moved temporarily' back to the SIP provider

Johann Steinwendtner steinwendtner at gmx.net
Tue May 7 05:52:48 CDT 2013


Hello,

I 'm looking for a way to pass the '302 moved temporarily' received from the SIP device
back to the SIP provider.
Here is the setup:
Some SIP phones are connected to an Asterisk System version 1.8.
External connection to the public network is also done via SIP to a VoIP provider.

Phone A has a CFW all calls to a phone number in public network (Mobile Phone)

incoming call to Phone A, Phone A sends back a 302 response. This results in:
-- Got SIP response 302 "Moved Temporarily" back from 192.168.2.188:5072
-- Now forwarding SIP/public-000000e7 to 'Local/00662943825 at internal_extensions' (thanks to SIP/25-000000e8)
[May  7 12:22:15] NOTICE[31241]: app_dial.c:859 do_forward: Not accepting call completion offers from call-forward recipient Local/00662943825 at internal_extensions-f967;1

and a Dial via Local channel to the SIP provider is made.
However, two channels are consumed and bandwith is wasted.

Second approach:
I tried to catch the redirect in the call forward context which is defined before the Dial statement:
and do the redirect with app_transfer.

e.g. snippet from macro-stdexten:
exten => s,n,Set(_FORWARD_CONTEXT=from_sip_forward)
exten => s,n,Dial(${ARG2},${ARG4},tTfwW)

[from_sip_forward]
include => internal_devices
exten => _X.,1,Verbose(1,${CALLERID(num)} tries call forward to ${EXTEN} for device ${CALLERID(rdnis)})
exten => _X.,n,Transfer(${EXT_TRUNK}/${EXTEN})
exten => _X.,n,NoOp(Transfer STATUS: ${TRANSFERSTATUS})

However, this does not work,

Is there a way to send the 302 response to the VoIP provider ?


Thanks.

Hans





More information about the asterisk-users mailing list