Dahdi card hangs up call to pstn, but line is still open to pstn

hello
I have freepbx 13 with asterisk 11 and I have installed one A400 analog card on my sangoma PBX 60.
device has detected dahdi card and all fxo and fxs channels. dahdi config busydetct is enabled and it’s count is 3.
this device is in iran and fxos are connnected to iran pstn.
when someone calls from pstn to one of extensions, if caller from pstn hangup call , extension operator listens busy tone and the calls to it hangs up. but if extension operator hangs up while caller is still behind line. the caller doesn’t understand call is hang up and line is still open, pstn caller waits on line for around 1 min and then hangs up, so if extension operator during thids 1 min imagines last call is hanged up and try to dial another call, the caller on pstn can hear dialing tone for new number,
asterisk cli shows channel has hang up

– Executing [[email protected]:5] Hangup(“DAHDI/9-1”, “”) in new stack
== Spawn extension (macro-hangupcall, s, 5) exited non-zero on ‘DAHDI/9-1’ in macro ‘hangupcall’
== Spawn extension (macro-dial-one, h, 1) exited non-zero on ‘DAHDI/9-1’
– DAHDI/9-1 Internal Gosub(crm-hangup,s,1) start
– Executing [[email protected]:1] NoOp(“DAHDI/9-1”, “Sending Hangup to CRM”) in new stack
– Executing [[email protected]:2] NoOp(“DAHDI/9-1”, “HANGUP CAUSE: 16”) in new stack
– Executing [[email protected]:3] ExecIf(“DAHDI/9-1”, “0?Set(__CRM_VOICEMAIL=)”) in new stack
– Executing [[email protected]:4] NoOp(“DAHDI/9-1”, “MASTER CHANNEL: 1512036366.0 = 1512036366.0”) in new stack
– Executing [[email protected]:5] GotoIf(“DAHDI/9-1”, “0?return”) in new stack
– Executing [[email protected]:6] Set(“DAHDI/9-1”, “__CRM_HANGUP=1”) in new stack
– Executing [[email protected]:7] AGI(“DAHDI/9-1”, “sangomacrm.agi”) in new stack
– Launched AGI Script /var/lib/asterisk/agi-bin/sangomacrm.agi
– <DAHDI/9-1>AGI Script sangomacrm.agi completed, returning 0
– Executing [[email protected]:8] Return(“DAHDI/9-1”, “”) in new stack
== Spawn extension (macro-dial-one, h, 1) exited non-zero on ‘DAHDI/9-1’
– DAHDI/9-1 Internal Gosub(crm-hangup,s,1) complete GOSUB_RETVAL=
– SIP/201-00000000 Internal Gosub(crm-hangup,s,1) start
– Executing [[email protected]:1] NoOp(“SIP/201-00000000”, “Sending Hangup to CRM”) in new stack
– Executing [[email protected]:2] NoOp(“SIP/201-00000000”, “HANGUP CAUSE: 16”) in new stack
– Executing [[email protected]:3] ExecIf(“SIP/201-00000000”, “0?Set(__CRM_VOICEMAIL=)”) in new stack
– Executing [[email protected]:4] NoOp(“SIP/201-00000000”, “MASTER CHANNEL: 1512036377.1 = 1512036366.0”) in new stack
– Executing [[email protected]:5] GotoIf(“SIP/201-00000000”, “1?return”) in new stack
– Goto (crm-hangup,s,8)
– Executing [[email protected]:8] Return(“SIP/201-00000000”, “”) in new stack
== Spawn extension (macro-dial-one, , 1) exited non-zero on ‘SIP/201-00000000’
– SIP/201-00000000 Internal Gosub(crm-hangup,s,1) complete GOSUB_RETVAL=
== Spawn extension (macro-dial-one, s, 53) exited non-zero on ‘DAHDI/9-1’ in macro ‘dial-one’
== Spawn extension (macro-exten-vm, s, 20) exited non-zero on ‘DAHDI/9-1’ in macro ‘exten-vm’
== Spawn extension (ext-local, 201, 2) exited non-zero on ‘DAHDI/9-1’
– Hanging up on ‘DAHDI/9-1’
– Hungup ‘DAHDI/9-1’

this is cahn_dahdi.conf details:

generated by module
#include chan_dahdi_general.conf

; for user additions not provided by module
#include chan_dahdi_general_custom.conf

[channels]
language=en
busydetect=yes
busycount=3
usecallerid=yes
callwaiting=yes
usecallingpres=yes
threewaycalling=yes
transfer=yes
cancallforward=yes
callreturn=yes
echocancel=yes
echocancelwhenbridged=no
echotraining=no
immediate=no
faxdetect=both
rxgain=0.0
txgain=0.0

and this is chan_dahdi-groups detail:

signalling=fxs_ks
context=from-analog
group=0
channel=>9

signalling=fxs_ks
context=from-analog
group=0
channel=>10

signalling=fxs_ks
context=from-analog
group=0
channel=>11

signalling=fxs_ks
context=from-analog
group=0
channel=>12

signalling=fxo_ks
context=from-analog
group=0
channel=>7

signalling=fxo_ks
context=from-analog
group=0
channel=>8

and this is system.conf detail:

fxsks=9-12
echocanceller=oslec,9-12
fxoks=7,8
echocanceller=oslec,7,8
loadzone=us
defaultzone=us

can anybody give advice to me how to solve this problem?
tahnks