package hy import ( "encoding/base64" "errors" "github.com/Yuzuki616/V2bX/core" ) func (h *Hy) AddUsers(p *core.AddUsersParams) (int, error) { s, ok := h.servers.Load(p.Tag) if !ok { return 0, errors.New("the node not have") } u := &s.(*Server).users for i := range p.UserInfo { u.Store(p.UserInfo[i].Uuid, struct{}{}) } return len(p.UserInfo), nil } func (h *Hy) GetUserTraffic(tag, uuid string, reset bool) (up int64, down int64) { v, _ := h.servers.Load(tag) s := v.(*Server) auth := base64.StdEncoding.EncodeToString([]byte(uuid)) up = s.counter.getCounters(auth).UpCounter.Load() down = s.counter.getCounters(auth).DownCounter.Load() if reset { s.counter.Reset(auth) } return } func (h *Hy) DelUsers(users []string, tag string) error { v, e := h.servers.Load(tag) if !e { return errors.New("the node is not have") } s := v.(*Server) for i := range users { s.users.Delete(users[i]) s.counter.Delete(users[i]) } return nil }