[GELÖST] mISDN erkennt DTMF korrekt, aber Asterisk transferiert nicht :-(

torben

Neuer User
Mitglied seit
20 Mrz 2005
Beiträge
28
Punkte für Reaktionen
0
Punkte
0
Hallo zusammen,

vielleicht sieht ja einer, woran's bei mir hängt - ich habe seit gestern auf Asterisk 1.4b3 upgegradet und verwende das darin enthaltene chan_misdn. Soweit funktioniert auch alles prima.

Nun würde ich aber gerne per ## einen attended transfer machen - und die voice message, daß nun verbunden wird, kommt nur, wenn ich wie wild auf den # herumhaue. Mache ich das brav zweimal hintereinander - egal wie schnell - passiert nichts.

Das komische: mISDN erkennt bei "misdn set debug 3" JEDEN einzelnen Tastendruck, wirklich jeden. Aber als Transfer-Code wird es vom Asterisk nicht erkannt.

Mit einem angeschlossenen SIP-Phone klappt's ohne Probleme, d.h. prinzipiell geht das mit dem Transfer. Aber irgendwie klappt die Übergabe von chan_mISDN zu Asterisk nicht richtig. Die Erkennung ist es jedenfalls nicht.

Hier der Log-Output:
Code:
I IND :DTMF_TONE oad:01234567890 dad:12345678 pid:6 state:CONNECTED
P[ 4]  --> channel:1 mode:NT cause:16 ocause:16 rad: cad:12345678
P[ 4]  --> info_dad: onumplan:4 dnumplan:4 rnumplan:0 cpnnumplan:4
P[ 4]  --> caps:Speech pi:0 keypad: sending_complete:0
P[ 4]  --> DTMF:#
P[ 1] * IND : Digit #
P[ 4] I IND :DTMF_TONE oad:01234567890 dad:12345678 pid:6 state:CONNECTED
P[ 4]  --> channel:1 mode:NT cause:16 ocause:16 rad: cad:12345678
P[ 4]  --> info_dad: onumplan:4 dnumplan:4 rnumplan:0 cpnnumplan:4
P[ 4]  --> caps:Speech pi:0 keypad: sending_complete:0
P[ 4]  --> DTMF:#
P[ 1] * IND : Digit #
P[ 4] I IND :DTMF_TONE oad:01234567890 dad:12345678 pid:6 state:CONNECTED
P[ 4]  --> channel:1 mode:NT cause:16 ocause:16 rad: cad:12345678
P[ 4]  --> info_dad: onumplan:4 dnumplan:4 rnumplan:0 cpnnumplan:4
P[ 4]  --> caps:Speech pi:0 keypad: sending_complete:0
P[ 4]  --> DTMF:#
P[ 1] * IND : Digit #
P[ 4] I IND :DTMF_TONE oad:01234567890 dad:12345678 pid:6 state:CONNECTED
P[ 4]  --> channel:1 mode:NT cause:16 ocause:16 rad: cad:12345678
P[ 4]  --> info_dad: onumplan:4 dnumplan:4 rnumplan:0 cpnnumplan:4
P[ 4]  --> caps:Speech pi:0 keypad: sending_complete:0
P[ 4]  --> DTMF:#
P[ 4] I IND :DTMF_TONE oad:01234567890 dad:12345678 pid:6 state:CONNECTED
P[ 4]  --> channel:1 mode:NT cause:16 ocause:16 rad: cad:12345678
P[ 4]  --> info_dad: onumplan:4 dnumplan:4 rnumplan:0 cpnnumplan:4
P[ 4]  --> caps:Speech pi:0 keypad: sending_complete:0
P[ 4]  --> DTMF:#
P[ 1] * IND : Digit #

So ganz ist mir nicht klar, was da schief geht, immerhin wird VERLÄSSLICH erkannt, was ich wähle...

Welche Version von chan_misdn ist denn in asterisk 1.4b3 enthalten?

Danke schonmal und viele Grüße,
Torben
 
Zuletzt bearbeitet:
Hast Du in der misdn.conf mal die Variable "senddtmf=yes/no" beäugt ?

Grüsse, Stefan
 
Hi Stefan,

ja, das habe ich beäugt, aber soweit ich das sehe, gilt das ja nur für die Re-Erzeugung der ausgehenden DTMF-Töne - die sind mir momentan erst einmal wurscht.

Mein Problem ist ja, daß chan_misdn die Töne sehr wohl erkennt, aber irgendwie nicht an Asterisk weitergibt... zumindest bekomme ich bei JEDEM DTMF-Ton im Debug-Modus die korrekte Anzeige des gewählten Tones. Nur fängt Asterisk damit nichts an. Nur, wenn ich heftigst oft hintereinander die Raute-Taste drücke, kommt manchmal der Transfer-Prompt (bei mir mit ## in features.conf). Aber das kann ich so ja meinen Kollegen nicht zumuten, das ist viel zu wackelig.

Nun weiß ich eben nicht, ob das ein Bug im chan_misdn ist oder im Asterisken :-( Wäre klasse, wenn einer von Euch mehr weiß.

Viele Grüße,
Torben
 
Ok, dann hab ich noch eine :

dtmftreshold

Diese Variable setzt die Sensitivität der DTMF Erkennung.

Werte sind mW von 1 - 400 oder so.

Grüsse, Stefan
 
Hi Stefan,

wow, danke, daß Du Dir soviel Mühe mit mir machst - leider hab' ich das mit dem dtmfthreshhold auch versucht, weil ich am Anfang dachte, daß die DTMF-Töne nicht erkannt würden - aber wie gesagt, die Erkennung funktioniert perfekt, nur wird dann nichts ausgewertet vom Asterisk.

Das doofe ist, ein angeschlossenen VOIP-Phone funktioniert. Wenn ich da DTMF-Töne erzeuge, wird sofort vermittelt.

Ich schließe daher, daß das Erkennen von DTMF beim chan_misdn geht, daß das Auswerten der Digits beim Asterisk geht - aber die DTMF-an-Asterisk-Übermittlung irgendwie schiefgeht...

Kannst Du damit mehr anfangen oder sollte ich einen Bug bei beronet aufmachen?

Viele Grüße und gute Nacht aus München,
Torben
 
Leider denke ich das der Bug schneller zu ist als Du ihn aufmachst ;)

Es funktioniert ja anderswo ..

Leider sind auch diese beiden Stellmittelchen alles was ich Dir sagen kann - beachte nur - das mISDN einen dtmftreshold hat und keinen dtmfthreshold wie Asterisk (unterscheidet sich in "h" !) - aber wenn Du sagst er leitet ihn nicht durch ist das natürlich Müll.

Hier nochmals das Zitat aus der Doc :

Code:
[B]Why are my dtmf tones not detected everytime?[/B] We've added a configurable dtmftreshold, the default is 100, it can have values between 20 and 500. It needs to be changed either by giving the module parametern dtmftreshold_option to the mISDN_dsp modul, or simply by setting the value 
dtmftreshold=xxx  
in the /etc/misdn-init.conf


Ich les gerade :

seit gestern auf Asterisk 1.4b3 upgegradet

Wir reden hier aber noch über die halbwegs stabile 0.3.1 mISDN Version, richtig ?

Schau das doch mal bitte in /usr/src/install-misdn-mqueue/chan_misdn/VERSION und schreib mal die Versionsnummer.

Wenn das die neue 0.4.0 beinhaltet, dann würde ich dazu mal einen Bug eröffnen..

Grüsse, stefan
 
Hallo Stefan,

ich weiß leider nicht, welche chan_misdn beim Asterisk 1.4 dabei ist - selbst beim Sourcecode-greppen habe ich nichts dergleichen gefunden. Wie finde ich das denn raus? Gibt's da einen Befehl, um sich speziell die chan_misdn-Version anzeigen zu lassen?

Jedenfalls ist da ein chan_misdn dabei - und das habe ich natürlich mit compiliert.

Grüße aus München vom
Torben
 
Ich zitiere mich mal selber ;)

Schau das doch mal bitte in /usr/src/install-misdn-mqueue/chan_misdn/VERSION und schreib mal die Versionsnummer.
 
Entschuldige, ich war der Dorfdepp :)

