diff --git a/agents/fsevent.go b/agents/fsevent.go index 0c108e69a..6d1019c32 100644 --- a/agents/fsevent.go +++ b/agents/fsevent.go @@ -41,6 +41,7 @@ const ( REQTYPE = "variable_" + utils.CGR_REQTYPE //prepaid or postpaid CATEGORY = "variable_" + utils.CGR_CATEGORY VAR_CGR_SUPPLIER = "variable_" + utils.CGR_SUPPLIER + VarCGRHost = "variable_" + utils.CGRHost UUID = "Unique-ID" // -Unique ID for this call leg CSTMID = "variable_" + utils.CGR_TENANT CALL_DEST_NR = "Caller-Destination-Number" @@ -258,7 +259,7 @@ func (fsev FSEvent) GetOriginatorIP(fieldName string) string { if strings.HasPrefix(fieldName, utils.STATIC_VALUE_PREFIX) { // Static value return fieldName[len(utils.STATIC_VALUE_PREFIX):] } - return utils.FirstNonEmpty(fsev[fieldName], fsev[FS_IPv4]) + return utils.FirstNonEmpty(fsev[fieldName], fsev[VarCGRHost], fsev[FS_IPv4]) } func (fsev FSEvent) GetExtraFields() map[string]string { diff --git a/engine/fscdr.go b/engine/fscdr.go index f481bee8a..b1267900e 100644 --- a/engine/fscdr.go +++ b/engine/fscdr.go @@ -139,7 +139,7 @@ func (fsCdr FSCdr) AsCDR(timezone string) *CDR { storCdr.CGRID = fsCdr.getCGRID() storCdr.ToR = utils.VOICE storCdr.OriginID = fsCdr.vars[FS_UUID] - storCdr.OriginHost = fsCdr.vars[FS_IP] + storCdr.OriginHost = utils.FirstNonEmpty(fsCdr.vars[utils.CGRHost], fsCdr.vars[FS_IP]) storCdr.Source = FS_CDR_SOURCE storCdr.RequestType = utils.FirstNonEmpty(fsCdr.vars[utils.CGR_REQTYPE], fsCdr.cgrCfg.DefaultReqType) storCdr.Tenant = utils.FirstNonEmpty(fsCdr.vars[utils.CGR_TENANT], fsCdr.cgrCfg.DefaultTenant) diff --git a/utils/consts.go b/utils/consts.go index c6b0048bc..2f920f1d3 100755 --- a/utils/consts.go +++ b/utils/consts.go @@ -278,6 +278,7 @@ const ( CGR_COMPUTELCR = "cgr_computelcr" CGR_SUPPLIERS = "cgr_suppliers" CGRFlags = "cgr_flags" + CGRHost = "cgr_host" KAM_FLATSTORE = "kamailio_flatstore" OSIPS_FLATSTORE = "opensips_flatstore" MAX_DEBIT_CACHE_PREFIX = "MAX_DEBIT_"