[prev in list] [next in list] [prev in thread] [next in thread] 

List:       suse-isdn
Subject:    Re: [suse-isdn] DTMF Erkennung
From:       Klaus Nitsche <klaus_nitsche () t-online ! de>
Date:       2006-08-18 18:23:49
Message-ID: 200608182023.49165.klaus_nitsche () t-online ! de
[Download RAW message or body]

Am Donnerstag, 17. August 2006 23:14 schrieb Karsten Keil:
> On Thu, Aug 17, 2006 at 10:23:12PM +0200, Klaus Nitsche wrote:
> > Hallo,
> >
> > ich beabsichtige das Anrufbeantwortersystem VOCP mit Hilfe von vgetty und
> > einer Fritz ISDN PCI 2.0 zu betreiben.
> > Habe SuSE 10.1 mit i4l / capi4linux 2006.4.25-4 und capisuite 0.4.5-19
> > sowie die Capi Treiber von http://opensuse.fltronic.de/ für den Kernel
> > 2.6.16-21.
> >
> > Fogendes Problem: Nach Annahme des Anrufs und eingehender DTMF-Töne
> > reagiert VOCP nicht. Habe hier mal den vgetty-log:
> >
> > 08/17 20:27:00 yI7    Linux ISDN: OK
>
> ...
>
> > 08/17 20:27:09 yI7    vgetty: AT
> > 08/17 20:27:09 yI7    Linux ISDN: OK
> > 08/17 20:27:09 yI7   tio_set_flow_control( HARD XON_OUT )
> > 08/17 20:27:09 yI7   voice command: 'AT+VTX' -> 'CONNECT|NO ANSWER'
> > 08/17 20:27:09 yI7    vgetty: AT+VTX
> > 08/17 20:27:09 yI7    Linux ISDN: CONNECT
> > 08/17 20:27:09 yI7    Linux ISDN: <DLE> <_>
> > 08/17 20:27:09 yI7  vgetty: Unknown code <DLE> <_>
> > 08/17 20:27:09 yI7    Linux ISDN: <DLE> <_>
> > 08/17 20:27:09 yI7  vgetty: Unknown code <DLE> <_>
> > 08/17 20:27:09 yI7    vgetty: <VOICE DATA 10176 bytes>
> >
> > Die Zeilen "Linux ISDN: <DLE> <_>" sind das eigentliche Problem, da
> > müssten eigentlich die Ziffern der gedrückten Tasten auftauchen. Da
> > vgetty also nur "Unkonw code <DLE> <_>" bekommt, kann VOCP natürlich auch
> > auf nichts reagieren.
> > Allerdings zeigt "tail -f /var/log/messages | grep dtmf"  folgendes:
> >
> > Aug 17 20:27:03 r2d2 kernel: dtmf: tt='1'
> > Aug 17 20:27:04 r2d2 kernel: dtmf: tt='2'
> > Aug 17 20:27:09 r2d2 kernel: dtmf: tt='3'
> > Aug 17 20:27:09 r2d2 kernel: dtmf: tt='4'
>
> Bekanntes Problem, Fehler im ttyI code.
>
>
> Ist im kernel 2.6.18 gefixt, hier die 2 Patches:
>
> From: Karsten Keil <kkeil@suse.de>
> Date: Mon Jun 26 20:14:14 2006 +0200
> Subject: [PATCH] fix processing of the last byte in isdn_readbchan_tty()
>
> The changes in the tty handling contain a bug while accessing
> the last byte in the skb. Since special sequence for control of
> DTMF and FAX via ttyI* devices handled via this path, these services
> do not work anymore.
>
> Signed-off-by: Karsten Keil <kkeil@suse.de>
>
> ---
>
>  drivers/isdn/i4l/isdn_common.c |    2 +-
>  1 files changed, 1 insertions(+), 1 deletions(-)
>
> 1bfb4ea878e3e73e64a5507d1a305517c1f2bbdd
> diff --git a/drivers/isdn/i4l/isdn_common.c
> b/drivers/isdn/i4l/isdn_common.c index 81accdf..b26e509 100644
> --- a/drivers/isdn/i4l/isdn_common.c
> +++ b/drivers/isdn/i4l/isdn_common.c
> @@ -933,7 +933,7 @@ isdn_readbchan_tty(int di, int channel,
>  			count_put = count_pull;
>  			if(count_put > 1)
>  				tty_insert_flip_string(tty, skb->data, count_put - 1);
> -			last = skb->data[count_put] - 1;
> +			last = skb->data[count_put - 1];
>  			len -= count_put;
>  #ifdef CONFIG_ISDN_AUDIO
>  		}
>
>
> From: Karsten Keil <kkeil@suse.de>
> Date: Tue Jun 27 12:42:39 2006 +0200
> Subject: [PATCH] i4l fix DLE masking in isdn_tty_try_read
>
> DLE masking was none functional since the new tty handling.
> Found by Peter Evertz <leo2@pec.homeip.net>
>
> Signed-off-by: Karsten Keil <kkeil@suse.de>
>
> ---
>
>  drivers/isdn/i4l/isdn_tty.c |    2 +-
>  1 files changed, 1 insertions(+), 1 deletions(-)
>
> d895418ed29eb92a72c5c2ef68a6dafeaa53b717
> diff --git a/drivers/isdn/i4l/isdn_tty.c b/drivers/isdn/i4l/isdn_tty.c
> index 2ac9024..433389d 100644
> --- a/drivers/isdn/i4l/isdn_tty.c
> +++ b/drivers/isdn/i4l/isdn_tty.c
> @@ -82,7 +82,7 @@ isdn_tty_try_read(modem_info * info, str
>  						int l = skb->len;
>  						unsigned char *dp = skb->data;
>  						while (--l) {
> -							if (*skb->data == DLE)
> +							if (*dp == DLE)
>  								tty_insert_flip_char(tty, DLE, 0);
>  							tty_insert_flip_char(tty, *dp++, 0);
>  						}
>
>
> --
> Karsten Keil
> SuSE Labs
> ISDN development

habe die beiden Patches eingebaut, es funktioniert. Danke für die schnelle 
Hilfe.

Klaus Nitsche


-- 
Um die Liste abzubestellen, schicken Sie eine Mail an:
    suse-isdn-unsubscribe@suse.com
Um eine Liste aller verfügbaren Kommandos zu bekommen, schicken
Sie eine Mail an: suse-isdn-help@suse.com


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic