UDM签约用户redis数据字段解析

This commit is contained in:
TsMask
2023-09-11 21:02:18 +08:00
parent b625536d9c
commit 449d81c950

View File

@@ -54,27 +54,35 @@ func redisUdmSubUserList() []model.UdmSubUser {
m := redis.GetHash(key) m := redis.GetHash(key)
a := model.UdmSubUser{ a := model.UdmSubUser{
Imsi: imsi, Imsi: imsi,
Msisdn: m["gpsi"], Msisdn: m["gpsi"],
SubData: m["sm-dat"], SmData: m["sm-dat"], // 1-000001&cmnet&ims&3gnet
} }
if a.Msisdn == "" { if a.Msisdn == "" {
a.Msisdn = phone a.Msisdn = phone
} }
// def_ambr,def_nssai,0,def_arfb,def_sar,3,1,12000,1,1000,0,1,-
if v, ok := m["am-dat"]; ok { if v, ok := m["am-dat"]; ok {
arr := strings.Split(v, ",") arr := strings.Split(v, ",")
a.SubUeAMBRTemp = arr[0] a.Ambr = arr[0]
a.SubSNSSAITemp = arr[1] a.Nssai = arr[1]
a.Rai = arr[2] a.Rat = arr[2]
a.ForbiddenAreasTemp = arr[3] a.Arfb = arr[3]
a.ServiceAreaRestrictTemp = arr[4] a.Sar = arr[4]
a.CnType = arr[5] a.Cn = arr[5]
} }
// 1,64,24,65,def_eps,1,2,010200000000,-
if v, ok := m["eps-dat"]; ok { if v, ok := m["eps-dat"]; ok {
arr := strings.Split(v, ",") arr := strings.Split(v, ",")
a.Eps = arr[0] a.EpsFlag = arr[0]
a.EpsOdb = arr[1]
a.HplmnOdb = arr[2]
a.Ard = arr[3]
a.Epstpl = arr[4]
a.ContextId = arr[5]
a.ApnContext = arr[7]
} }
user = append(user, a) user = append(user, a)