Du verwendest das enthaltene Initscript.

In Asterisk 1.2 könnte man es so lösen :

/usr/src/asterisk-version/channels/Makefile öffnen und dort nach "Version" suchen, bei mir sieht der Treffer zB so aus :

Code:
chan_misdn.o: chan_misdn.c
        $(CC) $(CFLAGS) -DCHAN_MISDN_VERSION=\"0.3.0\" -c $< -o $@
Ob das nun eine "echte" Ausgabe ist und ich dies beim Wort nehmen darf kann ich Dir nicht garantieren.

Anbei - möchtest Du eigentlich Asterisk 1.4 extra verwenden oder hast Du zu 1.4 gegriffen weil es das am aktuellste war ?

Grüsse, Stefan
 
Hallo Stefan,

wow, Du gibst Dir ja echt Mühe mit mir - wenn Du nach München kommst, bist Du auf ein Bier eingeladen :)

Nein, ich möchte eigentlich gar nicht Asterisk 1.4 benutzen, aber ich würde gerne AEL2 verwenden - und das ist da eben schon drin, für 1.2 muß man es nachträglich reinpatchen auf eine Methode, die mir nicht ganz so geheuer ist :)

Aber langsam wird mir das unangenehm mit dem DTMF, vielleicht gehe ich wieder zurück auf 1.2 und nehme ganz brav extensions.conf statt extensions.ael her.

