omada-api/ap_info.go

44 lines
993 B
Go
Raw Permalink Normal View History

2025-02-01 17:38:29 +01:00
package omadaapi
import (
"fmt"
"git.tordarus.net/tordarus/ezhttp"
"git.tordarus.net/tordarus/omada-api/model"
)
func (api *Api) GetApInfo(siteID model.SiteID, macAddress string) (*model.ApInfo, error) {
2025-02-04 21:46:37 +01:00
resp, err := api.getApInfo(siteID, macAddress)
if err != nil {
return nil, err
}
return &resp.Result, nil
}
func (api *Api) getApInfo(siteID model.SiteID, macAddress string) (*model.Response[model.ApInfo], error) {
2025-02-01 17:38:29 +01:00
req := ezhttp.Request(
ezhttp.Template(api.tmpl),
ezhttp.Method("GET"),
ezhttp.AppendPath(
fmt.Sprintf("/openapi/v1/%s/sites/%s/aps/%s",
api.config.OmadaID,
siteID,
macAddress)),
)
2025-02-12 13:25:01 +01:00
resp, err := api.doRequest(req)
2025-02-01 17:38:29 +01:00
if err != nil {
return nil, err
}
defer resp.Body.Close()
response, err := ezhttp.ParseJsonResponse[model.Response[model.ApInfo]](resp)
2025-02-01 17:38:29 +01:00
if err != nil {
return nil, err
}
2025-02-04 21:46:37 +01:00
return handleResponseErrors(api, response, func() (*model.Response[model.ApInfo], error) {
return api.getApInfo(siteID, macAddress)
})
2025-02-01 17:38:29 +01:00
}