Hi,<br><br>I've been debuging the call disconnection problem in our
architecture:<br><br>PSTN---E1---OldPBX---E1---Asterisk<br><br>This is our
problem:<br><br>-SIP user agent "A" calls a pstn phone "B".<br>-"B" hangs up the
call.<br>-SIP user agent "A" starts listenning busytones... But the call still
on. (and being payed).<br>- Call only ends when it is correctly hanged up in the
SIPphone.<br><br>I've been tracing the communications between the OldPBX
(NETWORK) and Asterisk (USER SIDE) and i found this:<br><br><br>M03 PROGRESS
<br>I08 Cause<br>Coding Std=CCITT<br>Location=<br>Private net-remote<br>Cause
Code=16<br>I1E Progress indicator<br>Coding Std=CCITT<br>Location=<br>Public
net-local<br>Progress desc=<br>Inband info avail<br>I28 Display<br>Info=CHAMADA
DESLIGA<br>DA<br>08 02 00 02 03 08 02<br>85 90 1E 02 82 88 28<br>11 43 48 41 4D
41 44<br>41 20 44 45 53 4C 49<br>47 41 44 41<br><br><br>RXB From User Side
<br>00:45:29.902 Fr.25<br>L2: Sapi=0 Tei=0<br>INFO<br>pf=0 Nr=84 Ns=69<br>00 01
8A A8<br>L3: PD=08 CR(D)=2<br>M7D STATUS <br>I08 Cause<br>Coding
Std=CCITT<br>Location=User<br>Cause Code=98<br>I14 Call state<br>Coding
Std=CCITT<br>State=10<br>08 02 80 02 7D 08 02<br>80 E2 14 01
0A<br><br><br><br>This trace reports to a called party that hanged up the call,
then our old PBX talked to Asterisk with :<br><br>PROGRESS<br>Cause
Code=16<br><br>and Asterisk answered with <br><br>Location=User<br>Cause
Code=98<br><br>I've been looking ISDN cause Codes and i found:<br><br>Cause No.
98 - message not compatible with call state or message type
non-existent.<br>This cause indicates that the equipment sending this cause has
received a message such that the procedures do not indicate that this is a
permissible message to receive while in the call state, or a STATUS message was
received indicating an incompatible call state.<br><br>I hope you can advice me.
Is it affordable to use Hangupcause?<br><br>what we need is that, if the called
party hangs, asterisk should hang (safety reasons on billing)..<br><br>exten
=> _2XXXXXXXX,1,Dial(Zap/g1/${EXTEN})<br>exten =>
_2XXXXXXXX,2,gotoif,$[${HANGUPCAUSE} = 16]?99999|1<br>exten =>
99999,1,Hangup<br><br><br>I'm not sure if this is possible neither recommended,
should be HangupCAUSE=16 or =98 ??<br><br>Best regards,<br>Marco Mouta