Index: channels/chan_alsa.c =================================================================== RCS file: /usr/cvsroot/asterisk/channels/chan_alsa.c,v retrieving revision 1.52 diff -u -r1.52 chan_alsa.c --- channels/chan_alsa.c 6 Nov 2005 15:09:46 -0000 1.52 +++ channels/chan_alsa.c 15 Nov 2005 18:57:26 -0000 @@ -582,8 +582,14 @@ usecnt--; ast_mutex_unlock(&usecnt_lock); if (hookstate) { - res = 2; - write(sndcmd[1], &res, sizeof(res)); + if (autoanswer) { + hookstate = 0; + } else { + /* Congestion noise */ + res = 2; + write(sndcmd[1], &res, sizeof(res)); + hookstate = 0; + } } snd_pcm_drop(alsa.icard); ast_mutex_unlock(&alsalock); Index: channels/chan_oss_old.c =================================================================== RCS file: /usr/cvsroot/asterisk/channels/chan_oss_old.c,v retrieving revision 1.4 diff -u -r1.4 chan_oss_old.c --- channels/chan_oss_old.c 6 Nov 2005 15:09:46 -0000 1.4 +++ channels/chan_oss_old.c 15 Nov 2005 18:57:26 -0000 @@ -565,6 +565,7 @@ /* Make congestion noise */ res = 2; write(sndcmd[1], &res, sizeof(res)); + hookstate = 0; } } return 0;