Add dev_id_override to user
This commit is contained in:
@@ -146,6 +146,7 @@ func NewResource(structName string, resourcePath string) *Resource {
|
||||
baseType.Fields[" MAC"] = NewFieldInfo("MAC", "mac", "string", "", true, false)
|
||||
case resource.StructName == "User":
|
||||
baseType.Fields[" IP"] = NewFieldInfo("IP", "ip", "string", "non-generated field", true, false)
|
||||
baseType.Fields[" DevIdOverride"] = NewFieldInfo("DevIdOverride", "dev_id_override", "int", "non-generated field", true, false)
|
||||
case resource.StructName == "WLAN":
|
||||
// this field removed in v6, retaining for backwards compatibility
|
||||
baseType.Fields["WLANGroupID"] = NewFieldInfo("WLANGroupID", "wlangroup_id", "string", "", false, false)
|
||||
|
||||
@@ -28,6 +28,7 @@ type User struct {
|
||||
IP string `json:"ip,omitempty"` // non-generated field
|
||||
|
||||
Blocked bool `json:"blocked,omitempty"`
|
||||
DevIdOverride int `json:"dev_id_override,omitempty"` // non-generated field
|
||||
FixedIP string `json:"fixed_ip,omitempty"`
|
||||
Hostname string `json:"hostname,omitempty"`
|
||||
LastSeen int `json:"last_seen,omitempty"`
|
||||
|
||||
@@ -131,6 +131,34 @@ func (c *Client) DeleteUserByMAC(ctx context.Context, site, mac string) error {
|
||||
return nil
|
||||
}
|
||||
|
||||
func (c *Client) OverrideUserFingerprint(ctx context.Context, site, mac string, devIdOveride int) error {
|
||||
reqBody := map[string]interface{}{
|
||||
"mac": mac,
|
||||
"dev_id_override": devIdOveride,
|
||||
"search_query": "",
|
||||
}
|
||||
|
||||
var reqMethod string
|
||||
if devIdOveride == 0 {
|
||||
reqMethod = "DELETE"
|
||||
} else {
|
||||
reqMethod = "PUT"
|
||||
}
|
||||
|
||||
var respBody struct {
|
||||
Mac string `json:"mac"`
|
||||
DevIdOverride int `json:"dev_id_override"`
|
||||
SearchQuery string `json:"search_query"`
|
||||
}
|
||||
|
||||
err := c.do(ctx, reqMethod, fmt.Sprintf("%s/site/%s/station/%s/fingerprint_override", c.apiV2Path, site, mac), reqBody, &respBody)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func (c *Client) ListUser(ctx context.Context, site string) ([]User, error) {
|
||||
return c.listUser(ctx, site)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user