新增解析签约用户格式
This commit is contained in:
@@ -23,6 +23,7 @@ func Routers() []services.RouterItem {
|
||||
}
|
||||
|
||||
rs := [...]services.RouterItem{
|
||||
// UDM签约用户
|
||||
{
|
||||
Method: "GET",
|
||||
Pattern: "/auths",
|
||||
@@ -41,12 +42,7 @@ func Routers() []services.RouterItem {
|
||||
Handler: apis.UdmAuthUserInfo,
|
||||
Middleware: nil, //midware.Authorize(nil),
|
||||
},
|
||||
{
|
||||
Method: "POST",
|
||||
Pattern: "/auth",
|
||||
Handler: apis.UdmAuthUserAdd,
|
||||
Middleware: nil, //midware.Authorize(nil),
|
||||
},
|
||||
// UDM签约用户
|
||||
{
|
||||
Method: "GET",
|
||||
Pattern: "/subs",
|
||||
@@ -59,6 +55,12 @@ func Routers() []services.RouterItem {
|
||||
Handler: apis.UdmSubUserSave,
|
||||
Middleware: nil, //midware.Authorize(nil),
|
||||
},
|
||||
{
|
||||
Method: "GET",
|
||||
Pattern: "/sub/{neId}/{imsi}",
|
||||
Handler: apis.UdmSubUserInfo,
|
||||
Middleware: nil, //midware.Authorize(nil),
|
||||
},
|
||||
// 添加更多的 Router 对象...
|
||||
}
|
||||
|
||||
@@ -139,14 +141,6 @@ func (s *UdmUserApi) UdmAuthUserInfo(w http.ResponseWriter, r *http.Request) {
|
||||
ctx.JSON(w, 200, result.OkData(data))
|
||||
}
|
||||
|
||||
// UDM鉴权用户-新增
|
||||
//
|
||||
// POST /auth
|
||||
func (s *UdmUserApi) UdmAuthUserAdd(w http.ResponseWriter, r *http.Request) {
|
||||
data := s.authUser.AuthUserSave("")
|
||||
ctx.JSON(w, 200, result.OkData(data))
|
||||
}
|
||||
|
||||
// UDM签约用户
|
||||
//
|
||||
// GET /subs
|
||||
@@ -163,3 +157,31 @@ func (s *UdmUserApi) UdmSubUserSave(w http.ResponseWriter, r *http.Request) {
|
||||
data := s.subUser.SubUserSave("")
|
||||
ctx.JSON(w, 200, result.OkData(data))
|
||||
}
|
||||
|
||||
// UDM签约用户-信息
|
||||
//
|
||||
// GET /{neId}/{imsi}
|
||||
func (s *UdmUserApi) UdmSubUserInfo(w http.ResponseWriter, r *http.Request) {
|
||||
neId := ctx.Param(r, "neId")
|
||||
imsi := ctx.Param(r, "imsi")
|
||||
if neId == "" || imsi == "" {
|
||||
ctx.JSON(w, 400, result.CodeMsg(400, "参数错误"))
|
||||
return
|
||||
}
|
||||
|
||||
neInfo, err := NeInfoByUDM(neId)
|
||||
if err != nil {
|
||||
ctx.JSON(w, 200, result.ErrMsg(err.Error()))
|
||||
return
|
||||
}
|
||||
|
||||
msg := fmt.Sprintf("dsp udmuser:imsi=%s", imsi)
|
||||
|
||||
// 发送MML
|
||||
data, err := mmlclient.MMLSendMsgToMap(neInfo.Ip, msg)
|
||||
if err != nil {
|
||||
ctx.JSON(w, 200, result.ErrMsg(err.Error()))
|
||||
return
|
||||
}
|
||||
ctx.JSON(w, 200, result.OkData(data))
|
||||
}
|
||||
|
||||
@@ -41,13 +41,30 @@ func MMLSendMsgToMap(ip, msg string) (map[string]string, error) {
|
||||
// 初始化一个map用于存储拆分后的键值对
|
||||
m := make(map[string]string)
|
||||
|
||||
var items []string
|
||||
// 按照分隔符"\r\n"进行拆分
|
||||
items := strings.Split(str, "\r\n")
|
||||
if strings.Contains(str, "\r\n") {
|
||||
items = strings.Split(str, "\r\n")
|
||||
}
|
||||
// 按照分隔符"\n"进行拆分
|
||||
if strings.Contains(str, "\n") {
|
||||
items = strings.Split(str, "\n")
|
||||
}
|
||||
|
||||
// 遍历拆分后的结果
|
||||
for _, item := range items {
|
||||
var pair []string
|
||||
|
||||
// 按照分隔符"="进行拆分键值对
|
||||
pair := strings.Split(item, "=")
|
||||
if strings.Contains(item, "=") {
|
||||
pair = strings.Split(item, "=")
|
||||
}
|
||||
|
||||
// 按照分隔符":"进行拆分键值对
|
||||
if strings.Contains(item, ":") {
|
||||
pair = strings.Split(item, ":")
|
||||
}
|
||||
|
||||
if len(pair) == 2 {
|
||||
// 将键值对存入map中
|
||||
m[pair[0]] = pair[1]
|
||||
|
||||
Reference in New Issue
Block a user