TT#58502 Add User-to-User header support in cdr-tag

Change-Id: Ibcfcd66e84c355e147dd72e4273bc3090e47e742
changes/55/31955/1
Marco Capetta 6 years ago
parent 6dd2cbb121
commit e5c3c38721

10
cdr.c

@ -464,6 +464,16 @@ static int cdr_parse_srcleg(char *srcleg, cdr_entry_t *cdr)
g_strlcpy(cdr->group, tmp2, sizeof(cdr->group));
tmp2 = ++tmp1;
tmp1 = strchr(tmp2, MED_SEP);
if(tmp1 == NULL)
{
L_WARNING("Call-Id '%s' has no separated User-to-User header, '%s'", cdr->call_id, tmp2);
return -1;
}
*tmp1 = '\0';
g_strlcpy(cdr->header_u2u, tmp2, sizeof(cdr->header_u2u));
tmp2 = ++tmp1;
return 0;
}

@ -79,6 +79,7 @@ typedef struct {
char furnished_charging_info[256];
char header_diversion[2048];
char header_pai[2048];
char header_u2u[256];
char group[256];

@ -962,6 +962,19 @@ int medmysql_insert_cdrs(cdr_entry_t *entries, uint64_t count, struct medmysql_b
return -1;
}
if(strnlen(e->header_u2u, sizeof(e->header_u2u)) > 0)
{
if ((tag_id = g_hash_table_lookup(med_cdr_tag_table, "header=User-to-User")) == NULL) {
L_WARNING("Call-Id '%s' has no cdr tag type 'header=User-to-User', '%s'",
e->call_id, e->header_u2u);
return -1;
}
if (medmysql_tag_record(&batches->cdr_tags, batches->num_cdrs, medmysql_tag_provider_customer,
medmysql_tag_direction_source, e->header_u2u, e->start_time,
GPOINTER_TO_UINT(tag_id)))
return -1;
}
// entries for the CDR tags table
// if (medmysql_tag_record(&batches->cdr_tags, batches->num_cdrs, medmysql_tag_provider_carrier,
// medmysql_tag_direction_source, "foobar", e->start_time, 1))

Loading…
Cancel
Save