Use []Site type
This commit is contained in:
parent
ad1c68f084
commit
94e571b626
|
|
@ -125,21 +125,22 @@ func (c *Config) PollUnifiController(controller *unifi.Unifi, infdb influx.Clien
|
||||||
|
|
||||||
// filterSites returns a list of sites to fetch data for.
|
// filterSites returns a list of sites to fetch data for.
|
||||||
// Omits requested but unconfigured sites.
|
// Omits requested but unconfigured sites.
|
||||||
func filterSites(controller *unifi.Unifi, filter []string) ([]string, error) {
|
func filterSites(controller *unifi.Unifi, filter []string) ([]unifi.Site, error) {
|
||||||
sites, err := controller.GetSites()
|
sites, err := controller.GetSites()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return filter, err
|
return []unifi.Site{{Name: "default", Desc: "DEFAULT"}}, err
|
||||||
} else if len(filter) < 1 || StringInSlice("all", filter) {
|
} else if len(filter) < 1 || StringInSlice("all", filter) {
|
||||||
return sites, nil
|
return sites, nil
|
||||||
}
|
}
|
||||||
output := []string{}
|
var i int
|
||||||
for _, s := range filter {
|
for _, s := range sites {
|
||||||
// Do not return requested sites that are not configured.
|
// Only include valid sites in the request filter.
|
||||||
if StringInSlice(s, sites) {
|
if StringInSlice(s.Name, filter) {
|
||||||
output = append(output, s)
|
sites[i] = s
|
||||||
|
i++
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return output, nil
|
return sites[:i], nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// batchPoints combines all device and client data into influxdb data points.
|
// batchPoints combines all device and client data into influxdb data points.
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue