diff --git a/cgrates.json b/cgrates.json index 0e27af9..c148e1e 100644 --- a/cgrates.json +++ b/cgrates.json @@ -82,13 +82,34 @@ }, "request_processors": [ { - "id": "TestAuthSimple", + "id": "MSCHAPv2GetPassword", "filters": ["*string:~*vars.*radReqType:*radAuth"], - "flags": ["*none", "*log"], - "request_fields": [], + "flags": ["*authorize", "*attributes", "*accounts", "*continue", "*log"], + "request_fields": [ + {"tag": "Category", "path": "*cgreq.Category", "type": "*constant", "value": "call"}, + {"tag": "RequestType", "path": "*cgreq.RequestType", "type": "*constant", "value": "*prepaid", "mandatory": true}, + {"tag": "OriginID", "path": "*cgreq.OriginID", "type": "*composed", "value": "~*req.Acct-Session-Id", "mandatory": true}, + {"tag": "Account", "path": "*cgreq.Account", "type": "*composed", "value": "~*req.User-Name", "mandatory": true}, + {"tag": "Subject", "path": "*cgreq.Subject", "type": "*composed", "value": "~*req.User-Name", "mandatory": true}, + {"tag": "Destination", "path": "*cgreq.Destination", "type": "*constant", "value": "pppoe"}, + {"tag": "SetupTime", "path": "*cgreq.SetupTime", "type": "*constant", "value": "*now", "mandatory": true}, + {"tag": "AnswerTime", "path": "*cgreq.AnswerTime", "type": "*constant", "value": "*now", "mandatory": true} + ], "reply_fields": [ - {"tag": "Code", "path": "*rep.*radReplyCode", "type": "*constant", "value": "AccessAccept"}, - {"tag": "SessionTimeout", "path": "*rep.Session-Timeout", "type": "*constant", "value": "3600"} + {"tag": "MaxUsage", "path": "*rep.Session-Timeout", "type": "*composed", "value": "~*cgrep.MaxUsage{*duration_seconds}", "mandatory": true} + ] + }, + { + "id": "MSCHAPv2Auth", + "filters": ["*string:~*vars.*radReqType:*radAuth"], + "flags": ["*radauth", "*mschapv2", "*log"], + "request_fields": [ + {"tag": "UserPassword", "path": "*vars.UserPassword", "type": "*variable", "value": "~*cgrep.Attributes.Password"} + ], + "reply_fields": [ + {"tag": "RemoveAddedFields", "filters": ["*notempty:~*cgrep.Error:"], "type": "*removeall", "path": "*rep"}, + {"tag": "Code", "path": "*rep.*radReplyCode", "filters": ["*notempty:~*cgrep.Error:"], "type": "*constant", "value": "AccessReject"}, + {"tag": "ReplyMessage", "path": "*rep.Reply-Message", "filters": ["*notempty:~*cgrep.Error:"], "type": "*variable", "value": "~*cgrep.Error"} ] } ]