新增解析签约用户格式
This commit is contained in:
@@ -23,6 +23,7 @@ func Routers() []services.RouterItem {
|
|||||||
}
|
}
|
||||||
|
|
||||||
rs := [...]services.RouterItem{
|
rs := [...]services.RouterItem{
|
||||||
|
// UDM签约用户
|
||||||
{
|
{
|
||||||
Method: "GET",
|
Method: "GET",
|
||||||
Pattern: "/auths",
|
Pattern: "/auths",
|
||||||
@@ -41,12 +42,7 @@ func Routers() []services.RouterItem {
|
|||||||
Handler: apis.UdmAuthUserInfo,
|
Handler: apis.UdmAuthUserInfo,
|
||||||
Middleware: nil, //midware.Authorize(nil),
|
Middleware: nil, //midware.Authorize(nil),
|
||||||
},
|
},
|
||||||
{
|
// UDM签约用户
|
||||||
Method: "POST",
|
|
||||||
Pattern: "/auth",
|
|
||||||
Handler: apis.UdmAuthUserAdd,
|
|
||||||
Middleware: nil, //midware.Authorize(nil),
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
Method: "GET",
|
Method: "GET",
|
||||||
Pattern: "/subs",
|
Pattern: "/subs",
|
||||||
@@ -59,6 +55,12 @@ func Routers() []services.RouterItem {
|
|||||||
Handler: apis.UdmSubUserSave,
|
Handler: apis.UdmSubUserSave,
|
||||||
Middleware: nil, //midware.Authorize(nil),
|
Middleware: nil, //midware.Authorize(nil),
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
Method: "GET",
|
||||||
|
Pattern: "/sub/{neId}/{imsi}",
|
||||||
|
Handler: apis.UdmSubUserInfo,
|
||||||
|
Middleware: nil, //midware.Authorize(nil),
|
||||||
|
},
|
||||||
// 添加更多的 Router 对象...
|
// 添加更多的 Router 对象...
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -139,14 +141,6 @@ func (s *UdmUserApi) UdmAuthUserInfo(w http.ResponseWriter, r *http.Request) {
|
|||||||
ctx.JSON(w, 200, result.OkData(data))
|
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签约用户
|
// UDM签约用户
|
||||||
//
|
//
|
||||||
// GET /subs
|
// GET /subs
|
||||||
@@ -163,3 +157,31 @@ func (s *UdmUserApi) UdmSubUserSave(w http.ResponseWriter, r *http.Request) {
|
|||||||
data := s.subUser.SubUserSave("")
|
data := s.subUser.SubUserSave("")
|
||||||
ctx.JSON(w, 200, result.OkData(data))
|
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用于存储拆分后的键值对
|
// 初始化一个map用于存储拆分后的键值对
|
||||||
m := make(map[string]string)
|
m := make(map[string]string)
|
||||||
|
|
||||||
|
var items []string
|
||||||
// 按照分隔符"\r\n"进行拆分
|
// 按照分隔符"\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 {
|
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 {
|
if len(pair) == 2 {
|
||||||
// 将键值对存入map中
|
// 将键值对存入map中
|
||||||
m[pair[0]] = pair[1]
|
m[pair[0]] = pair[1]
|
||||||
|
|||||||
Reference in New Issue
Block a user