admin_export_fields and reseller_export_fields were
each exposed as arrays of plain strings (respective
sql fragments).
now objects will be used instead, to carry perl snippets.
Change-Id: Iccf1d4675d8bb433a17aabb34e14d5dfff2cf318
recently added *_concurrent_calls_* fields are not
understood otherwise.
was supposed to be case-insensitive ever since, as
also mariadb ignores case of colnames.
the only exception is "HEADER=<header name>" tag names,
where <header name> is case-sensitive on purpose.
Change-Id: I5e8cd63657e76348150280621df51edc1b0c867d
The alias key is defined as optional in the config.yml schema. This was
producing perl warnings in the templates files:
,---
Argument "" isn't numeric in numeric gt (>) at /usr/lib/ngcp-ngcpcfg/get_cdr_export_fields line 45.
Argument "" isn't numeric in numeric gt (>) at /usr/lib/ngcp-ngcpcfg/get_cdr_export_fields line 45.
Argument "" isn't numeric in numeric gt (>) at /usr/lib/ngcp-ngcpcfg/get_cdr_export_fields line 45.
Argument "" isn't numeric in numeric gt (>) at /usr/lib/ngcp-ngcpcfg/get_cdr_export_fields line 45.
2020-01-14 15:02:30 sp1: Generating /etc/ngcp-cdr-exporter/event-exporter.conf: OK
`---
Change-Id: I46084fbd25e9c88c8cdddb7511c378ac06135632
for the intermediate-cdr exporter, a similar .conf is
to be generated. intermediate cdr data will be available
in tables with the "int_cdr" prefix.
the macros in get_cdr_export_fields are therefore required
to switch printed table names (ie. "cdr", "cdr_tag_data")
accordingly (ie. "int_cdr", "int_cdr_tag_data").
the existing "type" argv is used as switch param.
Change-Id: I74fc4c91acf285d621b9ecf26a050ccf131139c4
the following additional fields can be used in
admin_export_fields/reseller_export_fields in config.yml:
- FURNISHED_CHARGE_INFO:
the fci data returned by external lnp requests
- HEADER_*:
the value of a sip header. * is the sip header name,
which is case-sensitive.
Change-Id: Ie0c95d341648fc63fff23ea2d3054b70fa2cf9e9
new columns available:
EVENT_TIMESTAMP: same as TIMESTAMP (the edr event timestamp),
but including formatting (fractional seconds + rounding)
exactly like cdr START_TIME/INIT_TIME/END_TIME
EVENT_TIMEZONE: the subscriber's inherited timezone
TIMESTAMP_LOCALIZED: the event's timestamp with the
subscriber's inherited timezone applied. same formatting
as EVENT_TIMESTAMP
Change-Id: Id63b92d111e1c5bdb36e9f710f1d464e9e7ed44c
new fields for cdr exports:
TIMEZONE:
a. call to offnet destination: take source subscriber's inherited tz
b. offnet to local destination: take destination subscriber's inherited tz
c. onnet calls: take the *source* subscriber's inherited tz
(see cdr-exporter.pl -> source reseller folder will contain the
cdr only)
d. transit calls: take system timezone
INIT_TIME_LOCALIZED: init time with timezone applied
START_TIME: start time with timezone applied
END_TIME: end time with timezone applied
Change-Id: I29590fc1b6f37269294518cfece4b4e16f25c3e6
ticket 13069 describes in detail the additions for event-based
billing required by a customer of the hpbx platform. these
additional edr fields will allow to export a single column
showing the subscriber alias for both start and stop profile
events.
Change-Id: Ibd2f9b05ed708521b23cf3db09c68267cf085e3b
the way we create these output timestamps with fractional
seconds is wrong, because FROM_UNIXTIME is not truncating
its argument to int, but its rounds up/down.
"CONCAT(FROM_UNIXTIME(accounting.cdr.start_time +
accounting.cdr.duration), \".
\", SUBSTRING_INDEX(accounting.cdr.start_time +
accounting.cdr.duration, \".\",
-1))"
correct values are:
start: 2016-09-06 06:58:27.586
+duration: 0.520
end: 2016-09-06 06:58:28.120
so all of init_time, start_time, end_time are wrongn. fix
means an explicit int cast via FLOOR:
"CONCAT(FROM_UNIXTIME(FLOOR(accounting.cdr.start_time +
accounting.cdr.duration)), \".
\", SUBSTRING_INDEX(accounting.cdr.start_time +
accounting.cdr.duration, \".\",
-1))"
Change-Id: If6afaed4b1a573b36d0151c0d39eea05ba14b9ba
new fields can be simply specified in config.yml, e.g.
" - source_customer_cash_balance_before"
" - source_customer_free_time_balance_before"
" - source_customer_profile_package_id"
" - source_customer_contract_balance_id"
whereby
+"source" can be replaced by "destination"
+"customer" can be replaced by "carrier", "reseller"
+"before" can be replaced by "after"
note that:
+ these field names are not case sensitive
+ those fields cannot be used in export conditions atm
finally, also melita's END_TIME named field was added,
identical like START_TIME.
Change-Id: I669259be53878058bc2ec0927e96496dcbd534bd