aboutsummaryrefslogtreecommitdiffstats
path: root/main/cdr.c
diff options
context:
space:
mode:
authoralecdavis <alecdavis@f38db490-d61c-443f-a65b-d21fe96a405b>2010-01-20 17:49:30 +0000
committeralecdavis <alecdavis@f38db490-d61c-443f-a65b-d21fe96a405b>2010-01-20 17:49:30 +0000
commit70b5021da1e258c696492fa96b7495aa3c386fa2 (patch)
treec51f8717b75e351cbc37416c57bd44e92b6acbbb /main/cdr.c
parentb4d98df5500c509d16b56c7e4a51abe9baa6f142 (diff)
Add Calling and Called Subaddress to CDR record
Requires 'callingsubaddr' and 'calledsubaddr' fields in backend cdr. (closes issue #16600) Reported by: alecdavis Patches: cdr_subaddr.diff.txt uploaded by alecdavis (license 585) Tested by: alecdavis Review: https://reviewboard.asterisk.org/r/460/ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@241581 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'main/cdr.c')
-rw-r--r--main/cdr.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/main/cdr.c b/main/cdr.c
index 8cac4ed22..4bcd9d239 100644
--- a/main/cdr.c
+++ b/main/cdr.c
@@ -865,7 +865,14 @@ static void set_one_cid(struct ast_cdr *cdr, struct ast_channel *c)
ast_copy_string(cdr->src, S_OR(num, ""), sizeof(cdr->src));
ast_cdr_setvar(cdr, "dnid", S_OR(c->cid.cid_dnid, ""), 0);
+ if (c->cid.subaddress.valid) {
+ ast_cdr_setvar(cdr, "callingsubaddr", S_OR(c->cid.subaddress.str, ""), 0);
+ }
+ if (c->cid.dialed_subaddress.valid) {
+ ast_cdr_setvar(cdr, "calledsubaddr", S_OR(c->cid.dialed_subaddress.str, ""), 0);
+ }
}
+
int ast_cdr_setcid(struct ast_cdr *cdr, struct ast_channel *c)
{
for (; cdr; cdr = cdr->next) {