mirror of
https://github.com/asterisk/asterisk.git
synced 2025-10-13 08:13:22 +00:00
As per 9570, worrisome CDR warnings have been removed, that are either not helpful, or not relevant.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@64193 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -582,10 +582,22 @@ static struct ast_channel *local_new(struct local_pvt *p, int state)
|
|||||||
{
|
{
|
||||||
struct ast_channel *tmp = NULL, *tmp2 = NULL;
|
struct ast_channel *tmp = NULL, *tmp2 = NULL;
|
||||||
int randnum = ast_random() & 0xffff, fmt = 0;
|
int randnum = ast_random() & 0xffff, fmt = 0;
|
||||||
|
const char *t;
|
||||||
|
int ama;
|
||||||
|
|
||||||
/* Allocate two new Asterisk channels */
|
/* Allocate two new Asterisk channels */
|
||||||
if (!(tmp = ast_channel_alloc(1, state, 0, 0, "", p->exten, p->context, 0, "Local/%s@%s-%04x,1", p->exten, p->context, randnum))
|
/* safe accountcode */
|
||||||
|| !(tmp2 = ast_channel_alloc(1, AST_STATE_RING, 0, 0, "", p->exten, p->context, 0, "Local/%s@%s-%04x,2", p->exten, p->context, randnum))) {
|
if (p->owner && p->owner->accountcode)
|
||||||
|
t = p->owner->accountcode;
|
||||||
|
else
|
||||||
|
t = "";
|
||||||
|
|
||||||
|
if (p->owner)
|
||||||
|
ama = p->owner->amaflags;
|
||||||
|
else
|
||||||
|
ama = 0;
|
||||||
|
if (!(tmp = ast_channel_alloc(1, state, 0, 0, t, p->exten, p->context, ama, "Local/%s@%s-%04x,1", p->exten, p->context, randnum))
|
||||||
|
|| !(tmp2 = ast_channel_alloc(1, AST_STATE_RING, 0, 0, t, p->exten, p->context, ama, "Local/%s@%s-%04x,2", p->exten, p->context, randnum))) {
|
||||||
if (tmp)
|
if (tmp)
|
||||||
ast_channel_free(tmp);
|
ast_channel_free(tmp);
|
||||||
if (tmp2)
|
if (tmp2)
|
||||||
|
10
main/cdr.c
10
main/cdr.c
@@ -421,15 +421,6 @@ static void check_post(struct ast_cdr *cdr)
|
|||||||
ast_log(LOG_NOTICE, "CDR on channel '%s' already posted\n", S_OR(cdr->channel, "<unknown>"));
|
ast_log(LOG_NOTICE, "CDR on channel '%s' already posted\n", S_OR(cdr->channel, "<unknown>"));
|
||||||
}
|
}
|
||||||
|
|
||||||
/*! \brief print a warning if cdr already started */
|
|
||||||
static void check_start(struct ast_cdr *cdr)
|
|
||||||
{
|
|
||||||
if (!cdr)
|
|
||||||
return;
|
|
||||||
if (!ast_tvzero(cdr->start))
|
|
||||||
ast_log(LOG_NOTICE, "CDR on channel '%s' already started\n", S_OR(cdr->channel, "<unknown>"));
|
|
||||||
}
|
|
||||||
|
|
||||||
void ast_cdr_free(struct ast_cdr *cdr)
|
void ast_cdr_free(struct ast_cdr *cdr)
|
||||||
{
|
{
|
||||||
|
|
||||||
@@ -629,7 +620,6 @@ void ast_cdr_start(struct ast_cdr *cdr)
|
|||||||
if (!ast_test_flag(cdr, AST_CDR_FLAG_LOCKED)) {
|
if (!ast_test_flag(cdr, AST_CDR_FLAG_LOCKED)) {
|
||||||
chan = S_OR(cdr->channel, "<unknown>");
|
chan = S_OR(cdr->channel, "<unknown>");
|
||||||
check_post(cdr);
|
check_post(cdr);
|
||||||
check_start(cdr);
|
|
||||||
cdr->start = ast_tvnow();
|
cdr->start = ast_tvnow();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
16
main/pbx.c
16
main/pbx.c
@@ -4972,20 +4972,6 @@ int ast_pbx_outgoing_exten(const char *type, int format, void *data, int timeout
|
|||||||
ast_channel_lock(chan);
|
ast_channel_lock(chan);
|
||||||
}
|
}
|
||||||
if (chan) {
|
if (chan) {
|
||||||
if (chan->cdr) { /* check if the channel already has a cdr record, if not give it one */
|
|
||||||
ast_log(LOG_WARNING, "%s already has a call record??\n", chan->name);
|
|
||||||
} else {
|
|
||||||
chan->cdr = ast_cdr_alloc(); /* allocate a cdr for the channel */
|
|
||||||
if (!chan->cdr) {
|
|
||||||
/* allocation of the cdr failed */
|
|
||||||
free(chan->pbx);
|
|
||||||
res = -1;
|
|
||||||
goto outgoing_exten_cleanup;
|
|
||||||
}
|
|
||||||
/* allocation of the cdr was successful */
|
|
||||||
ast_cdr_init(chan->cdr, chan); /* initilize our channel's cdr */
|
|
||||||
ast_cdr_start(chan->cdr);
|
|
||||||
}
|
|
||||||
if (chan->_state == AST_STATE_UP) {
|
if (chan->_state == AST_STATE_UP) {
|
||||||
res = 0;
|
res = 0;
|
||||||
if (option_verbose > 3)
|
if (option_verbose > 3)
|
||||||
@@ -5016,7 +5002,7 @@ int ast_pbx_outgoing_exten(const char *type, int format, void *data, int timeout
|
|||||||
if (option_verbose > 3)
|
if (option_verbose > 3)
|
||||||
ast_verbose(VERBOSE_PREFIX_4 "Channel %s was never answered.\n", chan->name);
|
ast_verbose(VERBOSE_PREFIX_4 "Channel %s was never answered.\n", chan->name);
|
||||||
|
|
||||||
if(chan->cdr) { /* update the cdr */
|
if (chan->cdr) { /* update the cdr */
|
||||||
/* here we update the status of the call, which sould be busy.
|
/* here we update the status of the call, which sould be busy.
|
||||||
* if that fails then we set the status to failed */
|
* if that fails then we set the status to failed */
|
||||||
if (ast_cdr_disposition(chan->cdr, chan->hangupcause))
|
if (ast_cdr_disposition(chan->cdr, chan->hangupcause))
|
||||||
|
Reference in New Issue
Block a user