Skip to content

Latest commit

 

History

History
45 lines (38 loc) · 1.36 KB

README.md

File metadata and controls

45 lines (38 loc) · 1.36 KB

Keenetic API для версии 2.16

Ниже не проверялись. 3.0+ тоже не проверял, но думаю время придёт рано или поздно

go get -u github.com/mimimix/go-keenetic-api

Аунтефикация:

router := keenetic.NewKeenetic("admin", "pass", "http://192.168.1.1")
err, cookies := router.Login() // Вообще он сам проверяет аунтефикация при любом запросе и когда надо перезаходит

Список девайсов:

router := keenetic.NewKeenetic("admin", "pass", "http://192.168.1.1")
devices, err := router.DeviceList() // Получает список устройств, поля смотреть в автокомплите

Пуллер клиетов

Сообщает когда в сеть заходит или выходит клиент

router := keenetic.NewKeenetic("admin", "pass", "http://192.168.1.1")
poll := poller.NewPoller(router, 5) // 5 - это интервал
poll.Start()
poll.Stop()

go func() {
	for {
		event := <-poll.Channel
		s, _ := prettyjson.Marshal(event)
		fmt.Println(string(s))
	}
}()

В канал кидает событие с девайсом и новым состоянием онлайна

type PollEvent struct {
	IsOnline bool
	Device   *zyxel.Device
}