Die Version vom enthaltenen chan_misdn bringe ich übrigens nicht in Erfahrung, ein rekursiver grep nach CHAN_MISDN_VERSION oder version in *misdn*-files gibt keine zurück... das ist mit dem separaten chan_misdn besser gewesen.

Viele Grüße,
Torben
 
Du könntest ja auch chan_misdn nachträglich einfügen, allerdings müsstest Du in Erfahrung bringen wie es mit der Kompatibilität aussieht (0.3.1 und 1.4 oder 0.4.0 und 1.4)..


Das mit dem Bier nimm ich gerne an - bin aber erst wieder zum übernächsten Oktoberfest bei euch ;)

Grüsse, Stefan
 
Grins, Du hast aber eine genaue Zukunftsplanung...schon für 2008? Ned schlecht... ich werde aber auch dann noch hier sein, schätz ich mal, Einladung gilt.

Hmm, das kann ich halt leider alles immer nur nachts oder am WE probieren, unter Tags muss man halt telefonieren können :-( Vielleicht installier ich mir das mal probehalber zuhause, brauch halt noch eine 2S0 von beronet. Juckt mich aber eh :)

Und das nur, weil ich mir AEL2 in den Kopf gesetzt habe :)

Viele Grüße vom
Torben
 
Alle 2 Jahre ist bei euch eine übergreifende Fachmesse - ziemlich genau in der Zeit des Oktoberfestes, also : alle 2 Jahre Oktoberfest (siehe Bild von diesem Jahr)

Schaff Dir doch irgendeine alte Möhre an um das zu testen, eine HFC für 10,- tuts ja auch schon ...

Grüsse, Stefan
 

Anhänge

  • IMG_0023.jpg
    IMG_0023.jpg
    277 KB · Aufrufe: 13
Grins, und das nennt sich dann Fachmesse :) (keine Sorge, weiß schon, was Du meinst...)

Ja, werde ich auch machen, das mit dem zweiten Rechner... dann kann ich auch schon alles vorbereiten, wenn ich mal einen Upgrade mache...

Heute gibt's aber erstmal ein schnelleres SDSL in der Firma, mal sehen, ob die Telekom gestern eine gute Leitung geschaltet hat...

Bis denne,
Torben
 
dann kann ich auch schon alles vorbereiten, wenn ich mal einen Upgrade mache...

Siehste - so mach ich das ganze auch ;)

Schreib aber auf jeden Fall mal obs denn nun dann auch läuft wie es soll..

Grüsse, Stefan
 
Keine Sorge, werde ich auf jeden Fall machen, sobald ich eine vernünftige Aussage machen kann... werd' mir nächste Woche eine Karte einbauen, dann kann ich testen. Am Wochenende werde ich nicht zu viel machen, Geburtstage und Weihnachtsfeiern...

Viele Grüße,
Torben
 
Oh Mann, Ihr werdet's nicht glauben - das ganze Problem lag daran, daß es in features.conf einen neuen Parameter gibt:

featuredigittimeout = 1000 ; Max time (ms) between digits for
; feature activation (default is 500 ms)

Und es ist mit den dämlichen Handsets, die wir haben, fast (zu 95%) unmöglich, innerhalb der 500ms zwei DTMF-Töne zu erzeugen. mISDN hat die Töne wohl erkannt, aber da sie zu langsam kamen, hat Asterisk eben # und # anstatt ## erkannt.

Vielleicht hilft's ja anderen, die nicht verbinden können.

Viele Grüße,
Torben
 

Zurzeit aktive Besucher

Statistik des Forums

Themen
244,831
Beiträge
2,219,105
Mitglieder
371,533
Neuestes Mitglied
ipeee
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.