Summary:ASTERISK-19708: Call Deflection with DAHDISendCallreroutingFacility on EuroISDN not working
Reporter:mehdi Shirazi (babak2536)Labels:
Date Opened:2012-04-11 00:12:06Date Closed:2012-04-25 15:55:19
Versions:Frequency of
Environment:Asterisk:1.8.11 libpri:1.4.12 facilityenable=yes transfer=yes E1 with switchtype=euroisdn signalling=pri_cpe connected to C&C08 Huawei Local eXchange.All supplementary services are enabled in LX.Attachments:( 0) jira_asterisk_19708_v1.8.patch
exten => 66,n,Proceeding()
exten => 66,1,wait(5)
exten => 66,n,DAHDISendCallreroutingFacility(88050048,8262000,cfb)
exten => 66,n,wait(5)
exten => 66,n,Hangup()

after Executing DAHDISendCallreroutingFacility("DAHDI/i1/2188602827-3", "88050048,8262000,cfb")
in new stack  == Spawn extension (Call-Deflection, 66, 3) exited non-zero on 'DAHDI/i1/2188602827-3'

Asterisk exit immediately and last wait(5) won't Excute.

I used another PRI Analyzer and this is message sequence:

Asterisk    <--setup--    Local exchange
Asterisk  --proceeding-->  Local exchange
Asterisk   --facility-->  Local exchange
Asterisk   --Disconnect(Subscriber Absent)--> Local exchange
Asterisk    <--Release-- Local exchange
Asterisk    --Release complete--> Local exchange

from the Analyzer report Asterisk send Disconnect immediately after Facility message
don't wait for response from Local exchange and the call will drop immediately  so
1)it seems it need to built in wait(5) in DAHDISendCallreroutingFacility.
2)changing parameter:|cfb|cfnr|unknown always Asterisk send Disconnect message with
"Subscriber Absent" cause. DAHDISendCallreroutingFacility sends Disconnect message?
maybe this cause is why LX don't do anything.  

Comments:By: Richard Mudgett (rmudgett) 2012-04-11 10:23:45.076-0500

From asterisk-users list:

The DAHDISendCallreroutingFacility only sends the FACILITY message.  The DISCONNECT is because Asterisk is hanging up the call leg to Asterisk.

By: Richard Mudgett (rmudgett) 2012-04-11 11:02:50.194-0500

[^jira_asterisk_19708_v1.8.patch] adds a 5 second delay before disconnecting the call to wait for a response if the peer does not disconnect first.

By: Richard Mudgett (rmudgett) 2012-04-11 11:03:19.114-0500

Please test.

By: mehdi Shirazi (babak2536) 2012-04-17 07:44:47.845-0500

I patched, although this is my first time compiling Asterisk and applying patch.
from PRI Analyzer I see the 5s delay was added to DAHDISendCallreroutingFacility but there is no answer from local exchange and after 5sec asterisk send Disconnect  message.
I have access to other exchanges like EWSD, Alcatel S12,NEAX nec, but C&C08 Huawei was the newest version.

By: Richard Mudgett (rmudgett) 2012-04-17 09:47:24.856-0500

Five seconds is plenty long enough for the switch to respond if it is going to respond to the deflection.  Since it did not respond, it apparently does not support that supplementary feature at all.

By: mehdi Shirazi (babak2536) 2012-04-17 11:48:23.812-0500

If local Exchange supports Call Deflection, it sends any signaling message to Asterisk  ? if yes what is name of this message ?

By: Richard Mudgett (rmudgett) 2012-04-17 13:42:30.111-0500

It is a response to the deflection/call-rerouting facility.  The response is encoded in a facility ie and could be in a FACILITY message by itself or piggybacked onto another message.  Responses don't have names.  They are matched by the invokeId.  Since there should be only one outstanding invoke request it should be easy to spot in a message from the peer.

Is the call even forwarded to the new number?

By: Richard Mudgett (rmudgett) 2012-04-20 10:18:01.114-0500


By: mehdi Shirazi (babak2536) 2012-04-20 21:57:53.125-0500

The call was not forwarded :(
it seems Huawe C&C08 has CD supplementary service command but the command was not implemented !!. One change I considered after applying patch  in  trace I have  DISCONNECT(Normal call Clearing).
LX do not send any error message.
I changed signaling from Euroisdn to qsig, call setup is ok but after Asterisk FACILITY message LX send STATUS message with " Invalid information element contents" cause value.
if there is a success record on Siemens(awsd) Alcatel(S12) NEC(neax) I can arrange to test with them but I don't think they support ( because of their version).
I study document of one SoftSwitch+TG(Huwaei softx3000) which have enough document(even call trace) about supporting this service, I can arrange to test but even if success it is very limited application(because I should route traffic from all LX this SS+TG and when there is SIP, I think it is easier to implement this service with SIP.
please give your idea about using SS7 to implement this service in this question:

By: Richard Mudgett (rmudgett) 2012-04-23 10:00:56.099-0500

As far as I know features other than basic call setup are not implemented in sig_ss7/libss7.