Документация по модулю Hotspot и принадлежащим к нему страницам перенесена в Confluence
http://abills.net.ua:8090/display/AB/Hotspot
Модуль управления системой Hotspot.
Возможности:
Устанавливаем perl модуль HTTP::BrowserDetect
Добавляем задание на определение браузера и ОС.
cd /usr/abills/libexec ln -s ../Abills/modules/Hotspot/hotspot_browser_detect.pl . chmod +x hotspot_browser_detect.pl
/etc/crontab
*/5 * * * * root /usr/abills/libexec/hotspot_browser_detect.pl
abills/libexec/config.pl
@MODULES = ( 'Hotspot' ... );
# mysql -D abills < db/Hotspot.sql
В текущий момент поддерживается только сервер доступа MikroTik.
В связи с плохой реализацией показа рекламы (через popup-окна) используется своя схема.
При показе рекламы, открывается страница /start.cgi?hotspot_advert=…orig_link=…
.
На этой странице в скрытом iframe
грузится страница показа рекламы на MikroTik'е (для снятия блокировки клиента), и в видимом iframe
открывается случайная ссылка из записанных в ABillS.
Клиенту доступна кнопка «Пропустить» и обратный отсчёт до автоматического редиректа на целевую страницу.
Обратный отсчёт начинается после загрузки страницы рекламы на MikroTik'е
$conf{HOTSPOT_AD_PERIOD}=300; | Интервал показа рекламы по умолчанию (Может устанавливаться отдельно при настройке сервера доступа) |
---|---|
$conf{HOTSPOT_AD_SHOW_TIME}=10; | Время отображения рекламы |
$conf{HOTSPOT_AD_AUTO_REFRESH}=1; | Автоматическое перенаправление на целевую страницу |
$conf{HOTSPOT_LOG} = '/usr/abills/var/log/hotspot_log'; | Позволяет записывать события связанные с хотспотом в отдельный лог (авторизация, ошибка, регистрация и тд) |