Я же в коннекте писал https://connect.smartliving.ru/profile/ ... og409.htmlAndreyAA писал(а): Чт апр 08, 2021 6:35 pm Добрый день.
А есть возможность перезагрузки интернет центра в определенное время?
[Модуль] Keenetic (keenetic)
Модератор: immortal
- SmoKE_xDDD
- Сообщения: 816
- Зарегистрирован: Ср апр 17, 2019 5:00 pm
- Откуда: Нижний Новгород
Re: [Модуль] Keenetic (keenetic)
Re: [Модуль] Keenetic (keenetic)
Указанный выше способ на новых прошивках работать не будет.AndreyAA писал(а): Чт апр 08, 2021 6:35 pm Добрый день.
А есть возможность перезагрузки интернет центра в определенное время?
Чтоб перезагрузить роутер по времени нужно создать сценарий со следующим кодом (при установлeнном модуле Keenetic):
Код: Выделить всё
include_once(DIR_MODULES . "keenetic/keenetic.class.php");
$keenetic_module = new keenetic();
$keenetic_module->reboot('IP');- SmoKE_xDDD
- Сообщения: 816
- Зарегистрирован: Ср апр 17, 2019 5:00 pm
- Откуда: Нижний Новгород
Re: [Модуль] Keenetic (keenetic)
Это на сколько новых? У меня viva с ласт версией - работаетV.A.S.t писал(а): Вт апр 20, 2021 6:25 amУказанный выше способ на новых прошивках работать не будет.AndreyAA писал(а): Чт апр 08, 2021 6:35 pm Добрый день.
А есть возможность перезагрузки интернет центра в определенное время?
Чтоб перезагрузить роутер по времени нужно создать сценарий со следующим кодом (при установлeнном модуле Keenetic):Сегодня выложу обновление, чтоб модуль воспринимал IP-адрес, а не только ID.Код: Выделить всё
include_once(DIR_MODULES . "keenetic/keenetic.class.php"); $keenetic_module = new keenetic(); $keenetic_module->reboot('IP');
Re: [Модуль] Keenetic (keenetic)
Viva какая? KN-1910? Прошивка 3.6.3?SmoKE_xDDD писал(а): Вт апр 20, 2021 8:54 am Это на сколько новых? У меня viva с ласт версией - работает
И модуль "Устройства Keenetic Онлайн" работает? Я, конечно, не разбирался в чем причина, но думал, что от ci они отказались вообще.
-
Bolik.Stav
- Сообщения: 74
- Зарегистрирован: Вс янв 20, 2013 11:06 pm
Re: [Модуль] Keenetic (keenetic)
А можно реализовать запуск "гостевого WiFi" с MD?
К примеру запуск сети на 3 часа. Пароль и точка могут быть сохранённые или генерироваться при запуске.
К примеру запуск сети на 3 часа. Пароль и точка могут быть сохранённые или генерироваться при запуске.
Re: [Модуль] Keenetic (keenetic)
Включение гостевого WiFi можно реализовать в MDM, если знать, какой интерфейс ему соответствует. У меня это WifiMaster0/AccessPoint1.Bolik.Stav писал(а): Вс май 16, 2021 9:53 am А можно реализовать запуск "гостевого WiFi" с MD?
К примеру запуск сети на 3 часа. Пароль и точка могут быть сохранённые или генерироваться при запуске.
Чтобы включить этот интерфейс при помощи модуля, можно выполнить следующий код:
Код: Выделить всё
include_once(DIR_MODULES . "keenetic/keenetic.class.php");
$keenetic_module = new keenetic();
$keenetic_module->command('IP роутера', '{"interface": {"WifiMaster0/AccessPoint1": {"up": {"no": false}}}}', 1);Ну а время можно реализовать разными средствами MDM. Например, запустить таймер:
Код: Выделить всё
setTimeOut('KeeneticGuest','include_once(DIR_MODULES . "keenetic/keenetic.class.php"); $keenetic_module = new keenetic(); $keenetic_module->command("IP роутера", \'{"interface": {"WifiMaster0/AccessPoint1": {"up": {"no": true}}}}\', 1);', Количество секунд);- SmoKE_xDDD
- Сообщения: 816
- Зарегистрирован: Ср апр 17, 2019 5:00 pm
- Откуда: Нижний Новгород
Re: [Модуль] Keenetic (keenetic)
Еще раз спасибо за модуль! Есть 2 просьбы для доработки:
1) Вывести массив (Как $status) для получения инфы. У меня MESH сеть и нужно обрабатывать эту инфу (Во 1 получить этаж, во вторых - примерную комнату по мощности сигнала) 2) Подскажи команду для установки ограничения скорости конкретному клиенту/либо блокировка ему инета. (Кейс - родительский контроль)
Заранее спасибо! Модуль класс!
P.S. Плачу 1000 на счет в коннекте =)
1) Вывести массив (Как $status) для получения инфы. У меня MESH сеть и нужно обрабатывать эту инфу (Во 1 получить этаж, во вторых - примерную комнату по мощности сигнала) 2) Подскажи команду для установки ограничения скорости конкретному клиенту/либо блокировка ему инета. (Кейс - родительский контроль)
Заранее спасибо! Модуль класс!
P.S. Плачу 1000 на счет в коннекте =)
Re: [Модуль] Keenetic (keenetic)
Спасибо за оценку
По просьбам:
1) Уже реализовано в виде "отслеживания" - ставишь устройство на "отслеживание" и раз в цикл модуля забираешь инфу из объекта. Подробнее посмотри в справке к модулю.
Также, дополнительно, передается полный массив всех возможных данных об устройстве. Тоже описано в справке
2) Команды для ограничения скорости:
В обе стороны:
{"ip":{"traffic-shape":{"mac": "xx:xx:xx:xx:xx:xx", "host": {"rate": скорость в кбит/с}}}}
Асинхронно:
{"ip":{"traffic-shape":{"mac": "xx:xx:xx:xx:xx:xx", "host": {"rate": скорость в кбит/с, "upstream-rate": скорость в кбит/с}}}}
Отключить ограничение скорости:
{"ip":{"traffic-shape":{"mac": "xx:xx:xx:xx:xx:xx", "host": {"no": true}}}}
Отключить доступ в интернет(поменять профиль доступа):
{"ip": {"hotspot": {"host": {"mac": "xx:xx:xx:xx:xx:xx","deny": true,"policy": false,"schedule": false}}}}
Включить доступ в интернет(поменять профиль доступа обратно):
{"ip": { "hotspot": {"host": {"mac":"xx:xx:xx:xx:xx:xx","permit": true,"policy": false,"schedule": false}}}}
Не забывай в функции выставлять флаг сохранения, иначе после перезагрузки настройки слетят.
А вообще в самом кинетике удобно по расписанию ограничивать или отключать доступ в интернет
- SmoKE_xDDD
- Сообщения: 816
- Зарегистрирован: Ср апр 17, 2019 5:00 pm
- Откуда: Нижний Новгород
Re: [Модуль] Keenetic (keenetic)
Еще вопрос, как получить количество клиентов по каждому интерфейсу/роутеру...?
Re: [Модуль] Keenetic (keenetic)
Тут надо писать обработку:SmoKE_xDDD писал(а): Сб июн 19, 2021 5:20 pm Еще вопрос, как получить количество клиентов по каждому интерфейсу/роутеру...?
Код: Выделить всё
include_once(DIR_MODULES . "keenetic/keenetic.class.php");
$keenetic_module = new keenetic();
$request = $keenetic_module->command('192.168.1.1', '{"show": {"ip": {"hotspot": {}}, "interface": {}, "mws": {"member": {}}}}'); //запрашиваем инфу
$devices = $request['show']['ip']['hotspot']['host']; //массив с девайсами
$ifaces = $request['show']['interface']; //массив с интерфейсами
$mws = $request['show']['mws']['member']; //массив с роутерами (контроллер системы в массиве отсутствует)
foreach($mws as $router){ // соотносим CID роутера с его названием в отделном массиве
$routercid[$router['cid']] = $router['model'];
}
foreach($devices as $device){ // перебираем список устройств
if(isset($device['ap'])) $routers['Контроллер'][$device['mac']] = $device; //если точка доступа на контроллере - добавляем в подмассив контроллера
else if(isset($device['mws'])){ //если на другом роутере Wi-Fi системы
$routers[$routercid[$device['mws']['cid']]][$device['mac']] = $device; //добавляем в подмассив с названием роутера
}
}
foreach($routers as $key=>$router){ // перебираем все роутеры
echo '<pre>';
print $key . ": " . count($routers[$key]) . " устройств."; //и выводим на экран количество элементов в подмассиве
echo '</pre>';
}По интерфейсам сложнее - в кинетике их очень много, поэтому обработку не писал, но массив $ifaces со всеми интерфейсами в коде есть и при желании также можно обработать в цикле foreach($devices as $device).