diff options
Diffstat (limited to 'apps/app_queue.c')
-rw-r--r-- | apps/app_queue.c | 100 |
1 files changed, 50 insertions, 50 deletions
diff --git a/apps/app_queue.c b/apps/app_queue.c index 2a8b51322..0add6c209 100644 --- a/apps/app_queue.c +++ b/apps/app_queue.c @@ -3096,8 +3096,8 @@ static int ring_entry(struct queue_ent *qe, struct callattempt *tmp, int *busies /* on entry here, we know that tmp->chan == NULL */ if (tmp->member->paused) { ast_debug(1, "%s paused, can't receive call\n", tmp->interface); - if (qe->chan->cdr) { - ast_cdr_busy(qe->chan->cdr); + if (ast_channel_cdr(qe->chan)) { + ast_cdr_busy(ast_channel_cdr(qe->chan)); } tmp->stillgoing = 0; return 0; @@ -3107,8 +3107,8 @@ static int ring_entry(struct queue_ent *qe, struct callattempt *tmp, int *busies (!tmp->lastqueue && qe->parent->wrapuptime && (time(NULL) - tmp->lastcall < qe->parent->wrapuptime))) { ast_debug(1, "Wrapuptime not yet expired on queue %s for %s\n", (tmp->lastqueue ? tmp->lastqueue->name : qe->parent->name), tmp->interface); - if (qe->chan->cdr) { - ast_cdr_busy(qe->chan->cdr); + if (ast_channel_cdr(qe->chan)) { + ast_cdr_busy(ast_channel_cdr(qe->chan)); } tmp->stillgoing = 0; (*busies)++; @@ -3126,8 +3126,8 @@ static int ring_entry(struct queue_ent *qe, struct callattempt *tmp, int *busies } if ((tmp->member->status != AST_DEVICE_NOT_INUSE) && (tmp->member->status != AST_DEVICE_UNKNOWN)) { ast_debug(1, "%s in use, can't receive call\n", tmp->interface); - if (qe->chan->cdr) { - ast_cdr_busy(qe->chan->cdr); + if (ast_channel_cdr(qe->chan)) { + ast_cdr_busy(ast_channel_cdr(qe->chan)); } tmp->stillgoing = 0; return 0; @@ -3136,8 +3136,8 @@ static int ring_entry(struct queue_ent *qe, struct callattempt *tmp, int *busies if (use_weight && compare_weight(qe->parent,tmp->member)) { ast_debug(1, "Priority queue delaying call to %s:%s\n", qe->parent->name, tmp->interface); - if (qe->chan->cdr) { - ast_cdr_busy(qe->chan->cdr); + if (ast_channel_cdr(qe->chan)) { + ast_cdr_busy(ast_channel_cdr(qe->chan)); } tmp->stillgoing = 0; (*busies)++; @@ -3151,10 +3151,10 @@ static int ring_entry(struct queue_ent *qe, struct callattempt *tmp, int *busies location = ""; /* Request the peer */ - tmp->chan = ast_request(tech, qe->chan->nativeformats, qe->chan, location, &status); + tmp->chan = ast_request(tech, ast_channel_nativeformats(qe->chan), qe->chan, location, &status); if (!tmp->chan) { /* If we can't, just go on to the next call */ - if (qe->chan->cdr) { - ast_cdr_busy(qe->chan->cdr); + if (ast_channel_cdr(qe->chan)) { + ast_cdr_busy(ast_channel_cdr(qe->chan)); } tmp->stillgoing = 0; @@ -3205,7 +3205,7 @@ static int ring_entry(struct queue_ent *qe, struct callattempt *tmp, int *busies ast_channel_datastore_inherit(qe->chan, tmp->chan); /* Presense of ADSI CPE on outgoing channel follows ours */ - tmp->chan->adsicpe = qe->chan->adsicpe; + ast_channel_adsicpe_set(tmp->chan, ast_channel_adsicpe(qe->chan)); /* Inherit context and extension */ macrocontext = pbx_builtin_getvar_helper(qe->chan, "MACRO_CONTEXT"); @@ -3218,17 +3218,17 @@ static int ring_entry(struct queue_ent *qe, struct callattempt *tmp, int *busies if (ast_cdr_isset_unanswered()) { /* they want to see the unanswered dial attempts! */ /* set up the CDR fields on all the CDRs to give sensical information */ - ast_cdr_setdestchan(tmp->chan->cdr, ast_channel_name(tmp->chan)); - strcpy(tmp->chan->cdr->clid, qe->chan->cdr->clid); - strcpy(tmp->chan->cdr->channel, qe->chan->cdr->channel); - strcpy(tmp->chan->cdr->src, qe->chan->cdr->src); - strcpy(tmp->chan->cdr->dst, ast_channel_exten(qe->chan)); - strcpy(tmp->chan->cdr->dcontext, ast_channel_context(qe->chan)); - strcpy(tmp->chan->cdr->lastapp, qe->chan->cdr->lastapp); - strcpy(tmp->chan->cdr->lastdata, qe->chan->cdr->lastdata); - tmp->chan->cdr->amaflags = qe->chan->cdr->amaflags; - strcpy(tmp->chan->cdr->accountcode, qe->chan->cdr->accountcode); - strcpy(tmp->chan->cdr->userfield, qe->chan->cdr->userfield); + ast_cdr_setdestchan(ast_channel_cdr(tmp->chan), ast_channel_name(tmp->chan)); + strcpy(ast_channel_cdr(tmp->chan)->clid, ast_channel_cdr(qe->chan)->clid); + strcpy(ast_channel_cdr(tmp->chan)->channel, ast_channel_cdr(qe->chan)->channel); + strcpy(ast_channel_cdr(tmp->chan)->src, ast_channel_cdr(qe->chan)->src); + strcpy(ast_channel_cdr(tmp->chan)->dst, ast_channel_exten(qe->chan)); + strcpy(ast_channel_cdr(tmp->chan)->dcontext, ast_channel_context(qe->chan)); + strcpy(ast_channel_cdr(tmp->chan)->lastapp, ast_channel_cdr(qe->chan)->lastapp); + strcpy(ast_channel_cdr(tmp->chan)->lastdata, ast_channel_cdr(qe->chan)->lastdata); + ast_channel_cdr(tmp->chan)->amaflags = ast_channel_cdr(qe->chan)->amaflags; + strcpy(ast_channel_cdr(tmp->chan)->accountcode, ast_channel_cdr(qe->chan)->accountcode); + strcpy(ast_channel_cdr(tmp->chan)->userfield, ast_channel_cdr(qe->chan)->userfield); } ast_channel_unlock(tmp->chan); @@ -3268,7 +3268,7 @@ static int ring_entry(struct queue_ent *qe, struct callattempt *tmp, int *busies S_COR(qe->chan->caller.id.name.valid, qe->chan->caller.id.name.str, "unknown"), S_COR(qe->chan->connected.id.number.valid, qe->chan->connected.id.number.str, "unknown"), S_COR(qe->chan->connected.id.name.valid, qe->chan->connected.id.name.str, "unknown"), - ast_channel_context(qe->chan), ast_channel_exten(qe->chan), qe->chan->priority, ast_channel_uniqueid(qe->chan), + ast_channel_context(qe->chan), ast_channel_exten(qe->chan), ast_channel_priority(qe->chan), ast_channel_uniqueid(qe->chan), qe->parent->eventwhencalled == QUEUE_EVENT_VARIABLES ? vars2manager(qe->chan, vars, sizeof(vars)) : ""); ast_channel_unlock(tmp->chan); @@ -3640,7 +3640,7 @@ static struct callattempt *wait_for_answer(struct queue_ent *qe, struct callatte ast_copy_string(ochan_name, ast_channel_name(o->chan), sizeof(ochan_name)); ast_channel_unlock(o->chan); } - if (o->stillgoing && (o->chan) && (o->chan->_state == AST_STATE_UP)) { + if (o->stillgoing && (o->chan) && (ast_channel_state(o->chan) == AST_STATE_UP)) { if (!peer) { ast_verb(3, "%s answered %s\n", ochan_name, inchan_name); if (update_connectedline) { @@ -3699,7 +3699,7 @@ static struct callattempt *wait_for_answer(struct queue_ent *qe, struct callatte /* Before processing channel, go ahead and check for forwarding */ ast_verb(3, "Now forwarding %s to '%s/%s' (thanks to %s)\n", inchan_name, tech, stuff, ochan_name); /* Setup parameters */ - o->chan = ast_request(tech, in->nativeformats, in, stuff, &status); + o->chan = ast_request(tech, ast_channel_nativeformats(in), in, stuff, &status); if (!o->chan) { ast_log(LOG_NOTICE, "Forwarding failed to create channel to dial '%s/%s'\n", @@ -3799,8 +3799,8 @@ static struct callattempt *wait_for_answer(struct queue_ent *qe, struct callatte break; case AST_CONTROL_BUSY: ast_verb(3, "%s is busy\n", ochan_name); - if (in->cdr) - ast_cdr_busy(in->cdr); + if (ast_channel_cdr(in)) + ast_cdr_busy(ast_channel_cdr(in)); do_hang(o); endtime = (long) time(NULL); endtime -= starttime; @@ -3818,8 +3818,8 @@ static struct callattempt *wait_for_answer(struct queue_ent *qe, struct callatte break; case AST_CONTROL_CONGESTION: ast_verb(3, "%s is circuit-busy\n", ochan_name); - if (in->cdr) - ast_cdr_busy(in->cdr); + if (ast_channel_cdr(in)) + ast_cdr_busy(ast_channel_cdr(in)); endtime = (long) time(NULL); endtime -= starttime; rna(endtime * 1000, qe, on, membername, qe->parent->autopauseunavail); @@ -3914,7 +3914,7 @@ static struct callattempt *wait_for_answer(struct queue_ent *qe, struct callatte *to = -1; if (f) { if (f->data.uint32) { - in->hangupcause = f->data.uint32; + ast_channel_hangupcause_set(in, f->data.uint32); } ast_frfree(f); } @@ -4648,7 +4648,7 @@ static int try_calling(struct queue_ent *qe, const char *options, char *announce tmp->q_next = outgoing; outgoing = tmp; /* If this line is up, don't try anybody else */ - if (outgoing->chan && (outgoing->chan->_state == AST_STATE_UP)) + if (outgoing->chan && (ast_channel_state(outgoing->chan) == AST_STATE_UP)) break; } else { callattempt_free(tmp); @@ -4717,8 +4717,8 @@ static int try_calling(struct queue_ent *qe, const char *options, char *announce if (!o->chan) { continue; } - if (strcmp(o->chan->cdr->dstchannel, qe->chan->cdr->dstchannel) == 0) { - ast_set_flag(o->chan->cdr, AST_CDR_FLAG_POST_DISABLED); + if (strcmp(ast_channel_cdr(o->chan)->dstchannel, ast_channel_cdr(qe->chan)->dstchannel) == 0) { + ast_set_flag(ast_channel_cdr(o->chan), AST_CDR_FLAG_POST_DISABLED); break; } } @@ -4727,9 +4727,9 @@ static int try_calling(struct queue_ent *qe, const char *options, char *announce /* Ah ha! Someone answered within the desired timeframe. Of course after this we will always return with -1 so that it is hung up properly after the conversation. */ - if (!strcmp(qe->chan->tech->type, "DAHDI")) + if (!strcmp(ast_channel_tech(qe->chan)->type, "DAHDI")) ast_channel_setoption(qe->chan, AST_OPTION_TONE_VERIFY, &nondataquality, sizeof(nondataquality), 0); - if (!strcmp(peer->tech->type, "DAHDI")) + if (!strcmp(ast_channel_tech(peer)->type, "DAHDI")) ast_channel_setoption(peer, AST_OPTION_TONE_VERIFY, &nondataquality, sizeof(nondataquality), 0); /* Update parameters for the queue */ time(&now); @@ -4806,8 +4806,8 @@ static int try_calling(struct queue_ent *qe, const char *options, char *announce else ast_moh_stop(qe->chan); /* If appropriate, log that we have a destination channel */ - if (qe->chan->cdr) { - ast_cdr_setdestchan(qe->chan->cdr, ast_channel_name(peer)); + if (ast_channel_cdr(qe->chan)) { + ast_cdr_setdestchan(ast_channel_cdr(qe->chan), ast_channel_name(peer)); } /* Make sure channels are compatible */ res = ast_channel_make_compatible(qe->chan, peer); @@ -4815,7 +4815,7 @@ static int try_calling(struct queue_ent *qe, const char *options, char *announce ast_queue_log(queuename, ast_channel_uniqueid(qe->chan), member->membername, "SYSCOMPAT", "%s", ""); ast_log(LOG_WARNING, "Had to drop call because I couldn't make %s compatible with %s\n", ast_channel_name(qe->chan), ast_channel_name(peer)); record_abandoned(qe); - ast_cdr_failed(qe->chan->cdr); + ast_cdr_failed(ast_channel_cdr(qe->chan)); ast_hangup(peer); ao2_ref(member, -1); return -1; @@ -4872,8 +4872,8 @@ static int try_calling(struct queue_ent *qe, const char *options, char *announce ast_channel_unlock(qe->chan); if (monitorfilename) { ast_monitor_start(which, qe->parent->monfmt, monitorfilename, 1, X_REC_IN | X_REC_OUT); - } else if (qe->chan->cdr) { - ast_monitor_start(which, qe->parent->monfmt, qe->chan->cdr->uniqueid, 1, X_REC_IN | X_REC_OUT); + } else if (ast_channel_cdr(qe->chan)) { + ast_monitor_start(which, qe->parent->monfmt, ast_channel_cdr(qe->chan)->uniqueid, 1, X_REC_IN | X_REC_OUT); } else { /* Last ditch effort -- no CDR, make up something */ snprintf(tmpid, sizeof(tmpid), "chan-%lx", ast_random()); @@ -4888,8 +4888,8 @@ static int try_calling(struct queue_ent *qe, const char *options, char *announce if (mixmonapp) { ast_debug(1, "Starting MixMonitor as requested.\n"); if (!monitorfilename) { - if (qe->chan->cdr) { - ast_copy_string(tmpid, qe->chan->cdr->uniqueid, sizeof(tmpid)); + if (ast_channel_cdr(qe->chan)) { + ast_copy_string(tmpid, ast_channel_cdr(qe->chan)->uniqueid, sizeof(tmpid)); } else { snprintf(tmpid, sizeof(tmpid), "chan-%lx", ast_random()); } @@ -4959,12 +4959,12 @@ static int try_calling(struct queue_ent *qe, const char *options, char *announce ast_debug(1, "Arguments being passed to MixMonitor: %s\n", mixmonargs); /* We purposely lock the CDR so that pbx_exec does not update the application data */ - if (qe->chan->cdr) { - ast_set_flag(qe->chan->cdr, AST_CDR_FLAG_LOCKED); + if (ast_channel_cdr(qe->chan)) { + ast_set_flag(ast_channel_cdr(qe->chan), AST_CDR_FLAG_LOCKED); } pbx_exec(qe->chan, mixmonapp, mixmonargs); - if (qe->chan->cdr) { - ast_clear_flag(qe->chan->cdr, AST_CDR_FLAG_LOCKED); + if (ast_channel_cdr(qe->chan)) { + ast_clear_flag(ast_channel_cdr(qe->chan), AST_CDR_FLAG_LOCKED); } } else { ast_log(LOG_WARNING, "Asked to run MixMonitor on this call, but cannot find the MixMonitor app!\n"); @@ -5039,7 +5039,7 @@ static int try_calling(struct queue_ent *qe, const char *options, char *announce /* Set where we came from */ ast_channel_context_set(peer, "app_queue_gosub_virtual_context"); ast_channel_exten_set(peer, "s"); - peer->priority = 0; + ast_channel_priority_set(peer, 0); gosub_argstart = strchr(gosubexec, ','); if (gosub_argstart) { @@ -5102,12 +5102,12 @@ static int try_calling(struct queue_ent *qe, const char *options, char *announce ast_queue_log(queuename, ast_channel_uniqueid(qe->chan), member->membername, "CONNECT", "%ld|%s|%ld", (long) time(NULL) - qe->start, ast_channel_uniqueid(peer), (long)(orig - to > 0 ? (orig - to) / 1000 : 0)); - if (qe->chan->cdr) { + if (ast_channel_cdr(qe->chan)) { struct ast_cdr *cdr; struct ast_cdr *newcdr; /* Only work with the last CDR in the stack*/ - cdr = qe->chan->cdr; + cdr = ast_channel_cdr(qe->chan); while (cdr->next) { cdr = cdr->next; } |