Kriss
18/02/2011, 18h59
Hello ici,
Voilà des heures (jours?) que je me prend la tête sur un truc improbable. J'ai un SVI sur un serveur *qui est appelé par le biais d'un SDA qui est sur un groupement T0 completel (via un oneaccess ONE150). Coté asterisk, c'est une TE410P.
Lorsque je contact mon SVI via une ligne fixe (FT ou IP), tout va bien.
En revanche, lorsque j'appel depuis un mobile, quel que soit l'opérateur, ou le mobile, je reçois toutes les DTMF en double...
Bien :
[Feb 18 17:51:40] DTMF[8003] channel.c: DTMF end '0' received on mISDN/5-u16, duration 0 ms
[Feb 18 17:51:40] DTMF[8003] channel.c: DTMF end accepted without begin '0' on mISDN/5-u16
[Feb 18 17:51:40] DTMF[8003] channel.c: DTMF end passthrough '0' on mISDN/5-u16
[Feb 18 17:51:41] DTMF[8003] channel.c: DTMF end '0' received on mISDN/5-u16, duration 0 ms
[Feb 18 17:51:41] DTMF[8003] channel.c: DTMF end accepted without begin '0' on mISDN/5-u16
[Feb 18 17:51:41] DTMF[8003] channel.c: DTMF end passthrough '0' on mISDN/5-u16
[Feb 18 17:51:41] DTMF[8003] channel.c: DTMF end '4' received on mISDN/5-u16, duration 0 ms
[Feb 18 17:51:41] DTMF[8003] channel.c: DTMF end accepted without begin '9' on mISDN/5-u16
[Feb 18 17:51:41] DTMF[8003] channel.c: DTMF end passthrough '4' on mISDN/5-u16
[Feb 18 17:51:41] VERBOSE[8003] logger.c: == CDR updated on mISDN/5-u16
[Feb 18 17:51:41] VERBOSE[8003] logger.c: -- Executing [004@ivr-3:1] ExecIf("mISDN/5-u16", "0|dbDel|") in new stack
Pas bien :
[Feb 18 17:50:52] DTMF[7976] channel.c: DTMF end '0' received on mISDN/3-u15, duration 0 ms
[Feb 18 17:50:52] DTMF[7976] channel.c: DTMF end accepted without begin '0' on mISDN/3-u15
[Feb 18 17:50:52] DTMF[7976] channel.c: DTMF end passthrough '0' on mISDN/3-u15
[Feb 18 17:50:52] DTMF[7976] channel.c: DTMF end '0' received on mISDN/3-u15, duration 0 ms
[Feb 18 17:50:52] DTMF[7976] channel.c: DTMF end accepted without begin '0' on mISDN/3-u15
[Feb 18 17:50:52] DTMF[7976] channel.c: DTMF end passthrough '0' on mISDN/3-u15
[Feb 18 17:50:53] DTMF[7976] channel.c: DTMF end '0' received on mISDN/3-u15, duration 0 ms
[Feb 18 17:50:53] DTMF[7976] channel.c: DTMF end accepted without begin '0' on mISDN/3-u15
[Feb 18 17:50:53] DTMF[7976] channel.c: DTMF end passthrough '0' on mISDN/3-u15
[Feb 18 17:50:53] VERBOSE[7976] logger.c: -- Invalid extension '000' in context 'ivr-3' on mISDN/3-u15
[Feb 18 17:50:53] VERBOSE[7976] logger.c: == CDR updated on mISDN/3-u15
[Feb 18 17:50:53] VERBOSE[7976] logger.c: -- Executing [i@ivr-3:1] Set("mISDN/3-u15", "LOOPCOUNT=1") in new stack
[Feb 18 17:50:53] VERBOSE[7976] logger.c: -- Executing [i@ivr-3:2] ExecIf("mISDN/3-u15", "1|Playback|invalid") in new stack
[Feb 18 17:50:53] VERBOSE[7976] logger.c: -- <mISDN/3-u15> Playing 'invalid' (language 'fr')
[Feb 18 17:50:53] DTMF[7976] channel.c: DTMF end '4' received on mISDN/3-u15, duration 0 ms
[Feb 18 17:50:53] DTMF[7976] channel.c: DTMF end accepted without begin '4' on mISDN/3-u15
[Feb 18 17:50:53] DTMF[7976] channel.c: DTMF end passthrough '4' on mISDN/3-u15
[Feb 18 17:50:53] DTMF[7976] channel.c: DTMF end '4' received on mISDN/3-u15, duration 0 ms
[Feb 18 17:50:53] DTMF[7976] channel.c: DTMF end accepted without begin '4' on mISDN/3-u15
[Feb 18 17:50:53] DTMF[7976] channel.c: DTMF end passthrough '4' on mISDN/3-u15
[Feb 18 17:50:57] VERBOSE[7976] logger.c: -- Executing [i@ivr-3:3] GotoIf("mISDN/3-u15", "1?s|begin") in new stack
Pour les fichiers de conf, voilà ce que j'ai pour le /etc/asterisk/misdn.conf :
[general]
debug = 0
method=standard
bridging=yes
stop_tone_after_first_digit=yes
append_digits2exten=yes
dynamic_crypt=no
crypt_prefix=**
crypt_keys=test,muh
jitterbuffer=4000
jitterbuffer_upper_threshold=0
[default]
context=misdn
language=fr
musicclass=default
senddtmf=yes
far_alerting=no
allowed_bearers=all
nationalprefix=0
internationalprefix=00
rxgain=0
txgain=0
te_choose_channel=no
pmp_l1_check=no
reject_cause=16
need_more_infos=no
nttimeout=no
method=standard
dialplan=0
localdialplan=0
cpndialplan=0
early_bconnect=yes
incoming_early_audio=no
nodialtone=no
callgroup=1
pickupgroup=1
presentation=-1
screen=-1
echocancel=yes
hdlc=no
jitterbuffer=4000
jitterbuffer_upper_threshold=0
echotraining=yes
[isdn]
ports=1,2,3,4
context=from-pstn
callgroup=1
pickupgroup=1
msns=*
Et enfin pour le /etc/mISDN.conf :
<mISDNconf>
<module poll="128" debug="0" timer="no">hfcmulti</module>
<module debug="0" options="0">mISDN_dsp</module>
<devnode user="asterisk" group="asterisk" mode="660">mISDN</devnode>
<card type="BN4S0" ulaw="yes">
<port mode="te" link="ptp">1</port>
<port mode="te" link="ptp">2</port>
<port mode="te" link="ptp">3</port>
<port mode="te" link="ptp">4</port>
</card>
</mISDNconf>
J'ai essayé de jouer avec les echocanceler / training sans succès, le senddtmf=no ne change rien non plus ...
Bref, là je sèche..
./Kriss
Voilà des heures (jours?) que je me prend la tête sur un truc improbable. J'ai un SVI sur un serveur *qui est appelé par le biais d'un SDA qui est sur un groupement T0 completel (via un oneaccess ONE150). Coté asterisk, c'est une TE410P.
Lorsque je contact mon SVI via une ligne fixe (FT ou IP), tout va bien.
En revanche, lorsque j'appel depuis un mobile, quel que soit l'opérateur, ou le mobile, je reçois toutes les DTMF en double...
Bien :
[Feb 18 17:51:40] DTMF[8003] channel.c: DTMF end '0' received on mISDN/5-u16, duration 0 ms
[Feb 18 17:51:40] DTMF[8003] channel.c: DTMF end accepted without begin '0' on mISDN/5-u16
[Feb 18 17:51:40] DTMF[8003] channel.c: DTMF end passthrough '0' on mISDN/5-u16
[Feb 18 17:51:41] DTMF[8003] channel.c: DTMF end '0' received on mISDN/5-u16, duration 0 ms
[Feb 18 17:51:41] DTMF[8003] channel.c: DTMF end accepted without begin '0' on mISDN/5-u16
[Feb 18 17:51:41] DTMF[8003] channel.c: DTMF end passthrough '0' on mISDN/5-u16
[Feb 18 17:51:41] DTMF[8003] channel.c: DTMF end '4' received on mISDN/5-u16, duration 0 ms
[Feb 18 17:51:41] DTMF[8003] channel.c: DTMF end accepted without begin '9' on mISDN/5-u16
[Feb 18 17:51:41] DTMF[8003] channel.c: DTMF end passthrough '4' on mISDN/5-u16
[Feb 18 17:51:41] VERBOSE[8003] logger.c: == CDR updated on mISDN/5-u16
[Feb 18 17:51:41] VERBOSE[8003] logger.c: -- Executing [004@ivr-3:1] ExecIf("mISDN/5-u16", "0|dbDel|") in new stack
Pas bien :
[Feb 18 17:50:52] DTMF[7976] channel.c: DTMF end '0' received on mISDN/3-u15, duration 0 ms
[Feb 18 17:50:52] DTMF[7976] channel.c: DTMF end accepted without begin '0' on mISDN/3-u15
[Feb 18 17:50:52] DTMF[7976] channel.c: DTMF end passthrough '0' on mISDN/3-u15
[Feb 18 17:50:52] DTMF[7976] channel.c: DTMF end '0' received on mISDN/3-u15, duration 0 ms
[Feb 18 17:50:52] DTMF[7976] channel.c: DTMF end accepted without begin '0' on mISDN/3-u15
[Feb 18 17:50:52] DTMF[7976] channel.c: DTMF end passthrough '0' on mISDN/3-u15
[Feb 18 17:50:53] DTMF[7976] channel.c: DTMF end '0' received on mISDN/3-u15, duration 0 ms
[Feb 18 17:50:53] DTMF[7976] channel.c: DTMF end accepted without begin '0' on mISDN/3-u15
[Feb 18 17:50:53] DTMF[7976] channel.c: DTMF end passthrough '0' on mISDN/3-u15
[Feb 18 17:50:53] VERBOSE[7976] logger.c: -- Invalid extension '000' in context 'ivr-3' on mISDN/3-u15
[Feb 18 17:50:53] VERBOSE[7976] logger.c: == CDR updated on mISDN/3-u15
[Feb 18 17:50:53] VERBOSE[7976] logger.c: -- Executing [i@ivr-3:1] Set("mISDN/3-u15", "LOOPCOUNT=1") in new stack
[Feb 18 17:50:53] VERBOSE[7976] logger.c: -- Executing [i@ivr-3:2] ExecIf("mISDN/3-u15", "1|Playback|invalid") in new stack
[Feb 18 17:50:53] VERBOSE[7976] logger.c: -- <mISDN/3-u15> Playing 'invalid' (language 'fr')
[Feb 18 17:50:53] DTMF[7976] channel.c: DTMF end '4' received on mISDN/3-u15, duration 0 ms
[Feb 18 17:50:53] DTMF[7976] channel.c: DTMF end accepted without begin '4' on mISDN/3-u15
[Feb 18 17:50:53] DTMF[7976] channel.c: DTMF end passthrough '4' on mISDN/3-u15
[Feb 18 17:50:53] DTMF[7976] channel.c: DTMF end '4' received on mISDN/3-u15, duration 0 ms
[Feb 18 17:50:53] DTMF[7976] channel.c: DTMF end accepted without begin '4' on mISDN/3-u15
[Feb 18 17:50:53] DTMF[7976] channel.c: DTMF end passthrough '4' on mISDN/3-u15
[Feb 18 17:50:57] VERBOSE[7976] logger.c: -- Executing [i@ivr-3:3] GotoIf("mISDN/3-u15", "1?s|begin") in new stack
Pour les fichiers de conf, voilà ce que j'ai pour le /etc/asterisk/misdn.conf :
[general]
debug = 0
method=standard
bridging=yes
stop_tone_after_first_digit=yes
append_digits2exten=yes
dynamic_crypt=no
crypt_prefix=**
crypt_keys=test,muh
jitterbuffer=4000
jitterbuffer_upper_threshold=0
[default]
context=misdn
language=fr
musicclass=default
senddtmf=yes
far_alerting=no
allowed_bearers=all
nationalprefix=0
internationalprefix=00
rxgain=0
txgain=0
te_choose_channel=no
pmp_l1_check=no
reject_cause=16
need_more_infos=no
nttimeout=no
method=standard
dialplan=0
localdialplan=0
cpndialplan=0
early_bconnect=yes
incoming_early_audio=no
nodialtone=no
callgroup=1
pickupgroup=1
presentation=-1
screen=-1
echocancel=yes
hdlc=no
jitterbuffer=4000
jitterbuffer_upper_threshold=0
echotraining=yes
[isdn]
ports=1,2,3,4
context=from-pstn
callgroup=1
pickupgroup=1
msns=*
Et enfin pour le /etc/mISDN.conf :
<mISDNconf>
<module poll="128" debug="0" timer="no">hfcmulti</module>
<module debug="0" options="0">mISDN_dsp</module>
<devnode user="asterisk" group="asterisk" mode="660">mISDN</devnode>
<card type="BN4S0" ulaw="yes">
<port mode="te" link="ptp">1</port>
<port mode="te" link="ptp">2</port>
<port mode="te" link="ptp">3</port>
<port mode="te" link="ptp">4</port>
</card>
</mISDNconf>
J'ai essayé de jouer avec les echocanceler / training sans succès, le senddtmf=no ne change rien non plus ...
Bref, là je sèche..
./Kriss