mirror of
https://github.com/cgrates/cgrates.git
synced 2026-02-11 18:16:24 +05:00
Fixup balance_debit command, cdrexporter supporting http_post field values
This commit is contained in:
@@ -37,6 +37,7 @@ const (
|
||||
CONSTANT = "constant"
|
||||
METATAG = "metatag"
|
||||
CONCATENATED_CDRFIELD = "concatenated_cdrfield"
|
||||
HTTP_POST = "http_post"
|
||||
META_EXPORTID = "export_id"
|
||||
META_TIMENOW = "time_now"
|
||||
META_FIRSTCDRATIME = "first_cdr_atime"
|
||||
@@ -259,6 +260,10 @@ func (cdre *CdrExporter) processCdr(cdr *utils.StoredCdr) error {
|
||||
outVal = cfgFld.Value
|
||||
case utils.CDRFIELD:
|
||||
outVal, err = cdre.cdrFieldValue(cdr, cfgFld.ValueAsRSRField(), cfgFld.Layout)
|
||||
case HTTP_POST:
|
||||
if outValByte, err := utils.HttpJsonPost(cfgFld.Value, cdr); err == nil {
|
||||
outVal = string(outValByte)
|
||||
}
|
||||
case CONCATENATED_CDRFIELD:
|
||||
for _, fld := range strings.Split(cfgFld.Value, ",") {
|
||||
if fldOut, err := cdre.cdrFieldValue(cdr, &utils.RSRField{Id: fld}, cfgFld.Layout); err != nil {
|
||||
|
||||
@@ -163,6 +163,7 @@ func TestXmlCdreCfgAsCdreConfig(t *testing.T) {
|
||||
<field name="OperatorCode" type="cdrfield" value="operator" width="2" />
|
||||
<field name="ProductId" type="cdrfield" value="productid" width="5" />
|
||||
<field name="NetworkId" type="constant" value="3" width="1" />
|
||||
<field name="FromHttpPost1" type="http_post" value="https://localhost:8000" width="10" strip="xright" padding="left" />
|
||||
</fields>
|
||||
</content>
|
||||
<trailer>
|
||||
@@ -229,6 +230,14 @@ func TestXmlCdreCfgAsCdreConfig(t *testing.T) {
|
||||
Value: "3",
|
||||
Width: 1,
|
||||
},
|
||||
&CdreCdrField{
|
||||
Name: "FromHttpPost1",
|
||||
Type: "http_post",
|
||||
Value: "https://localhost:8000",
|
||||
Width: 10,
|
||||
Strip: "xright",
|
||||
Padding: "left",
|
||||
},
|
||||
}
|
||||
eCdreCfg.TrailerFields = []*CdreCdrField{
|
||||
&CdreCdrField{
|
||||
|
||||
@@ -56,8 +56,8 @@ func (self *CmdDebitBalance) RpcParams() interface{} {
|
||||
}
|
||||
|
||||
func (self *CmdDebitBalance) RpcResult() interface{} {
|
||||
var s string
|
||||
return &s
|
||||
var cc engine.CallDescriptor
|
||||
return &cc
|
||||
}
|
||||
|
||||
func (self *CmdDebitBalance) ClientArgs() []string {
|
||||
|
||||
Reference in New Issue
Block a user