diff options
author | crichter <crichter@f38db490-d61c-443f-a65b-d21fe96a405b> | 2006-07-03 16:47:28 +0000 |
---|---|---|
committer | crichter <crichter@f38db490-d61c-443f-a65b-d21fe96a405b> | 2006-07-03 16:47:28 +0000 |
commit | 012ceb12eddc29172df6615e64d2c2643128d57a (patch) | |
tree | 36fd373f2ed95894517497ae6522d5c641b8cb24 /channels/chan_misdn.c | |
parent | 69b854b61fedcf0d2ec4e6126ca2d9e66bff7620 (diff) |
removed our own tone creation from misdn_indicate, we just return -1. Now we get a lot fewer blocked in thread blah warnings..
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@36867 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels/chan_misdn.c')
-rw-r--r-- | channels/chan_misdn.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/channels/chan_misdn.c b/channels/chan_misdn.c index bf0e7ddad..6d02eebab 100644 --- a/channels/chan_misdn.c +++ b/channels/chan_misdn.c @@ -1779,6 +1779,9 @@ static int misdn_call(struct ast_channel *ast, char *dest, int timeout) ast_setstate(ast, AST_STATE_DIALING); ast->hangupcause=16; + + if (newbc->nt) stop_bc_tones(ch); + return 0; } @@ -1945,9 +1948,8 @@ static int misdn_indication(struct ast_channel *ast, int cond, const void *data, p->bc->out_cause=17; if (p->state != MISDN_CONNECTED) { misdn_lib_send_event( p->bc, EVENT_DISCONNECT); - tone_indicate(p, TONE_BUSY); + return -1; } else { - chan_misdn_log(-1, p->bc->port, " --> !! Got Busy in Connected State !?! ast:%s\n", ast->name); } break; @@ -1961,7 +1963,7 @@ static int misdn_indication(struct ast_channel *ast, int cond, const void *data, break; case MISDN_CONNECTED: chan_misdn_log(1, p->bc->port, " --> * IND :\tringing pid:%d but Connected, so just send TONE_ALERTING without state changes \n",p->bc?p->bc->pid:-1); - tone_indicate(p, TONE_ALERTING); + return -1; break; default: p->state=MISDN_ALERTING; @@ -1987,13 +1989,13 @@ static int misdn_indication(struct ast_channel *ast, int cond, const void *data, } + chan_misdn_log(1, p->bc->port, " --> * SEND: State Ring pid:%d\n",p->bc?p->bc->pid:-1); + ast_setstate(ast,AST_STATE_RINGING); if ( !p->bc->nt && (p->orginator==ORG_MISDN) && !p->incoming_early_audio ) chan_misdn_log(1,p->bc->port, " --> incoming_early_audio off\n"); else - tone_indicate(p, TONE_ALERTING); - chan_misdn_log(1, p->bc->port, " --> * SEND: State Ring pid:%d\n",p->bc?p->bc->pid:-1); - ast_setstate(ast,AST_STATE_RINGING); + return -1; } break; case AST_CONTROL_ANSWER: |