Страница 2 из 7
Re: Пожелания к программе
Добавлено: 02 июн 2011, 15:23
Mmx82
А каким образом Вы видное ограничение по скорости? Т.к. я невижу проблем с 30 минутным интервалом если скорость будет максимальная. Ведь смысл в том чтоб она была но не большая, примерно 64К. На данный момент я вижу только 2 варианта
- это резать скорость сквидом
- это резать скорость iptables
- можно с помощью радиуса, но после ввода пароля он должен разорвать соединения.
Вопрос опять таки стоит в скрипте который будет этим заниматься.
P.S. А mac и ip адреса можно еще вытягивать из dhcp.
Re: Пожелания к программе
Добавлено: 02 июн 2011, 21:11
Dmitry
Mmx82, по моему, у вас есть программа. По этому, вы должны иметь представление о том, где в ней устанавливаются ограничения скорости. И Chillispot отлично их держит.
Про МАС-и. Решение найдено, и оно, на мой взгляд, самое лучшее из всех самых возможных вариантов.
Re: Пожелания к программе
Добавлено: 03 июн 2011, 08:04
Dmitry
Ну вот вроде как и сотворил я страницу авторизации с демо режимом.
- Не ставьте эти файлы, если не хотите демо режима!!! С этой страницей авторизации демо-логин работает для всех без исключения!
- ПЕРЕД использованием этой страницы с демо-режимом ОБЯЗАТЕЛЬНО создайте Тарифный пакет с именем Free_Demo_Voucher. Все ваши ограничения, которые вы хотите назначить для пользователя, который будет "на шару" входить в ваш хотспот, укажите для этого Тарифного пакета. Учтите, что если вы не создадите этот пакет, страница все равно будет пускать людей в интернет через кнопку демо режима, но при этом АБСОЛЮТНО БЕЗО ВСЯКИХ ОГРАНИЧЕНИЙ!!!
- Я порекомендовал бы также поставить и срок годности в этом Тарифном пакете аналогичный лимиту времени. Единственное, учтите, что лимит времени (номинал) вводится в минутах, а срок годности - в сутках. То есть, если вы хотите на шару давать вход на полчаса, то "Номинал" пишите как 30, а "Срок годности" как 0.0208, в дробном числе - разделитель НЕ ЗАПЯТАЯ, а именно точка (само число получено просто - 0,5 часа поделить на 24)
Как поставить.
- Из пристегнутого архива оба файла нужно распаковать в папку /usr/lib/cgi-bin (там уже есть оба этих файла, но старые, без демо режима)
- Обоим файлам назначить владельцем www-data:www-data
- Файлу hotspotlogin.cgi присвоить атрибут "исполняемый"
Алгоритм таков - пользователю предоставляется возмможность ОДИН РАЗ получить бесплатный доступ в интернет. По истечении лимита, определенного Номиналом Тарифного пакета "Free_Demo_Voucher", система отключит его от интернета. После этого этот пользователь на нажатие кнопки демо-входа будет получать стандартное сообщение, что он "исчерпал свои лимиты". Единственный способ после этого, чтобы этот-же пользователь смог снова получить вход в демо режим - это в Меню Администратора сначала выполнить инкасацию, а потом удалить все израсходованные ваучеры.
ЗЫ. Архив обновлен в связи с ошибкой, описанной в следуующем посте.
ЗЗЫ. Более новая версия -
вот в этом посте.
Re: Пожелания к программе
Добавлено: 03 июн 2011, 11:45
Skydreem
хорошее обновление. Спасибо!..
ps как исправить надпись demo login на свою? И почему картинка монотонно синяя? без заставок...
Re: Пожелания к программе
Добавлено: 03 июн 2011, 23:03
Dmitry
Картинка без заставок потому что я забыл, и кинул в архив файл конфига от своего тестового сервера, а у меня там иные имена, и иное расположение. Чтобы вернуть те, которые были, нужно отредактировать файл
conf.txt, в нем нужно две строки исправить, чтобы в них в итоге было так:
PS. Выложенный архив обновален, в нем эта приведенная выше ошибка с именами файлов картинок исправлена.
Про надписи. Это уже редактируется в файле
hotspotlogin.cgi. Блок "русских сообщений" выглядит таким образом
Код: Выделить всё
elsif($language =~ /^ru$/)
{
$R_ChilliError = "Авторизация возможна только при подключении через Chillispot";
$R_login = "Login";
$R_freelogin = "Demo Login";
$R_logout = "Отключиться";
$R_loginfailed = "Авторизация не удалась!";
$R_loggingin = "Подключаемся...";
$R_loggedin = "Вы подключены к интернету";
$R_loggedout = "Вы отключены от интернета";
$R_user = "Логин";
$R_password = "Пароль";
$R_wait = "Пожалуйста, ждите...";
$R_onlinetime = "Времени прошло";
$R_remainingtime = "Времени осталось";
$R_encrypted = "Авторизация должна выполняться с использованием безопасного подключения";
$R_saveuser = "Запомнить логин/пароль";
# $R_login_string = "<a href=\"/help.php\">Help</a>";
$R_login_string = "Будьте внимательны - пароль и логин вводятся буквами латинского алфавита! <br />Не забудьте при необходимости переключить раскладку клавиатуры!";
$R_loggedin_string = "Добро пожаловать!";
$R_limitsout_string = "Вы израсходовали ваш лимит времени и/или объема данных!";
$R_limits_login_string = "Лимит одновременных подключений с этими логином и паролем превышен!";
$R_loggedout_string = "Благодарим вас за пользование <br />нашей услугой $companyname!";
$R_Alert = "Не закрывайте это окно, просто сверните его, <br />иначе вы будете отключены от интернета.";
$R_freelogin_greeting = "Один раз вы можете бесплатно войти в интернет с такими ограничениями: ";
}
Подписи именно кнопок
Код: Выделить всё
$R_login = "Login";
$R_freelogin = "Demo Login";
НО! Все мои попытки вписать туда какие-то русские слова приводили к тому, что клиент не мог авторизоваться...
Re: Пожелания к программе
Добавлено: 04 июн 2011, 18:04
Dmitry
Обновленная версия страницы с демо-входом - немного изменил "макет" (расположение кнопки + надпись и т.п.). Также в архив добавлен скрипт чистки базы от демо-пользователей. Скрипт этот:
- называется clear_query.pl;
- должен также находиться в папке /usr/lib/cgi-bin;
- использует основные настройки из файла /usr/lib/cgi-bin/conf.txt;
- внутри имеет параметр $reset_period, о нем ниже;
- должен просто запускаться через некоторый интервал с помощью cron (например, каждые 5 минут).
О параметре
$reset_period - это время в минутах, суть которого наверное проще расказать по методу "от обратного"...
Скрипт позволяет реализовать механизм обслуживания "шаровых" клиентов по методу:
- Какое-то время клиент может провести в интернете бесплатно (это время определяется параметром "Номинал" Тарифного пакета Free_Demo_Voucher и настраивается в самой программе Easyhotspot).
- По его истечении клиент отключается от хотспота.
- По истечении еще некоторого периода времени клиент снова может войти в интернет по демо-входу.
Этот скрипт находит всех демо-пользователей, которые первый раз вошли в интернет по бесплатному логину ранее, чем "
$reset_period" минут назад, и удаляет их из базы. После этого этот клиент снова получает возможность бесплатного входа.
ЗЫ. Новая версия
вот в этом сообщении.
Re: Пожелания к программе
Добавлено: 05 июн 2011, 17:01
kot.alexey
Дмитрий, подскажите пожалуйста как прописать скрипт clear_query.pl в cron?
Заранее благодарен.
Re: Пожелания к программе
Добавлено: 05 июн 2011, 17:33
Dmitry
Откройте в редакторе файл заданий cron
добавьте в него следующую строку:
ВНИМАНИЕ, исправлено 01/11/2011 (до исправления в команде отсутствовало указание, что скрипт запускал perl, теперь все правильно):
Код: Выделить всё
*/5 * * * * root /usr/bin/perl /usr/lib/cgi-bin/clear_query.pl
в итоге каждые пять минут будет запускаться файл /usr/lib/cgi-bin/clear_query.pl
Re: Пожелания к программе
Добавлено: 14 июн 2011, 20:02
Dmitry
Написал легкий конфигуратор, который управляет параметрами именно гостевого доступа
http://wifi-hotspot.zp.ua/cgi-bin/test_query.cgi
по сути, три скрипта позволяют создать хотспот с управляемым гостевым доступом вообще без Easyhotspot
Уточняю - только с гостевым доступом, а то ведь можно подумать что эти три скрипта могут заменить полноценный биллинг
Re: Пожелания к программе
Добавлено: 15 июн 2011, 13:45
dro_salevan
Отличненько ))
cgi(perl) оно хорошо )))
я незнаю почему, но люблю пхп ))
З.Ы. ссылка на конфигуратор, не совсем понял для чего она?? открывается окно конфигуратора и все или так и должно быть?