Новости программы Easyhotspot — 2016

С момента прошлой публикации в программу были внесены такие изменения:

В веб-интерфейсе Easyhotspot исправлены такие ошибки:

  • Исправлена ошибка возникавшая, если из программы удалить всех кассиров. В таком случае сервер php выдавал два сообщения — один notice и один warning;
  • Исправлена «ошибка», благодаря которой экспорт части статистики (в csv-файлах) отказывался открывать Microsoft-овский excel. Баг этот, правда, был не мой, а Microsoft-овский, см. по ссылке: http://support.microsoft.com/kb/323626;
  • Исправлена ошибка постраничного вывода выписанных счетов в меню Администратора
  • Исправлена ошибка постраничного вывода списка кассиров, проявлявшаяся лишь в тех случаях, когда суммарное число персонала в программе Easyhotspot (Кассиров, Админов и Суперадминов) превышало установленное в настройках колличество строк для постраничного вывода (по умолчанию = 10);

В веб-интерфейс биллинга Easyhotspot внесен ряд изменений, дополнений и улучшений:

  • В программу добавлена возможность импорта «Клиентов с оплатой по счету» из XML-файла;
  • В списке ваучеров добавлен вывод popup-окна при щелчке по имени Тарифного пакета. В открывающемся popup-окне отображается сводка параметров Тарифного пакета;
  • В меню Тарифов добавлено всплывающее предупреждение, которое выводится, когда для создаваемого (или редактируемого) Тарифного пакета назначается привязка к ID хотспота и/или «График обслуживания»;
  • При поиске ваучеров поиск теперь осуществляется в том числе и по данным из колонки «пароль» (это полезно с оглядкой на некоторые платежные модули, которые выдают клиентам в качестве пароля номера их телефонов, в итоге — ваучер клиента теперь можно найти и по номеру телефона тоже);
  • В код были добавлены проверки того что, в php не запрещена функция exec, и в самой ОС установлен пакет lsb-release. Эти функции используются для вывода информации об ОС, на которой установлен Easyhotspot. В случае не соответствия указанным условиям теперь выводится popup-окно с указанииями, а не системные сообщения об ошибках сервера php;
  • В процедуру отправки «служебных СМС» добавлена поддержка агрегатора СМС_Центр (smsc.ru);
  • В списке служебных СМС добавлена кнопка для удаления сообщений. Кнопка отображается ТОЛЬКО ДЛЯ НЕДОСТАВЛЕННЫХ СМС, т.к. ее цель — лишь удаление тестовых СМС, которые администраторы умудряются насоздавать, пока настраивают их отправку;
  • В настройках платежных модулей добавлены кнопки для перехода на страницу настроек агрегатора, используемого для отправки служебных СМС с паролями;
  • В меню настроек платежных модулей добавлена проверка и вывод сообщения об ошибке, если администратор пытается при вводе адреса сервера хотспота указать http:// в начале строки…
  • В меню для редактирования описания тарифов в настройках платежных модулей теперь установлен и используется редактор TinyMCE;
  • В меню редактирования ваучера добавлена кнопочка [?] справа от списка с тарифными пакетами. При ее нажатии выводится всплывающее меню с описанием текущего выбранного в списке тарифного пакета;
  • В меню «Клиентов с оплатой по счету» изменен сам метод (чисто «внутренний механизм») генерации логина/пароля по нажатию соответствующей кнопки («незанятость» логина и пароля проверяется непосредственно в процессе генерации);

Обновлен модуль СМС-авторизации

Ключевые изменения:

  • В качестве логина модуль теперь выдает клиенту его телефон, а в качестве пароля — произвольно сгенерированную «абракадабру»;
  • Отправка СМС возложена на функцию отправки служебных СМС, включенную в программу Easyhotspot. Модуль теперь просто ставит СМС клиента в «очередь» программы;
  • Проверка номеров телефонов клиентов также перенесена в программу Easyhotspot. При этом, в программу внесен массив кодов стран-бывших республик СССР, плюс массивы кодов их операторов мобильной связи. Для успешного прохождения проверки номер телефона клиента теперь должен вводиться в международном формате;

Написан целый ряд новых платежных модулей

  • Модуль для обслуживания клиентов через п/с Assist;
  • Модуль для обслуживания клиентов через п/с Единая касса (Wallet One);
  • Модуль для обслуживания клиентов через п/с Яндекс.Касса;
  • Модуль для обслуживания клиентов через п/с Paypal;

В скрипт страницы авторизации внесен ряд изменений

  • Код javascript вынесен из кода perl в отдельный файл;
  • Для СМС-авторизации введена дополнительная функция «авто-логина»: скрипт находит в базе Easyhotspot имя и пароль, с которыми устройство с этим mac-адресом авторизовалось «в прошлый раз», и пытается снова авторизоваться с этими данными;
  • Для показаний счетчика времени, отсчитывающего длительность рекламы ПОСЛЕ авторизации, в стилях (CSS) включена анимированная смена цвета (переход от белого к черному и назад), что делает его заметным на фоне любой страницы;
  • У файла перадресации для Mikrotik добавлен параметр, благодаря которому для ваучеров с лимитом времени в popup-окне страницы авторизации отображается сколько времени осталось у клиента;
  • При формировании логина гостевых ваучеров добавлен NASID. Теперь один и тот же клиент (гаджет) в хотспотах с разными NASID получает разные «гостевые ваучеры» (те, которые используются кнопкой «Бесплатно»). Соответственно, в разных зонах хотспота он обслуживается с разными параметрами. Без этого нововведения могли возникать такие ситуации, при которых клиенту (например) выписывался «гостевой ваучер» хотспотом А с одним набором лимитов (низкой скоростью, малым временем и т.д. и т.п.) и через время, НЕ ПОЛНОСТЬЮ ИЗРАСХОДОВАВ этот ваучер, клиент уходил из зоны этого хотспота А. После чего этот клиент попадал в зону хотспота Б, где, допустим, лимиты скорости выше, а времени больше. Но система авторизовывала его по «гостевому ваучеру» хотспота А, и клиент получал худшие условия. Плюс ко всему, подсчет времени доступа в интернет для клиента ПРОДОЛЖАЛСЯ (т.е. учитывалось и то время, которое клиент израсходовал в зоне хотспота А). Теперь же в хотспотах с разными NASID одному и тому же клиенту генерятся разные ваучеры;
  • Всвязи с изменением, описанным в предыдущем пункте пришлось изменить и механизм блокировки ввода на странице авторизации «нежелательных» симовлов (пробелов, служебных и т.д.);
  • Добавлен арабский перевод для страницы авторизации;
  • У страницы авторизации в ссылки для вызова файлов с кодом javascript и стилями css добавлен «штамп даты и времени». Благодаря этому при обновлениях программы отпадает необходимость клиентам хотспотов очищать кеш браузеров (иначе браузеры используют не обновленные файлы, а храняшиеся в кеше старые). А так, благодаря добавлению к ссылке фрагмента кода вида «?201603241212», обновленные файлы с кодом javascript и стилями css автоматически «перезакачиваются» браузерами клиентов по-новой;

Изменения и исправления в скрипте-инсталяторе:

  • В очередной раз были подкорректированы шаблоны для «имен» сетевых адаптеров (чтобы скрипт нормально воспринимал варианты типа «enp0s8» и аналогичные);
  • Исправлена ошибка — ранее при ОБНОВЛЕНИИ страницы авторизации не переносились НЕКОТОРЫЕ параметры формы обратной связи. А именно — не переносилось старое имя отправителя письма (что «не на столько страшно»), и не переносился адрес получателя письма (что «намного хуже»). Ошибка исправлена;
  • Была корректно настроена процедура, которая в настройках веб-сервера apache меняет AllowOverride None на AllowOverride All. Ранее она справлялась с этой задачей только в настройках сервера apache версии 2.2.х, а в настройках apache 2.4.х — не производила подобную замену. В итоге, впоследствии при работе сервера настройки из файлов .htaccess сервером apache игнорировались. Теперь корректно меняется параметр AllowOverride для любого из вариантов сервера apache;
  • Для случая установки на Ubuntu 10.04 LTS добавлена команда, вписывающая в настройки репозиториев сервер oldreleases-ubuntu. Благодаря этому становится возможным установка и обновление ПО. (хотя. конечно, сам дистрибутив Ubuntu 10.04 LTS уже устарел и не поддерживается компанией Canonical, но тем не менее, Easyhotspot может быть по прежнему установлен на него);
  • В связи с тем, что Debian признал релиз 6.х (squeeze) устаревшим и полностью убрал из интернета его репозитории, установка сервера Easyhotspot на данную версию ОС Debian стала невозможной. Поэтому, в скрипт-инсталятор был добавлен «запрет» (новой) установки, если на сервере используется ОС Debian 6.х (squeeze). В то же время, возможность обновления самой программы Easyhotspot (на тех серверах, где она уже была установлена ранее) для данной версии данного дистрибутива была сохранена;
  • В связи с выходом нового дистрибутива Ubuntu 16.04 LTS были откорректированы и сама программа Easyhotspot, и скрипт-инсталлятор, и т.д. и т.п. В итоге корректно проходит и сама инсталляция, и последующая работа программы, установленной на сервер с данной ОС;

Изменения и исправления в прочих скриптах:

  • Исправлен скрипт «кабинета пользователя»: он не показывал заказы выписанные (ваучеры приобретенные) через платежные системы Onpay и Robokassa;
  • Скрипт, устанавливающий coova-chilli/обновляющий chillispot на coova-chilli (на локальном сервере), проверен (и подкорректирован) для новых дистрибутивов — Debian 8.0 и Ubuntu 14.04. Для Debian вообще ничего не пришлось менять, а для Ubuntu — лишь добавить новую версию в шаблон проверки. В остальном — все ОК, скрипт работает;
  • Отредактированы все скрипты, которые считывают параметры из файла /usr/lib/cgi-bin/conf.txt. В них была добавлена команда, отсекающая досовские окончания строк (в редакторе mcedit выглядят как  ^M   черного цвета). В результате — устранена причина по которой эти скрипты отказывались работать после правки конфига (conf.txt) в редакторах в Windows;

Просмотреть все эти изменения в действии можно на сайте демо-версии модифицированной программы Easyhotspot (логин/пароль Кассира: vcool/vcool123, логин/пароль Администратора: admin/admin123), или же то же самое, но с английским языком интерфейса

На всякий случай, напоминаю, что все эти изменения относятся именно к модифицированной версии программы Easyhotspot, которую можно приобрести на странице онлайн-продажи.

Список предыдущих анонсов новостей программы Easyhotspot доступен тут.

Новости программы Easyhotspot — июнь 2015

Изменен алгоритм, по которому Perl-скрипт для freeradius-a «привязывал» ваучер к mac-адресу

Были выполнены такие изменения:

  • Ранее perl-скрипт выполнял процедуру привязки при каждой авторизации, вне зависимости от того, был ли ваучер уже привязен к mac-адресу ранее или нет. Теперь процедура откорректирована, и привязка осуществляется только в случае, если в базе для ваучера еще не прописан mac-адрес;
  • Ранее привязка к mac-адресу происходила даже если клиент вводил неверный пароль. Теперь привязка осуществляется только в случае, если и логин и пароль, введенные клиентом, верны!

Исправлена ошибка постраничного вывода отчета о проданных ваучерах

Имевшаяся в программе ошибка не позволяла просматриватиь страницы со 2-й и далее, если список не умещался на одной странице.

Исправлена ошибка постраничного вывода отчета об израсходованных/просроченных ваучерах

Имевшаяся в программе ошибка не позволяла просматриватиь страницы со 2-й и далее, если список не умещался на одной странице.

В меню инкассации ваучеров на кнопку «Пометить все как оплаченные» добавлен дополнительный вопрос, предлагающий подтвердить указанное действие

Нечаянный клик по указанной кнопке «навсегда прятал» от Администратора список ваучеров (собственно, выполнялось то, что и должно — ваучеры отмечались как оплаченные и пропадали из списка). Теперь страница требует от Администратора подтвердить свои действия (нечаянное срабатывание исключено).

В меню ваучеров добавлены новые кнопки

Добавлены три новые кнопки. Эти кнопки управляют фильтрацией ваучеров, отображаемых в списке. Клик по первой кнопке включает отображение только активированных ваучеров. Клик по второй — и отображаются только не использованные ваучеры. Третья кнопка возвращает отображение списка в «исходное» состояние — отображаются все ваучеры, как уже активированные, так и еще не использованные.

При вызове меню редактирования ваучеров/клиентов/тарифов добавлена проверка на существование позиции, которую планируется редактировать

Функция эта, на самом деле, более полезная на демо-сервере, а также на серверах, которыми одновременно управляет довольно много человек (кассиров/админов). В таких случаях могли возникать ситуации, когда, например, один пользователь программы (будь то кассир или админ) удалил ваучер, а второй пользователь (другой кассир или же админ), у которого список ваучеров не успел обновиться, решил отредактировать этот же самый ваучер. В итоге, второй пользователь получал целый ворох сообщений об ошибках. Теперь при вызове формы редактирования ваучера (или же «клиента с оплатой по счету», или же Тарифного пакета) программа дополнительно проверяет — есть ли в базе запрошенный ваучер (или клиент, или тариф). Если искомая запись отсутствует, пользователю просто выводится сообщение об этом.

Дополнительно урезаны права Кассиру «доверие» которому установлено как «Не доверяем»

Теперь, если в настройках программы про «доверие кассирам» установлено как «Не доверяем», при редактировании ваучеров Кассирам запрещено менять и пароль, и Тарифный пакет ваучера (рабочей осталась лишь возможность отвязки ваучера от mac-адреса).

Написано небольшое API

В связи с участившимися вопросами о том, как внешние программы могли бы взаимодействовать с Easyhotspot (например, такими: «Может ли мой кассовый аппарат каким-то образом получить от Easyhotspot пароль от WiFi и распечатать его на чеке?») в программу было добавлено небольшое API — при обращении к нему (http POST-запрос) программа «отвечает» данные только что сгенерированного нового ваучера в формате XML.

В программу добавлена функция импорта ваучеров из XML-файла

В программу добавлена новая функция — импорт ваучеров из XML-файла. Процедура доступна Администраторам, для этого добавлена новая кнопка в списке Тарифных пакетов (в строке у каждого из тарифов), при наведении на кнопку появляется всплывающая подсказка «Импорт пар логин/пароль из XML-файла». При импорте осуществляется проверка на уникальность логинов. Если логин, который должен быть добавлен в базу, уже в ней имеется, то этот «неуникальный» логин (и соответствующий пароль) в базу не добавляются. По окончании процедуры выводится число успешно добавленных ваучеров и число ваучеров, которые импортировать не удалось. Также, выводится ссылка на файл с парами «логин/пароль», импорт которых не удался.

Формат XML-файла с ваучерами :

Пример XML файла с ваучерами для импорта в программу Easyhotspot

Реализована связка Mikrotik с Easyhotspot на все 100%

  • Написано соответствующее руководство по настройке роутеров Mikrotik;
  • Написаны необходимые дополнительные файлы, благодаря которым роутер Mikrotik использует не встроенную страницу авторизации (являющуюся венцом творения «минималистов»), а нормальную «многофункциональную» страницу авторизации модифицированного Easyhotspot-а (со всеми ее «плюшками» типа «страницы-подложки» /показа рекламы, как до, так и после авторизации / механизмами гостевго доступа и автологина / кнопками платежных систем, а также перехода в кабинет пользователя и т.д. и т.п.);
  • Написана «многофункциональная» страница авторизации модифицированного Easyhotspot-а в версии для Mikrotik (использующая их алгоритм авторизации);
  • В коде самой программы Easyhotspot во всех процедурах работы с мак-адресами в число допустимых символов добавлено двоеточие — «:» (дело в том, что mikrotik по умолчанию отправляет mac-адрес, разделяя октеты именно двоеточием);

В программу внесен целый ряд изменений всвязи с новыми требованиями российского законодательства

В связи с Постановлением Правительства Российской Федерации от 31.07.2014 № 758 «О внесении изменений в некоторые акты … (и т.д.)» отныне (цитата): «Оказание универсальных услуг связи по передаче данных и предоставлению доступа к сети интернет с использованием пунктов коллективного доступа осуществляется оператором универсального обслуживания после проведения идентификации пользователей. Идентификация пользователя осуществляется оператором универсального обслуживания путем установления фамилии, имени, отчества (при наличии) пользователя, подтверждаемых документом, удостоверяющим личность». В связи с этим в программе было выполнено следующее:

  • Добавлены поля для ручного ввода данных о паспорте как для «клиентов с оплатой по счету», так и для ваучеров. В самих списках (клиентов с оплатой по счету или ваучеров) паспортные данные не отображаются (там банально уже нет места для этого), но по ним возможен поиск;
  • Кроме того, добавлено архивирование всех данных аккаунта при удалении как ваучеров, так и клиентов с оплатой по счету, а также при выписке счетов, при удалении администратором израсходованных ваучеров после инкассации и т.д. и т.п. Дополнительно в программу добавлена форма для поиска по данным, хранящимся в этом архиве. Форма позволяет искать по самым разным данным, попавшим в архив, включая имя, паспортные данные, логин, пароль, mac-адрес, ip-адрес, тариф, дата, и многое другое. Результаты поиска могут быть экспортированы в CSV-файл как по отдельности для каждой из записей (кнопка (значок-иконка excel) присутствует в каждой из строк с результатами поиска), так и сразу всех записей, удовлетворивших критерию поиска (кнопка «Экспорт всех результатов поиска в единый CSV-файл» внизу под списком).;
  • Написан новый модуль к программе Easyhotspot, который отсылает СМС с паролем на мобильный телефон, номер которого клиенту нужно ввести на специальной странице, предложенной хотспотом. Дополнительной функцией этой же страницы является ознакомление клиента с правилами хотспота. Ссылка на мануал от модуля: Инструкция к модулю СМС-авторизации;

Ужесточен подход к «обязательности просмотра» рекламы клиентами

В функцию показа клиентам рекламы (до авторизации) были введены такие дополнительные изменения:

  • Отсчет времени показа рекламы начинается только после того, как страница с рекламой полностью загружена в iframe;
  • Отсчет времени показа рекламы приостанавливается, если клиент свернул браузер, перешел на другую закладку, переключился на другое приложение;

В результате клиент обязательно должен смотреть именно страницу рекламы в течение всего того времени, которое вы установили в настройках!

Изменен механизм выбора стилей страницы авторизации

Ранее стили выбирались скриптом на Javascript. Теперь для этого используются встроенные возможности CSS (а именно — функция @ media screen)

Написан новый платежный модуль — для белорусской платежной системы iPay

Данный модуль позволит вам организовать обслуживание клиентов вашего хотспота, при котором они смогут оплатить доступ в интернет любым из способов, предлагаемых платежной системой iPay. Платежная система iPay позволяет* клиентам оплачивать счета:

  • с помощью простой отправки СМС со своих мобильных телефонов;
  • онлайн оплаты на сайте iPay для клиентов мобильных операторов МТС и life:);
  • через систему «Расчет» (ЕРИП). Оплата может производиться в инфокиосках, банкоматах, интернет и SMS-банкингах в банках участниках системы «Расчет»;

Подробнее вы можете прочесть на странице, посвященной данному модулю

Обновлен модуль приема платежей по СМС (через короткие номера)

В модуль добавлена поддержка украинского агрегатора СМС Биллинг. Данный агрегатор позволяет принимать платежи с помощью отправки клиентом СМС на указанные короткие номера.

Обновлен модуль приема платежей по кредитным картам (liqpay)

Обсновление связано с переходом самого сервиса Liqpay на новую версию API — с 1.2 на 2.0.

Обновлен скрипт-инсталятор

В скрипт-инсталятор внесено изменение: корректировке подверглись «шаблоны» имен интерфейсов, благодаря чему стало возможным использование имен вида eth0.100.

В биллинге реализован механизм для записи в базу информации об идентификаторе хотспота (NASID), с которого клиент получает доступ в интернет

Благодаря внесенным изменениям:

  • В базу данных программы (в список сеансов сервера FreeRADIUS) теперь записываются и идентификаторы (NASID) хотспотов, с которых клиенты получают доступ в интернет;
  • В итоге, теперь появилась возможность данную информацию (об идентификаторах хотспотов) выводить в списках, экспортировать в отчеты, использовать иными способами для поиска и анализа;

В программу добавлена функция отправки «служебных смс»;

В программу добавлена «рутина» для отправки СМС. Данный код выполняет следующие функции:

  • Возможность выбрать одного из четырех (на момент написания новости) агрегаторов и настроить данные учетной записи;
  • Отправка СМС «поставленных в очередь» (самой программой, модулями и т.д. и т.п.);
  • Отображение списка обработанных СМС, лога ошибок, возникающих при отправке;

В программу добавлена функция «пост-активации» ваучеров по СМС

Как все это выглядит:

  • Кассир генерит в программе обычные ваучеры (либо же Администратор импортирует из XML-файла новые ваучеры);
  • Клиент покупает ваучер и пытается по нему в первый раз выйти в интернет;
  • Хотспот не пускает клиента в интернет, вместо этого пишет ему в ответ сообщение типа «Этот ваучер еще не был активирован…. (и далее по тексту, пример — см. на рис. ниже)»;
  • Открывается форма, в которой клиенту предлагается ввести номер его мобильного телефона;
  • На телефон клиента отсылается СМС с кодом активации;
  • Клиенту открывается форма, в которой ему предлагается ввести полученный код активации;
  • Клиент вводит код активации, полученный в СМС, система пишет «Все, ваучер активирован, пробуйте авторизоваться повторно«.
  • Клиент повторно на странице авторизации вводит данные ваучера (даже не вводит, их страница авторизации «помнит» итак, а просто нажимает кнопку «Войти«) и т.к. ваучер уже активирован, беспрепятственно получает доступ в интернет;
  • Параллельно система записывает номер телефона клиента в базу данных, в поле, где хранятся паспортные данные;

Сообщение о том, что ваучер не активирован

В веб-интерфейс программы внесен целый ряд изменений и исправлений:

  • В папку вебинтерфейса Easyhotspot добавлен файл .htaccess с набором инструкций, принуждающих браузеры по возможности использовать картинки и пр. элементы оформления из собственного кеша. Это немного ускорило работу вебинтерфейса;
  • В списках сеансов для ваучера исправлена ошибка вывода информации о том, когда истекает срок годности ваучера (из-за ошибки показывало 2 янв 1970 г);
  • Для форм поиска реализована функция, которая запускает поиск по клику на значке «увеличительного стекла». Ранее надо было нажимать Enter на клавиатуре. Добавлено по просьбе владельцев планшетов (не имеющих кнопки Enter);
  • Добавлено отображение списка пользователей (кассиров, админов, суперадминов), вошедших в Easyhotspot (в т.н. «черную админку»). Выводит список тех, чьи сеансы «активны» (активным считается пользователь, выполнявший какие-либо действия в программе в течение последних 2-х часов). В списке показаны: время последней активности, логин и ранг (кассир/админ/суперадмин) пользователя, IP-адрес, с которого вошел пользователь, сведения о его браузере и ОС;
  • При поиске ваучеров поиск теперь осуществляется в том числе и по данным в колонке «пароль» (это полезно с оглядкой на последние платежные модули, которые выдают клиентам в качестве пароля номера их телефонов, в итоге — так их проще искать);
  • В меню Тарифов добавлено всплывающее предупреждение, которое выводится, когда для создаваемого (или редактируемого) Тарифного пакета назначается привязка к ID хотспота и/или «График обслуживания»;
  • На страницы настроек платежных модулей добавлены кнопки для перехода на страницу настроек агрегатора, используемого для отправки «служебных СМС» (с паролями);

В платежные модули добавлена функция «привязки к NASID»

Благодаря этой функции у платежнных модулей появилась возможность обслуживать клиентов, приходящих с разных хотспотов (с разными NASID) одним и тем же модулем (одной и той же страницей), но по разным Тарифным пакетам! То есть, страница выбора тарифов платежных модулей может быть настроена так, что она будет предлагать клиентам только те Тарифные пакеты, которые привязаны к тому ID-хотспота (или NASID, что фактически, является одним и тем же), который прописан в хотспоте, с которого клиент «пришел» на страницу модуля. Также, ID-хотспота, на котором была проведена процедура оплаты, будет выводиться дополнительной колонкой при отображении результатов работы платежного модуля как в самой программе Easyhotspot, так и при экспорте их в csv-файл.

В платежные модули добавлена функция экспорта результатов в CSV-файл

В платежные модули добавлена функция экспорта результатов в CSV-файл (этот файл впоследствии может быть открыт для анализа и/или редактирования в программах MS Excel, OpenOffice Calc или LibreOffice Calc). При экспорте администратору предлагается выбрать требуемый период времени (даты старта и окончания).

Добавлен простейший скрипт ротации файлов, выступающих в качестве «подложки»

В «коробку» с программой добавлена парочка простейших скриптов «ротации» адресов страниц, выступающих в качестве «подложки».

Первый файл меняет «подложки» в зависимости от времени суток (утро/день/вечер). В скрипте в качестве параметров указываются два времени (только часы), когда «заканчивается утро» и когда «заканчивается обед». Кроме того, указываются три адреса разных страниц: «что показываем утром», «что показываем в обед» и «что показываем вечером».

Второй файл (скрипт) по очереди меняет три разных «подложки» каждую минуту.

Изменена страница авторизации, для взаимодействия с базой теперь используется AJAX

У страницы авторизации были изменены механизмы, использующиеся для функции гостевого режима. В результат было достигнуто снижение нагрузки на сервер. Подробнее о том, благодаря чему это произошло:

  • Подключившись к хотспоту, но еще не авторизовавшись (не получив доступ в интернет) большинство клиентов гонят в хотспот (точнее, в интернет) целую волну запросов. Дело в том, что «унюхавши» интернет, целые толпы самых разных программ, таких как всевозможные агенты — фейсбуков, мейлов, обновлений софта и пр. тут же хотят попасть на свои сайты! А если на устройство еще и какой-нибудь вирус подсажен, то тут вообще «льется, что из водопроводной трубы»… И так как клиент еще не авторизован, то на КАЖДЫЙ такой запрос хотспот отвечает страницей авторизации.
  • Краткая ремарка о работе гостевого механизма — КАЖДОМУ клиенту, которому выводится страница авторизации, она генерит персональный гостевой ваучер. И данные этого ваучера (логин/пароль) подставляются в скрытую форму кнопки «Бесплатно». Чтобы, когда клиент нажимал эту кнопку, в базе изихотспота уже был готовый ваучер, по которому его сообственно и впускает потом в интернет. Ранее perl-скрипт, который формирует страницу авторизации, каждый раз при формировании страницы выполнял вся рутину (поиск по базе, создание нового гостевого ваучера, запись его в базу и т.д. и т.п.);
  • В старой версии скрипт лез в базу за данными гостевых ваучеров при КАЖДОМ обращении к странице авторизации, не зависимо от того, запросил ее сам пользователь с браузером или какой-нибудь агент поиска обновлений на PlayMarket-е какого-нибудь планшета с Android-ом;
  • В итоге, когда кто-то ломился в страницу авторизации, то при этом возрастало число обращений в базу данных (что является ЗАМЕТНОЙ нагрузкой). В качестве примера на рис. ниже показано как возросло число запросов к серверу (странице авторизации) при подключении к хотспоту всего одного ноутбука, у которого целых ворох установленных программ «ну очень сильно хотел обновиться»;
  • Теперь же (в обновленной варианте страницы авторизации) сама рутина «гостевых ваучеров» перемещена непосредственно в сам Easyhotspot, а страница авторизации просто обращается к ней за данными с помощью AJAX. Казалось-бы, процедура усложнилась? Возможно. Однако, AJAX — это использование Javascript, которого НЕТ во всевозможных брут-форсах, юзер-агентах всевозможных фейсбуков, «вкнотактов», «мейлов-ру» и иже с ними, персональных «обновлялках» программ и всевозможных плей-маркетах, и т.д. и т.п. Javascript — присутствует только в браузерах! Поэтому, чисто гостевая процедура будет запускаться ТОЛЬКО в случаях, когда реальный человек реально смотрит страницу в реальном браузере, что снижает число обращений в базу и как следствие — суммарную нагрузку на сервер;

Возрастание числа запросов страницы авторизации

Написан новый платежный модуль — для платежной системы Onpay

Данный модуль позволит вам организовать обслуживание клиентов вашего хотспота, при котором они смогут оплатить доступ в интернет любым из способов, предлагаемых платежной системой Onpay.

Подробнее вы можете прочесть на странице, посвященной данному модулю

Написан новый платежный модуль — для платежной системы ROBOKASSA

Данный модуль позволит вам организовать обслуживание клиентов вашего хотспота, при котором они смогут оплатить доступ в интернет любым из способов, предлагаемых платежной системой ROBOKASSA.

Подробнее вы можете прочесть на странице, посвященной данному модулю

В скрипт-инсталятор внесен ряд обновлений и исправлений

  • В очередной раз подкорректированы шаблоны для проверки имен интерфейсов (с какой-то радости 14-я Ubuntu вдруг стала присваивать имена и такого вида — p2p1);
  • При обновлении страницы авторизации теперь переносится из старых настроек в новые имя гостевого тарифного пакета;
  • При обновлении базы данных введены проверки, чтобы не выводились «пугающие» сообщения об ошибках добавления уже существующих таблиц и/или колонок в них;
  • Для скачивания пакета с программой Webmin теперь вписана ссылка на сайт именно самого Webmin-а. В результате — при установке скачивается самая последняя его версия, а не та, которая «когда-то была мной скопирована на свой сервер»;

Значительно обновлена инструкция «УСТАНОВКА И НАСТРОЙКА WI-FI ХОТСПОТА С ИСПОЛЬЗОВАНИЕМ CHILLISPOT, FREERADIUS И EASYHOTSPOT»

Всвязи с многочисленными изменениями в программе, была отредактирована инструкция «УСТАНОВКА И НАСТРОЙКА WI-FI ХОТСПОТА С ИСПОЛЬЗОВАНИЕМ CHILLISPOT, FREERADIUS И EASYHOTSPOT».

Обновлено руководство по работе в программе Easyhotspot;

Всвязи с изменениями в программе, была обновлена инструкция «Программа управления Wi-Fi хотспотом — Easyhotspot, Руководство по эксплуатации» (добавлена информация об отправке служебных СМС и т.д.). Инструкция доступна на странице ссылок.


Просмотреть все эти изменения в действии можно на сайте демо-версии модифицированной программы Easyhotspot (логин/пароль Кассира: vcool/vcool123, логин/пароль Администратора: admin/admin123), или же то же самое, но с английским языком интерфейса

На всякий случай, напоминаю, что все эти изменения относятся именно к модифицированной версии программы Easyhotspot, которую можно приобрести на странице онлайн-продажи.

Исправлена ошибка постраничного вывода отчета об израсходованных/просроченных ваучерах

Обновления в Easyhotspot — весна 2014

В программу были добавлены новые возможности:

В меню создания и редактирования Тарифных пакетов «гуманизирован» ввод срока годности

Ранее в программе ввод срока годности осуществлялся только в сутках. Если же была необходимость ввести значение равное, например, нескольким часам, нужно было вычислять дробное значение. Теперь ввод срока годности осуществляется более простым человеческим образом: нужно ввести число и выбрать из выпадающего списка единицу измерения.

admin_choose_expiration_units

Фиксированный список валют в программе заменен возможностью самостоятельно заводить, редактировать валюту(ы) Администраторами системы

Теперь в программе «по умолчанию» (сразу же после установки) отсутствует какая-либо предустановленная валюта! Администратор системы может добавить в список любое необходимое ему число валют. Внося валюту в список, Администратор указывает для валюты сокращенное наименование, полное наименование и код валюты в соотвествии со стандартом ISO-4217.

Admin_currency_list

В программу добавлена функция бана Клиентов по mac-адресу

В программу добавлен список mac-адресов, которым хотспоты будут отказывать в авторизации при любых обстоятельствах. Не важно — правильные данные вводит клиент при авторизации, или нет — хотспот всегда будет отвечать отказом в доступе! Разделение прав Кассиров/Администраторов применительно к данной функции реализовано следующим образом:

  • Кассир может вносить в список бана mac-адрес любого авторизовавшегося Клиента через меню просмотра пользователей подключенных «онлайн». Удалить mac-адрес из списка забаненых у Кассира нет возможности.
  • Администратор может добавить произвольный mac-адрес с помощью специального меню. Также, в своем меню Администратор может удалить любой mac-адрес из списка забаненых.

Admin-baned-mac-address-menu

Изменено поведение страниц, обновлявшихся автоматически

Ранее в программе было включено принудительное обновление всех страниц в меню Кассира каждые 3 минуты. Это создавало некоторое неудобство, например в случае создания Клиентов — сработавшее по таймеру автоматическое обновление могло прервать этот процесс, и все приходилось вводить по-новой. Теперь функция автообновления изменена:

  • Функция автообновления теперь присутствует только на нескольких страницах — «домашней» (обновляются сведения о загрузке сервера), Клиентов с оплатой по счету, Ваучеров , Клиентов, подключенных к хотспоту (в последних трех случаях обновляются данные о потреблении клиентами трафика, времени и т.д. и т.п.).
  • На страницах Клиентов с оплатой по счету автообновление автоматичесмки отключается, если хоть в одно (любое) из полей: имени клиента, его логина, пароля, были введены какие-то значения (в итоге, автообновление теперь не мешает создавать новых Клиентов).
  • На странице Ваучеров автообновление автоматически отключается, если Кассиром было введено число новых ваучеров для создания.

Кнопки скачивания в CSV-формате списков и Клиентов, и Ваучеров перенесены

Программа и раньше предоставляла возможность скачать в CSV-формате списки как Клиентов с оплатой по счету, так и ваучеров. Но кнопки эти не имели надлежащего оформления, и были размещены нелогично. Теперь кнопка для скачивания списка Клиентов с оплатой по счету находится в меню Клиентов с оплатой по счету (в верхнем правом углу). А кнопка скачивания списка ваучеров в CSV-формате — находится в врехнем правом углу меню Ваучеров, где ей логичнее всего находиться. Кнопки теперь оформлены в виде иконок, изображающих «spreadsheet» (экселевский файл) и имеют соотвествующие всплывающеи подсказки. Следует также добавить, что Кассирам эти кнопки видны только лишь в том случае, если параметр «Доверие кассиру» в программе установлен как «Да». Администраторам кнопки видны в любом случае.

Программа полностью изменена в вопросах выписки счетов

Изменения в этой части программы выполнено так много, что их описание просто не умещается в формат новостной заметки. Вот наиболее значимые из них:

  • Для Клиентов с оплатой по счету добавлены два новых типа учета: «посуточный» и помесячный»;
  • Программа теперь позволяет одному Клиенту выписывать и хранить в базе любое необходимое число счетов;
  • В выписанный счет вносится абсолютно вся необходимая, в том числе и служебная информация — кто выписывал, когда, в какой валюте, на какую сумму, все данные обо всех сеансах доступа в интернет, логин и полное имя Клиента, и т.д.
  • Получая деньги от Клиента в оплату счета, Кассир записывает в базу информацию об этом (в том числе записывается, кто именно из Кассиров и когда именно вносил в базу эту информацию);
  • Кассир, удаляя счет, на самом деле лишь перемещает его в «Корзину», Администратор имеет возможность просмотра в том числе и таких «удаленных» счетов;
  • Клиент может оплачивать счета как разовыми платежами, так и по частям;
  • Администратор проводит инкассацию всех средств, полученных Кассирами от Клиентов с оплатой по счету;

Чтобы полностью ознакомиться с новой методикой обслуживания Клиентов по счетам, рекомендуется внимательно прочесть обновленное «Руководство по работе в программе Easyhotspot«.

Обновлена инструкция: «Программа управления Wi-Fi хотспотом — Easyhotspot, Руководство по эксплуатации»

Всвязи с многочисленными изменениями в программе, были внесены изменения в инструкцию «Программа управления Wi-Fi хотспотом — Easyhotspot, Руководство по эксплуатации«. Инструкция доступна на странице ссылок.

В страницу авторизации добавлена возможность показа рекламы ПОСЛЕ авторизации (для гостевых клиентов)

На странице авторизации теперь возможно включить показ дополнительной рекламы, которая отображается уже после того, как клиент авторизовался.

  • Эта функция имеет свои собственные настройки активации этого режима, источника отображаемой рекламы (адрес страницы с рекламой) и длительности ее показа. Эти параметры независимы от настроек показа рекламы ДО авторизации;
  • Реклама после авторизации отображается ТОЛЬКО «гостевым» клиентам (тем, которые воспользовались кнопкой «Бесплатно» для того, чтобы получить доступ в интернет. Клиентам, которые авторизуются по логину\паролю (и, предположительно, оплачивают свой доступ в интернет), данная реклама не отображается;
  • Так как в момент показа этой рекламы клиент УЖЕ АВТОРИЗОВАН, её источником может быть любая страница, размещенная где угодно в интернете, и при этом не требуется дополнительная нгастройка хотспота на допуск к этой странице без авторизации!

У страницы авторизации добавлена функция автоматической авторизации клиента по логину / паролю

Теперь страница авторизации хотспота пытается сама авторизовать клиента. Речь именно про авторизацию тех клиентов. которые используют для этого логин и пароль (а не про «гостевых шаровиков»). В данном процессе есть несколько нюансов:

  • Во первых, как минимум самый первый раз клиент вынужден будет авторизоваться самостоятельно (вручную). В этот момент скрипт сохранит логин и пароль в браузере клиента. И впоследствии «автологин» будет пытаться подключать клиента с этими сохраненными логиногм и паролем. Немного подробнее: когда появляется меню ввода пароля, скрипт проверяет — есть ли сохраненные в куках браузера клиента пароль и логин, и если есть, то подставляет их в форму (собственно, это было реализовано в скрипте и раньше, только вот кнопку клиент должен был нажимать сам!). После чего, если оба поля (логин и пароль) заполнены, то, с задержкой в 1 секунду скрипт сам «нажимает» кнопку «Войти».
  • Если же у клиента нет сохраненных в браузере логина и пароля, то авторизоваться, естественно, не с чем, и «автологин» не выполняется. В этом случае, клиент должен ввести логин и пароль вручную. Во время ручного ввода клиентом логинов/паролей активируется (и при вводе каждого нового символа перезапускется) небольшая задержка в 15 секунд. Это избавляет от ситуаций, когда, допустим, логин уже введен, клиент успевает ввести только первый символ в поле пароля, и «автологин» уже «пошел» авторизовать…
  • Если «автологин» отработал успешно, то все ок, и клиент просто попадает в интернет.
  • Если же «автологин» вытащенными из куков логином/паролем не удался, то значит, что сохраненные в куках у клиента логин и пароль либо не верны, либо уже пришли в негодность (например, закончился срок обслуживания аккаунта, или закончился номинал ваучера, или истек срок годности, и т.д. и т.п.). В этом случае повторных попыток авторизоваться «автологин» не предпринимает, (чтобы страницу авторизации не «зацикливало» на непрерывных попытках «автологина» неверными данными).
  • Если клиент завершил сеанс сам (кнопкой «Отключиться»), процедура «автологина» блокируется на 20 минут. Иначе, клиент отключается от интернета, его выбрасывает на страницу авторизации, а она его снова же сама автоматом и авторизует. В течение этих 20 минут клиент (если «передумает») СМОЖЕТ снова авторизоваться, но увы, только вручную.

Для нерадивых админов добавлен «привет» в случае неправильной конфигурации гостевого доступа

Добавлено сообщение на страницу авторизации для тех «нерадивых админов», которым лень читать документацию. Теперь, если в настройках страницы авторизации сам гостевой доступ администратор хотспота включил, а вот гостевой тариф в базе Easyhotspot-а не создал (или создал с другим именем), то у него есть возможность прочесть о себе немного «незлых тихих» слов на английском языке. Да и сам гостевой режим в таком случае принудительно подавляется (выключается) самой страницей авторизации.

В программу добавлена функция автоматической привязки ваучера к mac-адресу

При авторизации ваучера выполняется проверка — привязан ли данный ваучер к какому-либо mac-адресу. Если нет, то ваучер привязывается к mac-адресу клиента, авторизующегося в данный момент. Во всех последующих случаях — система видит, что ваучер УЖЕ привязан, и ничего не делает. С другой стороны, уже имеющийся в программе механизм отказывает в авторизации тем, кто пытается подключиться по этому же ваучеру, но с другого оборудования (с каким-либо другим mac-адресом). В итоге, получается, что ваучер привязывается к тому mac-адресу, с которого был авторизован.

В лог авторизации клиентов программа при этом выводит сообщения об успешных привязках (обведены красным):

Kassir-autobind-to-mac-for-vouchers

Добавлена возможность бана по mac-адресу прямо из лога авторизации

В программу добавлена возможность бана по mac-адресу прямиком из лога авторизации. Ранее кассир мог забанить только уже авторизованного в хотспоте клиента (который уже получил доступ в интернет, и отображается в списке онлайн). Теперь же кассир может банить даже тех клиентов хотспота, у которых авторизоваться не получилось, и которые в итоге в списке онлайн пользователей отсутствуют, но при этом, судя по логу авторизации, сидят и активно подбирают пароли, пытаясь войти! Для этого в логе авторизации (см. рисунок выше) все mac-адреса специально выделяются визуально, плюс становятся «кнопками-ссылками». При щелчке по такой ссылке (выбранному mac-адресу) программа предлагает кассиру внести данный mac-адрес в список бана).

Кассиру добавлена возможность «отвязывания» ваучера от mac-адреса прямо в меню редактирования ваучера

Всвязи с автопривязкой ваучеров к mac-адресу (точнее, возможными разборками «хитро….деланых» клиентов), кассиру добавлена возможность отвязывать аккаунты ваучеров от mac-адресов. В форме редактирования ваучера, который привязан к какому-то mac-адресу, теперь отображается и сам mac-адрес, и кнопка («крестик»), чтобы эту привязку снять. Щелкнув по кнопке, кассир снимает привязку, и клиент сможет авторизоваться с другого устройства. Но «хитроделаным» клиентам стоит напоминать при этом, что как только они авторизуются по ваучеру с устройств с другими mac-адресами, их ваучеры будут тут-же привязаны к новым mac-адресам!

Внешний вид меню редактирования ваучера с кнопкой «отвязки» показан на рисунке ниже:

Kassir-edit-voucher-binded-to-mac

Изменен метод, используемый для отрисовки круговой диаграммы на странице «Статистика хотспота»

Изменен метод отрисовки диаграммы на странице «Статистика хотспота». (Согласен. что большинство на эту страницу вообще «раз в пятилетку» смотрит, и то, только если нечаянно в кнопку кликнет, но тем не менее)… Теперь отрисовкой занимается библиотека GoogleGraph (библиотека — внешняя, т.е. при рисовании диаграмки сервер хотспота отсылает запрос на специальное api, разработанное google, и располагающееся на серверах google). Зато теперь диаграмка фиксированного размера и не «прыгает»….

В меню создания ваучеров в выпадающий список тарифов добавлено краткое описание

В меню управления ваучерами (у кассира) в поле генерации новых ваучеров, в выпадающем списке тарифных пакетов, добавлено описание (краткий перечень лимитов) для каждого из тарифов (теперь кроме имени самого тарифа допонительно выводятся еще и — номинал, лимиты скорости, срок годности):

Kassir-list-of-tarifs-with-description

В программу добавлено новое меню «Роутеры, к которым подключены клиенты»

Для тех, кто обслуживает клиентов несколькими (внешними) роутерами в программу было добавлено новое меню. В нем отображается список тех роутеров, которые в данный момент обслуживают АКТИВНЫХ (уже авторизовавшихся) клиетов. Меню также показывает число клиентов, авторизовавшихся на каждом роутере в данный момент времени.

Пример меню:

Kassir_working_routers_menu

Изменен «кабинет пользователя»

Новый кабинет:

  • При подключении предлагает выбрать безопасный протокол (https), хотя позволяет подключиться и по обычному http (небезопасному). Выбор протокола — за клиентом. Эта функция была введена всвязи с тем, что кабинет позволяет просматривать и изменять конфиденциальную информацию.
  • Для входа в кабинет требует от клиента ввести и логин и пароль
  • Авторизация хранится в течение 10 минут, после чего в случае неактивности, сбрасывается (нужно входить по новой)
  • Кабинет в дополнение к «старым функциям» теперь позволяет клиенту самостоятельно изменить пароль учетной записи, используемый для авторизации в хотспоте (для выхода в интернет)
  • Кабинет позволяет клиенту просмотреть список заказов, оплаченных в автоматизированных платежных системах (поиск ведется по номеру телефона).
  • Для заказов, оплаченных через платежные системы, возможен просмотр статистики простым щелчком по кнопке.

Несколько скриншотов обновленного кабинера:

cabinet_view_orders_by_phone

Пример списка заказов, оплаченных через платежные системы

cabinet_postpaid_client

Кабинет для Клиента с оплатой по счету (с примером сообщения о сроке окончания обслуживания)

cabinet_voucher_user

Кабинет для ваучера (отображаются номинал ваучера (Тарифного пакета) и дата окончания обслуживания)

В программу добавлена форма обратной связи

Основная цель этой формы обратной связи — чтобы человек («с улицы»), который просто подключился к хотспоту, и при этом НЕ ЗНАЕТ, ЧТО ЕМУ ВООБЩЕ ТЕПЕРЬ ДЕЛАТЬ, куда обращаться, где искать того, кто ему продаст (или даром выдаст) талон, и т.д. и т.п. мог хоть как-то связаться с администратором хотспота. Ведь этот неавторизованный клиент никакого выхода в интернет не имеет, и следовательно «обычными методами» не может даже e-mail отправить! Данная форма обратной связи:

  • использует учетную запись на внешнем smtp-сервере, следовательно на самом сервере хотспота вам не надо устанавливать и настраивать собственный почтовый (smtp) сервер.
  • отправку письма выполняет сам сервер хотспота, благодаря чему письмо может отправить и неавторизованный клиент, без необходимости авторизоваться и получать доступ в интернет.
  • адрес получателя (администратора хотспота) жестко прописывается в настройках, следовательно форма бесполезна для рассылки спама.
  • В форме сделана задержка, благодаря чему клиенту вас доставать письмами тоже быстро надоест

Пример формы обратной связи доступен по ссылке (шлет письма на мой адрес): форма обратной связи на сервере

Обновлен скрипт-инсталятор — теперь возможна установка на дистрибутив Ubuntu 14.04

Ubuntu выпустила очередной LTS (Long Term Support — «с долговременной поддержкой») релиз — 14.04. Скрипт-инсталятор «подрихтован, и теперь без проблем устанавливает Easyhotspot на дистрибутив Ubuntu 14.04 LTS:

easyhotspot_on_ubuntu_14_04

Также, была проверена обновленная версия Debian — 7.5. На нее скрипт-инсталятор также установил Easyhotspot абсолютно корректно.

Ну и в плане «экстравагантной феерии» — Easyhotspot на Raspberry Pi!

Скрипт-инсталятор, создавая резервные копии, добавляет в имя шаблон даты

Скрипт-инсталятор одновременно является и способом обновления программы. При этом, обновляя программу, скрипт создает резервную копию старых файлов. Ранее создавалась просто версия бакапа «предыдущих» файлов. В итоге, выполнив два обновления подряд, вы теряли файлы, которые были на сервере изначально (до этих двух обновлений). Чтобы избежать такой возможности, теперь при обновлении резервным копиям к имени добавляется шаблон «даты-времени». В итоге, остаются все бакапы. А уж в случае отсутствия необходимости в их дальнейшем хранении, вы удаляете их самостоятельно.

Скрипт-инсталятор изменен с целью минимизации ошибок при повторной установке «поверх предыдущей»

У скрипта-инсталятора была возможность в расписание заданий накидать «целую пачку» однизх и тех же комманд. Для этого достаточно было просто ставить программу «поверх» старой установки (именно Не обновлять, А поверх). В результате, в планировщике заданий Linux-а прописывалось несколько команд на запуск одних и тех же скриптов чистки системы, гостевых тарифов и т.д. и т.п. Это создавало проблемы, например, когда два одновременно запущенных скрипта чистки гостевых ваучеров мешали дрруг другу. Скрипт-инсталятор был изменен, и теперь в планировщик заданий не вписывает по нескольку раз команду на запуск одних и тех же скриптов…


Просмотреть все эти изменения в действии можно на сайте демо-версии модифицированной программы Easyhotspot (логин/пароль Кассира: vcool/vcool123, логин/пароль Администратора: admin/admin123), или же то же самое, но с английским языком интерфейса На всякий случай, напоминаю, что все эти изменения относятся именно к модифицированной версии программы Easyhotspot, которую можно приобрести на странице онлайн-продажи.

Новости модифицированной версии Easyhotspot, ноябрь 2012

Модифицированная версия программы Easyhotspot является билинговой программой для управления хотспотом или сетью хотспотов. Благодаря дополнительным модулям: приема платежей по СМС и приема платежей с банковских пластиковых карт, программа предоставляет возможность полностью автоматического обслуживания клиентов хотспота.

Подробнее прочесть о модифицированной версии программы Easyhotspot можно вот в этой заметке: «Простой биллинг с веб интерфейсом — Easyhotspot«.

С момента прошлого анонса обновлений были выполнены следующие действия:

В программу были добавлены новые замечательные возможности. «Красной строкой» о них:

  • Клиентам с оплатой по счету теперь можно выставить дату окончания обслуживания!
  • Появилась возможность привязки клиентов и Тарифных пактов к конкретному хотспоту! 
  • Отныне в Easyhotspot есть возможность редактирования Тарифных пакетов!

 

А теперь немного подробнее обо всех этих новинках.

Дата окончания обслуживания

В меню управления клиентами с оплатой по счету добавлена новая возможность. В списке возможных действий с аккаунтом клиента появилась новая кнопка. При ее нажатии открывается дополнительно всплывающее меню. Это меню позволяет вам установить дату, когда обслуживание выбранного клиента будет прекращено. Вид меню (плюс дополнительно открывающегося календаря для ввода произвольной даты) показан на рисунке ниже:

kassir_expiration_2

Меню отображает текущее установленное значение параметра, дает возможность сбросить установленную дату, а также позволяет выполнить установку даты окончания обслуживания клиента тремя способами:

  • Кнопка «Этот месяц» автоматически выставляет датой окончания обслуживания 1-е число следующего месяца.  Например, действие происходит 2 сенября 2012 года. При нажатии Кнопки «Этот месяц» в систему будет вписана дата 1 октября 2012 года, и как следствие, клиент сможет проработать весь «этот» месяц (сентябрь). А 1-го октября 2012 года в 00 часов 00 минут обслуживание клиента будет прекращено, и он не сможет войти в интернет.
  • Кнопка «След. месяц» автоматически выставляет датой окончания обслуживания 1-е число месяца через один от текущего.  Например, действие происходит 30 сенября 2012 года. При нажатии Кнопки «След. месяц» в систему будет вписана дата 1 ноября 2012 года, и как следствие, клиент сможет проработать весь «следующий» месяц (октябрь). А 1-го ноября 2012 года в 00 часов 00 минут обслуживание клиента будет прекращено, и он не сможет войти в интернет.
  • Кнопка «Выбрать дату» вызывает дополнительное меню — календарь. В этом меню вы можете выбрать произвольную дату, когда обслуживание клиента будет прекращено. После того, как вы выберете дату, и она появится в поле справа от надписи «Произв. дата», вам нужно нажать кнопку «Установить». Только  после этого выбранное значение даты будет вписано в базу программы. ВАЖНО: учтите что устанавливаемая вами дата — это дата, когда в 00 часов 00 минут обслуживание клиента прекратится. То есть, если вы устанавливаете 12 сентября 2012 года, то клиент сможет войти в интернет по 11 сентября 2012 года включительно, а вот 12 сентября, начиная с 00 часов 00 минут, — уже не сможет!

Клиент при авторизации, если истек срок его обслуживания, получает вот такое сообщение:
login_page_expiration

«Привязка» к хотспоту:

Теперь программа позволяет «привязать» клиента к конкретному хотспоту.

Для Клиентов с оплатой по счету эта процедура осуществляется с помощью специального меню. Меню выглядит следующим образом:

kassir_nasid_menu

Вызывается меню щелчком по иконке «глобуса» в списке клиентов. Чтобы указать идентификатор хотспота, к которому будет «привязан» клиент, нужно ввести его ID в поле для ввода и нажать кнопку «Установить». Если же, вы хотите, чтобы клиент, ранее «привязанный» к хотспоту, смог снова обслуживаться любым хотспотом, то в таком случае, в меню нужно нажать кнопку «Удалить».

Для «ваучерных» клиентов персональной привязки к хотспоту НЕТ! К хотспоту может быть «привязан» только Тарифный пакет! В итоге все ваучеры, созданные на основании такого Тарифного пакета, будут «привязаны» к конкретному хотспоту. Идентификатор хотспота указывается непосредственно во время создания Администратором нового Тарифного пакета:

admin_new_tarif_nasid_field

При этом, если «ID-хотспота» не указан (поле оставлено пустым), ваучеры, созданные на основе такого Тарифного пакета, будут обслуживаться ЛЮБЫМИ хотспотами. Если же идентификатор указать, то ваучеры будут проходить авторизацию только на тех хотспотах, у которых установлен точно такой же ID.

Редактирование Тарифных пакетов:

Наконец-то в программе появилась возможность редактирования уже существующих Тарифных пакетов! В списке Тарифных пакетов добавлена кнопочка, при щелчке по которой появляется вот такое меню:

admin_edit_tarif_menu

Думаю, дополнительные разъяснения по самой процедуре редактирования излишни. Чтобы измененные параметры были сохранены в базе,  по окончании редактирования достаточно щелкнуть кнопку «Установить».

Изменения внешнего вида меню (стиля CSS + добавление новых столбцов)

Всвязи с добавлением новых параметров в списках, отображающих Клиентов с оплатой по счету (у Кассира) и Тарифные пакеты (у Администратора), были добавлены новые колонки. Это повлекло за собой дополнительное расширение самих таблиц, в результате они  начали «вылазить за границы». По этому, в таблице стилей (CSS) был изменен параметр, определяющий ширину самого меню. Теперь она равна 1100 пикселей. Как следствие, страница теперь вылазит за границы, если вы используете монитор с разрешением по горизонтали 1024 пикселя и ниже, но кто их такие теперь использует?.

Внешний вид измененного меню Тарифных пакетов:

admin_new_tarif_menu

Внешний вид меню Клиентов с оплатой по счету:

kassir_new_clients_menu

Просмотреть все эти изменения в действии можно на сайте демо-версии модифицированной программы Easyhotspot (логин/пароль Кассира: vcool/vcool123, логин/пароль Администратора: admin/admin123)

На всякий случай, напоминаю, что все эти изменения относятся именно к модифицированной версии программы Easyhotspot, которую можно приобрести на странице онлайн-продажи.


Продолжения:

Новости Easyhotspot — май 2013

Обновления Easyhotspot, июль 2012

Модифицированная версия программы Easyhotspot является билинговой программой для управления хотспотом или сетью хотспотов. Благодаря дополнительным модулям: приема платежей по СМС и приема платежей с банковских пластиковых карт, программа предоставляет возможность полностью автоматического обслуживания клиентов хотспота.

Подробнее прочесть о модифицированной версии программы Easyhotspot можно вот в этой заметке: «Простой биллинг с веб интерфейсом — Easyhotspot«.

С момента прошлого анонса обновлений были выполнены следующие действия:

Вебинтерфейс программы:

  • Веб-интерфейс программы теперь может отображаться на одном из двух языков — русском или английском (по вашему выбору). Смена языка интерфейса осуществляется изменением единственного параметра в файле настроек программы. Пример английского интерфейса можно посмотреть по ссылке.
  • В списке ваучеров в меню Кассира добавлена popup-подсказка, в которой выводится дата и время активации ваучера. Чтобы ее увидеть, нужно навести курсор мыши на логин выбранного ваучера. Такая же popup-подсказка добавлена и на страницу результатов поиска. Увы, но эта подсказка не отображается в браузере Opera (в остальных наиболее популярных — IE, Firefox, Chrome подсказка присутствует).
Рис. 1 - Английский интерфейс программы + popup-подсказка с датой и временем активации ваучера
Рис. 1 — Английский интерфейс программы + popup-подсказка с датой и временем активации ваучера

Страница авторизации:

  • Все настройки страницы авторизации перенесены в один файл — conf.txt. В файле в виде коментариев добавлено краткое описание каждого параметра. Пример файла доступен по ссылке.
  • Добавлена возможность отключения popup-окна, открывающегося после авторизации клиента (облегчает авторизацию всевозможных смартфонов и прочих гаджетов активно подавляющих popup-окна).
  • Добавлена функция проверки наличия интернета до авторизации клиента (ping выбранного сайта). Если  ping завершен неудачно, клиенту выводится не форма для ввода логина/пароля (и/или гостевого входа), а информация о том, что в данное время обслуживание не возможно.
  • Добавлен режим обслуживания — «Доступ в интернет после просмотра рекламы». При этом основное поле страницы может быть занято вашим собственным произвольным макетом, а кнопка входа в интернет появляется в виде небольшого html-блока, возникающего поверх страницы с рекламой по прошествии некоторой паузы. Длительность паузы также устанавливается вами в файле настроек.

Инсталятор:

  • Инсталятор теперь позволяет установить Easyhotspot не только на дистрибутив Ubuntu (будь-то 10.04 или 12.04), но и на дистрибутив Debian 6.0.x!
  • Небольшие модернизации в скрипте для установки на Ubuntu 12.04 LTS.
  • В инсталятор добавлен вопрос о том, какой язык установить для веб-интерфейса программы Easyhotspot — английский или русский.
  • В инсталятор добавлена проверка архитектуры использованного дистрибутива. Если установлен дистрибутив с 32-битной версией ОС, установка происходит без проблем. Если же установлена 64-битная версия ОС, и при этом выбран вариант установки такой, при котором контроллер доступа  Chillispot  должен будет работать непосредственно на сервере, установка прекращается. Пользователю выводится сообщение о невозможности установить систему на 64-битную версию ОС Linux. Это связано с тем, что контроллер доступа Chillispot  НЕ РАБОТАЕТ на 64-битных версиях ОС!

Документация:

 


Продолжения:

Новости модифицированной версии Easyhotspot, ноябрь 2012

Новости Easyhotspot — май 2013

Исправления и обновления в модифицированной версии Easyhotspot на 31 января 2012

Модифицированная версия программы Easyhotspot является билинговой программой для управления хотспотом или сетью хотспотов. Благодаря дополнительным модулям: приема платежей по СМС и приема платежей с банковских пластиковых карт, программа предоставляет возможность полностью автоматического обслуживания клиентов хотспота.

Подробнее прочесть о модифицированной версии программы Easyhotspot можно вот в этой заметке: «Простой биллинг с веб интерфейсом — Easyhotspot«.

С момента прошлого анонса обновлений были выполнены следующие действия:

Исправлены следующие две ошибки:

  • Если в меню администратора, в списке выписанных счетов, выполнить поиск, то результат запроса вываливался уже в меню кассира.
  • После редактирования уже существующего клиента с оплатой по счету и сохранения изменений в базу, у клиента полностью пропадала возможность авторизоваться (подключиться к интернету).

Также выполнены следующие обновления:

  • Ранее функция принудительного отключения в программе корректно работала только в том случае, если клиенты подключались к интернету непосредственно через сам сервер хотспота (chillispot был запущен на том же самом компьютере, что и Easyhotspot). Если же система строилась по схеме: «отдельный сервер биллинга» + роутеры с chillispot внутри них» (как описано в заметке «Организация нескольких хотспотов«), то в таком случае функция принудительного отключения не работала. Теперь функция принудительного отключения корректно отключает любых пользователей, подключенных к любым NAS (контроллерам доступа). Успешно отключаются пользователи, подключенные к внешним роутерам с chillispot-ом внутри них, имеющим самые разные IP-адреса. Также, функция корректно работает и в том случае, когда chillispot используется на самом сервере. То есть, теперь допускается смешивание – когда одновременно используется и chillispot на самом сервере, и внешние роутеры с chillispot-ом вшитым в них.
  • Оформление страницы авторизации вынесено в файлы CSS, причем, происходит их смена в зависимости от разрешения экрана клиентского устройства (компьютера, планшета, мобилки и т.д.). Это позволит вам при желании максимально просто сменить внешний вид страницы авторизации.
  • У страницы авторизации реализована возможность максимально простого отключения поля для парольного входа. То есть, на странице в таком случае остается только кнопка «Гостевого входа». Данная возможность полезна, если вы планируете в своем хотспоте  использовать только бесплатный гостевой вход, и поля для ввода логина и пароля вам не нужны.
  • Переведены на русский язык надписи на кнопках «Вход» и «Гостевой вход». Теперь они могут быть на любом языке, кирилическими или латинскими — не важно.
  • Написан дополнительный скрипт, предоставляющий возможность импорта в базу программы Easyhotspot уже готового списка клиентов из XML-файла.
  • В форме создания Тарифных пакетов (в меню Администратора) реализована проверка значений, вводимых в поля. Проверка не дает теперь ввести наименование Тарифного пакета кроме как латиницей, а в поля, в которых должны быть цифры — не дает вводить что-либо иное. При вводе неверного значения программа выводит информационное сообщение, и также у поля с неверным значением фон меняется с белого на красный.
  • Добавлена индикация номера ваучера, что значительно упрощает их учет. Теперь на каждом ваучере печатается его порядковый номер. Как это выглядит, можно увидеть на показаном ниже рисунке (для наглядности нарисунке номер ваучера дополнительно выделен красной рамкой, которой в реалии не будет). Также, отредактирована и сама функция поиска ваучеров в программе Easyhotspot в меню кассира, что позволяет теперь искать ваучеры не только по логину, но и по их порядковому номеру тоже.
Рис. 1 — Ваучер с порядковым номером

 

Просмотреть все изменения и дополнения, выполненные в программе Easyhotspot, вы можете в соответствующей теме на форуме.


Продолжения:

Обновления модифицированной версии Easyhotspot на 1 июня 2012

Обновления Easyhotspot, июль 2012

Новости модифицированной версии Easyhotspot, ноябрь 2012

Новости Easyhotspot — май 2013

Организация нескольких хотспотов

Один из вопросов, который мне часто задают в переписке — как правильно организовать несколько хотспотов (зон). Собственно, авторами этого вопроса чаще всего являются люди, заинтересовавшиеся предлагаемой мною модифицированной версией программы Easyhotspot. Напомню, что в варианте, который устанавливается моим инсталятором, структура взаимодействия модулей выглядит так, как описано в заметке «Хотспот и с чем его едят». При этом, роль контроллера доступа (NAS — Network Access Server) выполняет программа Chillispot. И если она запущена непосредственно на самом сервере, то у сервера должны быть две сетевые платы, к одной из которых подключены клиенты, а к другой — интернет. В этом случае все выглядит так, как показано ниже в варианте №1.

Должен сразу оговориться — тут и далее будут рассматриваться только случаи, когда точек доступа используется несколько (либо несколько зон, либо одна большая зона).

Вариант № 1

Взглянем на рисунок:

Рис. 1 - Сервер хотспота является одновременно и контроллером доступа

На рисунке рассмотрен случай, когда Chillispot запущен непосредственно на сервере, и весь трафик клиентов идет непосредственно через сервер хотспота.

Еще одно небольшое отступление — как показано на рисунке (шриховыми линиями), сам сервер может подключаться к интернету как непосредственно (первый способ), так и через модем либо маршрутизатор и т.п. (второй способ). Данное подключение в свете рассматриваемого вопроса особого значения не имеет, и в этой заметке рассматриваться не будет. 

Нас же по прежнему интересует подключение нескольких точек. Есть правило, которое, увы, нам нельзя нарушить: контроллер доступа Chilllispot ДОЛЖЕН работать с клиентскими компьютерами только НАПРЯМУЮ. То есть, между выходом Chillispot, и компьютерами клиентов хотспота НЕ ДОЛЖНО быть никакого оборудования, использующего функции, либо манипулирующие сетевыми адресами, либо вставляющими куда не попадя свои собственные mac-адреса. То есть,

  • Функция NAT — заказана!
  • Подключения по wi-fi типа repeater (повторитель) или client (клиент) — заказаны!

Их использовать НЕЛЬЗЯ! И если вы хотите чтобы точек доступа было много, то в таком случае к выходу сервера вы должны просто подключить тупой свитч, а к его выходам — тупые точки доступа. И никак иначе! В противном случае могут возникать даже такие «странные» ситуации, когда компьютер клиента хотспота IP-адрес от Chillispot получать БУДЕТ, но авторизоваться клиент все-равно НЕ СМОЖЕТ. Если в таком случае попытаться просмотреть логи системы, то можно увидить, что в процессе авторизации будут участвовать mac-адреса «транзитного» оборудования, а вовсе не клиентского компьютера. И как результат — отсутствие (полное) страницы авторизации. А что же делать, если все-таки необходимо использовать например wi-fi канал для прохождения какого-то участка и т.п. При такой организации сети единственный приемлемый вариант — это использование WDS. То есть, на «транзитном куске» устанавливаются две точки wi-fi, настроенные в режиме WDS, и как следствие, представляющие собой «виртуальный кусок Ethernrt-кабеля в отсутствие самого кабеля». Но что делать, если такой вариант неприемлем?

Или, что делать, если хочется организовать несколько хотспотов?

Описанный в заметке сервер хотспота в своей работе использует взаимодействие различных служб (серверов), образующих некую модульную структуру. И как уже было сказано в другой заметке, эти службы не обязательно должны располагаться на одном компьютере. Более того, некоторых служб может быть, скажем так, «больше чем одна». О чем это я? Еще раз посмотрим на рис. 2 в статье про взаимодействие служб хотспота. Как видно на рисунке – между клиентами и интернетом находится лишь один сервер (служба) – контроллер доступа Chillispot. А теперь давайте все остальные службы, показанные на этом рисунке,  условно объединим «в одно целое» и назовем его «сервером биллинга». Что нам это дает? Лишь одно – ответ на вопрос «А как сделать несколько хотспотов с единым управлением?». То есть, чтобы реализовать такую схему, достаточно поставить лишь один единственный такой «сервер биллинга», а в местах предполагаемых хотспотов установить только лишь контроллеры доступа Chillispot, и настроить их на взаимодействие с RADIUS-ом «сервера биллинга». Причем, территориально «сервер биллинга» и эти т.н. «контроллеры» могут быть разнесены между собой хоть и по всему миру!

Итак, смотрим второй вариант…

Вариант №2

Вашему вниманию предлагается следующий рисунок:

Рис №2 - Chillispot перенесен в маршрутизаторы

Как видно из рисунка, отличия заключаются в том, что

  • клиентов обслуживают уже не точки доступа, а маршрутизаторы;
  • эти маршрутизаторы подключаются не к серверу хотспота (напрямую или через свитч), а к тому модему (или маршрутизатору), который организует доступ в интернет для всей сети организации.

Чтобы сохранить функцию хотспота, в таком случае контроллер доступа Chillispot  переносится непосредственно в сами маршрутизаторы. Для этого маршрутизаторы, организующие зоны хотспота, прошиваются альтернативными прошивками, в которых встроен Chillispot (примером могут служить прошивки от dd-wrt, в которых Chillispot уже встроен, либо прошивки от open-wrt, где по умолчанию Chillispot  отсутствует, но может быть добавлен при помощи механизма т.н. optware-пакетов). Пример перепрошивки маршрутизатора рассмотрен мной в заметке «Прошивка роутера D’link DIR-320 под хотспот» ранее.

Сам сервер хотспота при этом выполняет только лишь функции биллинга и сервера RADIUS. При таком построении, доступ в интернет клиентам предоставляют непосредственно сами (перепрошитые) маршрутизаторы. А чтобы знать кого в интернет пускать, а кого не пускать, chillispot из прошивок маршрутизаторов настраивается таким образом, что он взаимодействует с сервером RADIUS, запущеном на сервере хотспота (биллинга).

Дополнительной особенностью данной схемы является еще и тот факт, что трафик клиентов не проходит сквозь сам сервер хотспота, что снижает требования к его производительности (т.к. Chillispot  — это програмный контроллер доступа, и его пропускная способность зависит от быстродействия компьютера).

Ну и напоследок вариант №3

Вариант №з

При просмотре второго рисунка у вас не возникало вопроса — а что там делает устройство подписанное как «Модем или маршрутизатор»? Ведь обслуживающие клиентов устройства — тоже маршрутизаторы. То есть, они сами в состоянии выполнять авторизацию у провайдеров, и как следствие, сами могут подключаться к интернету. То есть, выкидываем дополнительный «модем или маршрутизатор» и получаем рисунок №3 — своеобразный «частный случай» рисунка №2, при котором маршрутизаторы подключены к интернету напрямую.

Рис. № 3 - Маршрутизаторы связаны с сервером хотспота через интернет

И сам сервер хотспота, на котором работает RADIUS и биллинг — тоже находится «где-то там» (в интернете). При этом chillispot  снова трудится на маршрутизаторах, и снова запрашивает данные по авторизации у RADIUS-а. Результат — тот же самый, что и в варианте №2, но на одну «железяку» стало меньше… Но даже не это главное достоинство! В этом случае «сервер биллинга» и роутеры хотспотов территориально могут быть разнесены между собой хоть и по всему миру! То есть, ставим сервер биллинга на какой-нибудь VDS-сервер, а потом просто расставляем в нужных местах роутеры и получаем хотспоты!!!…

Процедура оплаты доступа кредитной картой

Модуль приема оплат по кредитным картам позволяет модифицированной версии программы Easyhotspot обслуживать клиентов методом «самообслуживания». При этом клиент самостоятельно оплачивает доступ и получает учетные данные (логин и пароль).

Процедура оплаты клиентом доступа в интернет с помощью кредитной карты выглядит следующим образом (важно — с момента написания данной страницы модуль претерпел ряд изменений, актуальная его версия описана на этой странице).

При подключении к хотспоту клиенту выводится страница авторизации. На ней, если подключен модуль приема платежей по кредитным картам, присутсвует соответствующая иконка (рисунок кредитных карт), при наведении на которую появляется всплывающее собщение «Pay by Credit Card / Оплатить кредитной картой».

Рис. 1 - Страница авторизации с иконкой оплаты кредитной картой.
Рис. 1 — Страница авторизации с иконкой оплаты кредитной картой.

После того, как клиент щелкнет эту иконку, ему открывается страница со списком тарифов (для каждого из них выводится список параметров доступа в интернет, а также цена):

Рис. 2 — Список тарифов, которые можно оплатить кредитной картой

Клиент выбирает с какими характеристиками получит доступ, и нажимает кнопку «Оплатить» сбоку от выбранного тарифа.

После этого клиент попадает на сайт банка (с целью защиты от мошенничества все платежные процедуры выполняются на сервере банка). Первым делом ему предлагается подтвердить, что он действительно собрался оплатить этот заказ, а не попал сюда случайно:

Рис. 3 — Окно подтверждения согласия клиента с оплатой

После того как клиент подтвердил согласие на оплату, ему предоставляется страница, на которой он должен ввести номер своего мобильного телефона:

Рис 4. Ввод номера мобильного телефона

Это — еще один из методов защиты. После того, как клиент вводит свой номер мобильного телефона и нажимает кнопку «Подтвердить», ему на телефон приходит СМС с паролем, а в окне браузера открывается страница, в которой он должен ввести только что полученный пароль:

Рис. 5 — Ввод пароля, полученного в СМС на мобильный телефон

После того, как полученный пароль введен, открывается следующая страница, на которй клиент уже непосредственно воодит реквизиты своей кредитной карты:

Рис. 6 — Выбор метода оплаты и ввод данных кредитной карты

На этой странице клиент во первых может выбрать режим оплаты — со счета Liqpay или с кредитной карты. Этот выбор осуществляется в выпадающем списке (а), показаном на рисунке 6. ВНИМАНИЕ! Этот выбор может либо предоставляться, либо нет! Это определяется настройками самого модуля приема оплат. То есть, вы сами в настройках вашего модуля указываете, какие способы использовать — один (liqpay), другой (кредитные карты), или оба сразу.

В случае, если используется оплата именно с кредитной карты, клиентв вводит данные карты в соответствующие поля (б) и нажимает кнопку «Оплатить» (в).

Появляется окно с анимированной полосой показывающей прогресс оплаты:

Рис. 7 — «Анимашка», покакзывающая как тяжело трудится сервер банка…

После того, как банк проведет оплату, клиенту выводится подтверждение:

Рис. 8 — Подтверждение: платеж выполнен

На этой странице клиент должен нажать кнопку «В магазин». После чего клиент возвращается на страницу нашего сервера, где ему предоставляются логин и пароль для доступа в интернет:

Рис. 9 — Страница, на которой клиенту выводятся купленные им логин и пароль

Полная инструкция, идущая в комплекте к модулю, в которой описаны прцедуры работы модуля, установки модуля, и настройки модуля, доступна по ссылке:

Инструкция к модулю

С учетом того, что и сам модуль, и интерфейс самой платежной системы Liqpay меняются, наиболее полное представление о работе модуля можно получить, если пройти процедуру оплаты самому. С этой целью на моем сайте установлен модуль, и у него включен «тестовый» режим, при котором все происходит как обычно, за исключением того, что реально деньги с карты не снимаются. При желании вы можете провести тестовую оплату на странице по приведенной ниже ссылке:

Страница модуля

Для полной уверенности в том, что ваши средства при выполнении тестового платежа не пострадают, указывайте данные специальной тестовой карты, приведенные ниже:

Номер карты: 4111 1111 1111 1111

Срок действия карты: 12/20

Код CVV: 123

Также, к программе Easyhotspot предлагаются модули и для других платежных систем, такие как:

Приобрести модифицированную версию программы Easyhotspot, модуль приема оплат по кредитным картам для Easyhotspot, а также модуль для приема платежей по СМС для Easyhotspot можно онлайн на странице интернет-магазина, либо обратившись ко мне по контактным данным, указанным на странице «Обо мне».

Последние новости модифицированной версии Easyhotspot

  1. Теперь — и под PHP 5.3.0!
  2. Инсталятор — под Ubuntu 10.04 LTS
  3. Унифицированная страница авторизации
  4. Дополнительный модуль — прием платежей с кредитных карт!

Последние пару месяцев «пошли на пользу» модифицированной версии программы Easyhotspot. И данная заметка — способ быстро донести до вас все последние новости. Кстати, еще одна новость не попала в данную заметку, так как была опубликована мной в блоге самостоятельно: для программы Easyhotspot был написан дополнительный модуль приема платежей по СМС. Итак, приступим по порядку…

1. Теперь — и под PHP 5.3.0!

В коде Easyhotspot были убраны все функции, отмененные в PHP версии 5.3.0 и выше. В итоге — программа Easyhotspot теперь нормально работает на компьютерах, у которых сервер PHP установлен версий 5.3.0 и выше. В первую очередь, это избавило от необходимости использовать в качестве базовой ОС устаревшую версию Ubuntu 9.04. И как следствие — новость №2:

2. Инсталятор — под Ubuntu 10.04 LTS

Скрипт-инсталятор модифицированной версии Easyhotspot был изменен. Теперь в качестве базовой ОС используется Ubuntu 10.04 LTS, при попытке установки скриптом на других дистрибутивах и версиях Linux скрипт выдает сообщение об ошибке и прекращает работу. Тем не менее, «ручная» установка программы возможна на любой, предпочитаемый вами дистрибутив *nix.

Выбор LTS (Long Term Support) версии дистрибутива обусловлен тем, что Canonical его дольше поддерживает, не так часто меняет, да и пакеты в него попадают не «с пылу с жару», а уже продемонстрировавшие «некоторую стабильность»…

3. Унифицированная страница авторизации

Добавление различных дополнительных платежных систем (модулей) привело к появлению некоторого количества различных страниц авторизации. Как следствие — привело к излишним неудобствам — нужно было помнить «что, где, когда и почем». По этому, была написана новая версия страницы авторизации. Она теперь универсальная, а ее отображаемые элементы зависят от того, какие модули задействованы.

Базовый вид страницы не изменился:

Рис. 1 — Станица авторизации, у которой не задействованы дополнительные модули

При использовании режима бесплатного ограниченного входа (т.н. «Демо-логин») у страницы появляется дополнительное поле — в нижней половине перечислены лимиты «бесплатного входа» и расположена кнопка для бесплатного доступа в интернет:

Рис. 2 — Страница авторизации с поддержкой бесплатного входа

Если бесплатный вход не используется, но подключен, например, модуль приема платежей по СМС, то страница авторизации выглядит следующим образом:

Рис. 3 — Станица авторизации, у которой задействован модуль оплат по СМС

При этом, иконка  «СМС» является ссылкой, которая открывает клиенту хотспота страницу с информацией о том, какой текст посылать на какие короткие номера, и какие при этом будут параметры доступа в интернет. Примерный вид этой страницы — такой (Внимание! Показанные на странице номера и коды — недействительные, приведены для примера) .

Если же будут задействованы два модуля приема оплат — и по СМС и с кредитных карт, то и иконок на странице тоже будет две (как показано на рис. 5 ниже, но только без «подвала» про «Демо-доступ».

А вот так страница авторизации выглядит, если задействованы режим «Демо-входа» и модуль приема платежей с кредитных карт:

Рис. 4 — Страница авторизации с «Демо-логином» и приемом платежей с кредитных карт.

При этом иконка кредитки — тоже ссылка, переводящая клиента на вот такую страницу оплаты доступа в интернет кредитной картой. Дополнительно обращаю ваше внимание на тот факт, что показанная вам страница приема платежей с кредитных карт — реально действующая.

Ну и напоследок — страница авторизации, у которой включены: «Демо-логин», прием платежей по СМС и прием платежей с кредитных карт:

Рис. 5 — Страница авторизации со всеми включенными модулями

4. Дополнительный модуль — прием платежей с кредитных карт!

Написан новый дополнительный модуль приема платежей с кредитных карт. Как вы уже поняли благодаря показанным выше скриншотам, клиенту на страницу авторизации выводится иконка — рисунок кредитных карт. У этого рисунка присутствует всплывающая подсказка — когда клиент наводит на него мышкой, появляется подпись «Оплатить с помощью кредитной карты». Щелкнув по иконке, клиент  попадает на вот такую страницу оплаты доступа в интернет кредитной картой. (Дополнительно обращаю ваше внимание на тот факт, что показанная вам страница приема платежей с кредитных карт — реально действующая). Выполнить оплату клиент может сразу же (онлайн), для чего в хотспоте настраивается доступ к API приема платежей банком. Оплатив доступ, клиент попадает на страницу с выданными ему логином и паролем. Введя полученные значения в поля страницы авторизации, клиент получает доступ в интернет. Подробнее процедура оплаты кредиткой описана на этой странице.

Как уже было сказано, страница приема платежей, открывающаяся по этой ссылке — действующая. Самый верхний тариф на ней — 5 копеек. Желающие увидеть, как клиент будет оплачитвать доступ и получать учетные данные, могут (если конечно не жалко 5 копеек) нажать кнопку «Оплатить» и воспользоваться своей кредитной картой 🙂 …


Продолжения:

Исправления и обновления в модифицированной версии Easyhotspot на 31 января 2012

Обновления модифицированной версии Easyhotspot на 1 июня 2012

Обновления Easyhotspot, июль 2012

Новости модифицированной версии Easyhotspot, ноябрь 2012

Новости Easyhotspot — май 2013


PS. Почитать о самой модифицированной версии программы Easyhotspot можно по ссылке:

/wp/2011/05/prostoj-billing-s-veb-interfejsom-easyhotspot/


PPS. Дополнительный сайт только про Easyhotspot — https://wifi-hotspot.zp.ua/ и новости на нем.

Wi-Fi за SMS

Возможность автоматизации процесса обслуживаения клиентов — это круто! Судите сами:

  • Не нужен кассир! А нет кассира — нет зарплаты, нет отчислений в пенсфонд и соцстрах, нет налогообложения наемных работников и т.д. и т.п.
  • Не нужна касса! А нет кассы — нет нужды в строительстве или поиске помещения, которое «и танком не возьмешь», нет постоянно растущей арендной платы, нет уборщицы, гоняющейся за всеми со шваброй, нет регулярных посещений всевозможных пожарных и прочих «проверяюще-доящих» инспекторов, и т.д. и т.п.

Одним словом — налицо бесспорная и весьма существенная экономия! Но как же тогда быть с клиентами? Кто же будет с них деньги брать? Именно для этого к модифицированной версии программы Easyhotspot предлагаются дополнительные платежные модули!

Описанный ниже платежный модуль позволяет хотспоту, построенному с использованием модифицированной версии программы Easyhotspot, реализовать обслуживание клиентов с помощью СМС («с помощью т.н. «коротких номеров»).

Данный модуль позволяет вам реализовать обслуживание клиентов вашего хотспота, взымая с них плату за доступ в интернет с помощью СМС. Обслуживание происходит по следующему алгоритму. При установке модуля на компьютер во первых, меняется страница авторизации клиентов. На страницу добавляется дополнительная кнопка «Купить«, при нажатии которой открывается список доступных платежных систем, включая вариант «Короткие номера (СМС)«. Внешний вид меню с включенным модулем приема платежей по СМС показан на рисунке:

Auth_page_payment_system_list

Дополнительно на сервере размещается страница с информацией вида «Отправь SMS с текстом ХХХ на номер ХХХХ и получишь доступ в интернет с такими-то лимитами». Пример такой страницы вы можете посмотреть по ссылке (обращаю ваше внимание, что на странице для примера приведена абстрактная информация, по этому реально отправлять смс-ки на указанные там номера бесполезно!):

демо страница модуля

В итоге, когда клиент определится с выбором, и отправит СМС с указанным текстом на указанный номер, то в ответ он получит СМС, в котором будут указаны логин и пароль. Одновременно с этим, модуль приема оплаты автоматически генерирует ваучер с  такими же самыми логином и паролем и вписывает его в базу программы Easyhotspot, в результате чего клиент получает возможность доступа в интернет по присланным ему данным.

После того, как клиент на показанной выше странице авторизации вводит присланные ему логин и пароль, он получает доступ в интернет.

Для того, чтобы иметь возможность снимать деньги со счетов мобильных телефонов клиентов, и иметь возможность беспрепятственно и мгновенно отсылать им ответные СМС с логинами/паролями, вся работа осуществляется через так называемых «СМС агрегаторов».

Немного организационной информации вперемешку с технической. При регистрации у агрегатора вы получаете себе свой собственный т.н. «префикс». Фактически, именно он (префикс) является идентификатором того, что отправляемая клиентом СМС – ваша. Кроме того, у агрегатора обычно существует широкий выбор коротких номеров с различной для клиента ценой, иными словами — когда клиент отсылает СМС на разные короткие номера, с него снимаются разные суммы денег. В итоге, использование некоторого числа различных коротких номеров, а при желании, и нескольких различных префиксов, позволит вам предоставить клиенту на выбор несколько Тарифных пакетов с разными параметрами доступа в интернет, любой из которых он сможет оплатить с помощью СМС. То есть, допустим, вы зарегистрировали себе префикс А12, и выбрали короткие номера 1234 и 4321. Допустим, СМС на номер 1234 будет стоить  клиенту 2 доллара, а СМС на номер 4321 – 5 долларов. И допустим, вы согласны предоставить клиенту за эти 2 доллара 10 минут, а за 5 долларов – 30 минут доступа в интернет (все приведенные выше цифры – абстрактны, «взяты с потолка» и приведены просто для примера). В итоге, вам нужно в программе Easyhotspot создать два новых Тарифных пакета с выбранными вами лимитами. Допустим, вы создали следующие Тарифные пакеты: «SMS_10_minut» с лимитом 10 минут и «SMS_30_minut» с лимитом 30 минут. В итоге, вам нужно настроить скрипт таким образом, что SMS с префиксом А12, полученному на короткий номер 1234, соответствует Тарифный пакет «SMS_10_minut», а SMS с префиксом А12, поступившему на номер 4321 – Тарифный пакет «SMS_30_minut». В итоге, клиент, отправляя СМС на разные номера, будет получить имя и пароль для разных Тарифных пакетов, и как следствие, с разными лимитами доступа. И естественно, что за СМС, отправленные на разные короткие номера, агрегатор со счета клиента будет снимать в вашу пользу разные суммы денег. На данном этапе скрипт поддерживает до 4 (четырех) различных Тарифных пакетов. При этом, каждому Тарифному пакету может быть сопоставлено несколько разных коротких номеров, и только один префикс.

Все параметры модуля настраиваются в специальном меню программы Easyhotspot, добавленном в программу именно с этой целью:

Admin_sms_agregator_module_config

Результаты работы модуля в виде списка обслуженных заказов также можно просмотреть в программе Easyhotspot:

admin_sms_agregator_module_list

Модуль выводит в виде таблицы список обработанных заказов. Если число заказов не умещается на одну страницу, выводятся кнопки для постраничной навигации. Внизу страницы выводится два значения «Итого» — для записей, выведенных на текущей странице, и для всех записей.

На странице имеется поле для поиска желаемого заказа. Поиск производится по любому параметру из числа: номер телефона клиента, короткий номер, на который была отправлена СМС, дата, идентификатор (номер) заказа по базе данных агрегатора.

Также, для каждого заказа есть возможность просмотра информации о том, как клиент расходовал свой ваучер. При щелчке на имени пользователя в строке заказа выводится новое окно — список сеансов:

Kassir_view_client_sessions2

В этом меню в табличной форме выводится информация обо всех сеансах доступа в интернет данного клиента. Если сеансов много, и они не умещаются на одну страницу, выводятся кнопки для постраничной навигации. Под таблицей выводятся итоговые цифры — время, проведенное клиентом в интернете, объем принятых и отправленных данных, название Тарифа, его номинал (основной лимит) и данные о сроке годности — когда ваучер был активирован, и когда истечет его срок годности.

На данном этапе модуль поддерживает работу со следующими СМС-агрегаторами:

Модуль поставляется отдельно от модифицированной версии программы Easyhotspot. Модуль можно приобрести на странице онлайн-продажи:

Страница продажи модифицированной версии Easyhotspot

А какие альтернативы «коротким номерам» есть еще?

Альтернативой использованию услуг фирм-агрегаторов, отличающихся весьма низким процентом отчислений «в вашу пользу», может стать использование услуг т.н. «Мобильной коммерции». На данном этапе к программе Easyhotspot предлагаются два платежных модуля использующих именно «мобильную коммерцию»:

Модуль для обслуживания клиентов по СМС через услугу мобильной коммерции от ф. Неолайн

Модуль для обслуживания клиентов по СМС через услугу мобильной коммерции от ф. Mixplat

А можно ли авторизовать по СМС в соответствии с Постановлением Правительства РФ №758 ?

Да, для этих целей к программе Easyhotspot предлагаются два варианта обслуживания:

  1. «Чистая» авторизация по СМС (за отправку СМС платит Администрация хотспота);
  2. Активация по СМС купленного ваучера (клиент не сможет воспользоваться купленным ваучером, пока не пройдет процедуру идентификации по СМС)

Какие варианты платежных систем могут быть еще?

К программе Easyhotspot предлагается широкий выбор дополнительных платежных модулей, использующих самые различные платежные системы:

  • Liqpay (пластиковые карты и т.д.);
  • Assist (пластиковые карты и т.д.);
  • Qiwi (универсальный «платежный комбайн», широчайший выбор методов оплаты);
  • Robokassa (универсальный «платежный комбайн», широчайший выбор методов оплаты);
  • Onpay (универсальный «платежный комбайн», широчайший выбор методов оплаты);
  • «Единая касса / Wallet One» (универсальный «платежный комбайн», широчайший выбор методов оплаты);
  • Яндекс-касса (электронные кошельки, банковские карты, наличные);
  • Ipay (белорусская платежная система);

Комбинируя один или несколько платежных модулей, вы сможете предоставить клиентам ваших хотспотов максимально гибкое и удобное автоматизированное обслуживание услуг доступа в интернет !


Приобрести вышеперечисленные модули, равно как и саму модифицированную версию программы Easyhotspot можно онлайн, если перейти по ссылке:

Страница онлайн-продажи

Простой биллинг с веб интерфейсом — Easyhotspot

Вашему вниманию предлагается готовое интегрированное решение для организации своего собственного хотспота. Причем, «своего собственного» в том смысле, что именно вы будете решать «что, где, когда и почем»! У программы нет ограничений на число обслуживаемых клиентов, роутеров, тарифов и пр.! Не нужно «докупать лицензии на увеличившиеся число клиентов» либо платно «продлевать лицензию на пользование программой на (какой-то период)»!

Один из основных  способов обслуживания клиентов — с помощью продаваемых (или раздаваемых бесплатно) ваучеров.

Вторая функция программы — обслуживание «постоянных» клиентов, для которых биллинг подсчитывает время, проведенное ими в интернете, либо потребленный ими трафик, и затем формирует счета на основании этих данных. Об этом — см. ниже.

Третий способ обслуживания клиентов, предоставляемый программой, это режим «Гостевого доступа», при котором клиент хотспота сможет бесплатно выходить в интернет, просто нажав одну лишь кнопку на странице авторизации.  Никаких паролей для такого «гостевого» обслуживания сообщать клиенту не нужно! Всеми параметрами такого гостевого доступа (длительность, объем трафика, скорость, периодичность , и т.д.) — ВСЕМ ЭТИМ управляете непосредственно вы сами!

Ну и напоследок — программа предоставляет дополнительную разновидность гостевого доступа» — полностью автоматический допуск клиентов в интернет  после просмотра рекламы. Причем, клиент должен будет смотреть именно страницу с рекламой, а не переключившись на другое окно или приложение, ждать пока она закончится. В случае, если клиент переключается со страницы с рекламой на что-то другое, счетчик времени просмотра просто останавливается!

Также, программа позволяет предоставлять доступ в интернет после СМС-авторизации, как того требует российское законодательство! Модуль и записывает номера телефонов клиентов, и привязывает эти номера к mac-адресам оборудования клиентов, ив дальнейшем хранит эту информацию в архиве программы.

Дополнительные удобства в обслуживании клиентов предоставляют интегрируемые в Easyhotspot (приобретаются отдельно) автоматизированные платежные модули по приему оплаты с помощью СМС, оплаты с кредитных карт, оплаты через системы «мобильной коммерции», или же такие платежные системы как QIWI, Onpay, Robokassa, Assist, Яндекс-Касса, «Единый кошелек» , Paypal и пр. Все это позволит вам превратить ваш хотспот в истинный «автомат по продаже интернета»! Вам не нужен будет кассир, продающий ваучеры! Клиент сам подключится к хотспоту, сам произведет оплату в выбранной платежной системе, и в ответ получит от программы логин и пароль, чтобы ввести их на странице авторизации и получить доступ в интернет!!!

Система позволит вам абсолютно свободно управлять тарифами, ценами, лимитами и всеми прочими параметрами доступа в интернет ваших клиентов!

Система позволяет управлять как одним хотспотом, так и целой сетью, причем сеть эта может быть разнесена территориально. В качестве «внешних» хотспотов, обслуживаемых сервером, могут выступать роутеры Mikrotik (без каких-либо модернизаций), либо иные SOHO-роутеры, которые необходимо будет перепрошить прошивками либо DD-WRT, либо OPENWRT.

Приведенная в этой заметке информация — попытка кратко донести до вас основы того, как будет работать хотспот с использованием предлагаемого программного обеспечения. Подробнее вы можете прочесть все это постатейно, если перейдете по этой ссылке.

Система включает в себя сервер авторизации и учета RADIUS, страницу авторизации (контроллер доступа Chillispot) и биллинговую программу Easyhotspot. Система устанавливается на компьютер, работающий под управлением Linux, что с одной стороны, избавляет от необходимости покупки самой операционной системы, а с другой стороны повышает надежность и защищенность системы. Построение системы соответствует стандартам, устоявшимся в сфере предоставления услуг доступа в интернет, и было рассмотрено мной в заметке «Хотспот и с чем его едят». Кроме того, данная система может выступать в роли центрального сервера целой сети хотспотов. При этом, в непосредственных точках реализации достаточна установка одних лишь роутеров, настроенных на взаимодействие с центральным сервером. Такое построение позволит вам получить единый биллинг, обслуживающий ваших клиентов в самых различных заведениях (зданиях, зонах и т.п.). Последние нововведения программы позволяют привязывать клиентов к отдельным зонам, ограничивая их обслуживание указанной зоной и отказывая в обслуживании в иных зонах.

Непосредственное управление хотспотом осуществляет именно биллинговая программа. По этому, ниже я постараюсь вкратце изложить возможности и преимущества именно программы Easyhotspot, хотя фактически она – лишь «вершина айсберга» всей системы хотспота. Фактически, Easyhotspot является одним из наиболее простых и интуитивно понятных программных продуктов, предназначенных для управления не только именно беспроводным хотспотом, но и любой системой управления доступом в интернет, рассчитанной на работу с сервером RADIUS. Рассматриваемая тут модифицированная и переведенная на русский язык версия программы Easyhotspot в первую очередь отличается повышенной стабильностью работы, и отсутствием проблем, присущих ее исходному англоязычному оригиналу.

Easyhotspot является веб приложением, написанным на языке PHP. Благодаря этому, управление хотспотом происходит в браузере (любом), запущенном на компьютере под управлением любой ОС. Обеспечив доступ к программе из интернета, вы сможете управлять вашим хотспотом, находясь даже на море! Ввиду своей простоты программа является идеальным решением для организации услуги предоставления доступа в Интернет в публичных местах (Кафе, Гостиницы, Библиотеки, Аэропорты, Вокзалы и т.д.) – т. н. «HotSpot».

Программа Easyhotspot позволяет одновременно обслуживать две категории платных клиентов хотспота. Деление клиентов на категории осуществляется по способу оплаты ими услуги доступа в интернет. К первой группе относятся клиенты, которые сначала пользуются интернетом, а потом оплачивают выставленный вами счет (т.н. postpaid). Вторая группа – это клиенты, которые сначала оплачивают услугу доступа в интернет (покупают талоны-ваучеры), и лишь потом пользуются ей (т.н. prepaid).

Программа Easyhotspot позволяет учитывать как время, проведенное клиентом в интернете (в минутах), так и его трафик (объем данных в мегабайтах). Соответственно, для клиентов, оплачивающих по счету, вы можете назначить, что будет учитываться при оплате – минуты или мегабайты. И результирующий счет, полученный клиентом, будет сформирован простым умножением суммы либо минут, либо мегабайт, умноженных на соответствующий тариф. А для клиентов, покупающих ваучеры, вы можете указать т.н. «номинал» ваучера – число либо минут, либо мегабайт, после израсходования которых, клиент будет автоматически отключен от хотспота.

Программа Easyhotspot предоставляет вам абсолютную свободу в вопросах ценообразования на все предоставляемые вами услуги доступа в интернет – все расценки и тарифы вы назначаете сами! При этом нет никаких ограничений, и вы вольны назначать любые цены в пределах от нуля и до «потери сознания»! Также, в программе тарифы для клиентов с оплатой по счету (postpaid) никоим образом не связаны с ценами на ваучеры (prepaid) – эти два способа обслуживания двух различных категорий клиентов имеют абсолютно независимое ценообразование! Для категории клиентов с оплатой по счету (postpaid) вы назначаете стоимость одной минуты и одного мегабайта, и эти цены действуют только для этой категории клиентов! А для клиентов, покупающих талоны-ваучеры (prepaid), вы назначаете цену ваучера, и эта цена никоим образом не зависит от тарифов за минуту или мегабайт, установленных вами для категории postpaid и рассмотренных в предыдущем предложении!

Теперь рассмотрим, какие лимиты (ограничения) позволяет назначать программа Easyhotspot.

Номинал (ваучера) – это основной лимит ваучера; у клиентов с оплатой по счету такого параметра нет вовсе. Этот параметр определяет тот максимальный объем услуги доступа в интернет, после израсходования которого, клиент будет автоматически отключен от хотспота. Номинал ваучера может быть задан либо в минутах (то есть клиенту гарантируется некая продолжительность времени подключения к интернету), либо в Мегабайтах (клиенту гарантируется некий объем трафика). Этот лимит может быть израсходован клиентом за любое число сеансов – хоть за один, хоть за несколько. Как только выделенный лимит будет клиентом израсходован, хотспот автоматически отключит его от интернета.

Ограничение входящей скорости и Ограничение исходящей скорости – эти два параметра позволяют назначить ту максимальную скорость, с которой клиент хотспота будет соответственно получать данные из интернета и отправлять данные в интернет. Эти ограничения могут быть назначены как для ваучеров, так и для клиентов с оплатой по счету.

Таймаут – это не лимит, но тоже один из параметров, влияющих на подключение клиента к интернету. Этот параметр определяет время (в минутах), по истечении которого хотспот отключит клиента от интернета, если в течение этого времени клиент не проявлял активности (не было передачи/приема данных клиентом в/из интернета). Для ваучера вами может быть назначен произвольный таймаут. Для клиентов с оплатой по счету таймаут жестко прописан в программе и равен 3 минутам.

Срок годности ваучера – этот лимит, как видно из его названия, может быть назначен только для ваучеров. Позволяет «бороться» с «очень экономичными» клиентами – по истечении этого срока хотспот перестает пускать клиента в интернет, даже если тот так и не израсходовал свой лимит, отведенный ему номиналом ваучера. Параметр указывается в минутах/часах/сутках. Важным является то обстоятельство, что отсчет срока годности идет от момента активации ваучера (первого раза, когда клиент ввел в систему выданные ему на ваучере имя и пароль). Для примера, если у ваучера указать срок годности как 1 час, то в итоге мы получаем ваучер, который гарантированно становится недействительным по прошествии 1 часа с момента его активации, вне зависимости от того, сколько времени клиент реально провел в интернете!

ВНИМАНИЕ! При обслуживании клиентов по ваучерам ОЧЕНЬ ВАЖНО четко понимать различие между Номиналом ваучера и Сроком годности ваучера! Номинал (если он ограничивает именно время) ограничивает СУММАРНУЮ длительность ВСЕХ сеансов Клиента. Длительность пауз между сеансами при этом не имеет никакого значения. Например, номинал ваучера равен 60 минутам, а клиент пользуется интернетом ровно 2 минуты в день. В таком случае Номинал ваучера им будет израсходован за 30 дней. С другой стороны, Срок годности ваучера начинает отсчитываться с момента первой активации ваучера Клиентом. И при его подсчете не берется во внимание, пользовался клиент в это время интернетом все время беспрерывно, либо же между его сеансами были паузы. Рассмотрим тот же пример про ваучер, номинал которого равен 60 минутам, и клиента, который ежедневно использует только по 2 минуты. Но при этом мы дополнительно укажем, что Срок годности для этого ваучера равен 3 суткам. Допустим, Клиент активировал ваучер 3 сентября 2012 года в 12:00. В результате лимита, наложенного именно Сроком годности, начиная с 6 сентября 2012 года 12:00 этот Клиент уже больше не сможет авторизоваться и получить доступ в интернет. Если в этот момент Клиент был подключен к интернету, то хотспот отключит его. И, хотя, в данном случае Клиент (с учетом его «экономного» пользования интернетом) израсходовал всего лишь 6 минут из отведенных Номиналом 60-ти, доступ в интернет по данному ваучеру будет более не возможен, так как истек его Срок годности.

Число одновременных логинов – этот лимит указывает, какое количество клиентов может быть подключено к хотспоту с одними и теми же логином и паролем. Для ваучеров это число в программе изначально установлено равным единице (может быть изменено администрацией хотспота). То есть, по одному ваучеру несколько человек одновременно ходить в интернет не смогут никак – только один! Для клиентов с оплатой по счету это число может быть произвольным, и назначается вами. Это сделано на тот случай, если клиенту понадобится подключать в интернет несколько устройств одновременно, например, ноутбук, смартфон и планшет, и т.д.

График обслуживания – этот лимит позволяет вам создавать такие Тарифные пакеты, ваучеры(*) которых будут обслуживаться не «все 24 часа в сутки все семь дней в неделю», а по какому-то особому, составленному вами графику.  В графике указываются: день недели плюс время старта и время окончания периода, когда клиенту позволен доступ в интернет. Вы вольны составить самый «витиеватый» график, комбинируя дни и время старта/стопа, добавляя любое необходимое их количество. В остальное время клиенту будет отказано в авторизации и в доступе в интернет.

Дата окончания обслуживания – этот лимит позволяет вам установить точную дату, когда обслуживание выбранного клиента будет прекращено. Клиент будет отказано в авторизации и в доступе в интернет, если истек срок его обслуживания. При этом клиент получит сообщение о том, что «Обслуживание данного аккаунта прекращено».

ID хотспота – этот лимит позволяет вам «привязать» клиента к определенному хотспоту (точнее, к идентификатору хотспота). Если для клиента не назначен «ID-хотспота» (поле параметра оставлено пустым), то такой клиент будет обслуживаться ЛЮБЫМИ хотспотами, управляемыми посредством данной биллинговой программы. Если же идентификатор указать, то клиент будет проходить авторизацию и получать доступ в интернет только на тех хотспотах, у которых установлен точно такой же ID.

MAC-адрес клиента – этот лимит позволяет вам «привязать» клиента к MAC-алресу его оборудования. Если для клиента не назначен «MAC-адрес» (поле параметра оставлено пустым), то такой клиент сможет авторизоваться с любого устройства с любым MAC-адресом. Если же MAC-адрес указать, то клиент будет проходить авторизацию и получать доступ в интернет только на том устройстве, которое имеет этот MAC-адрес. Привязка к МАС-адресу выполняется «в один клик»! Для ваучеров по умолчанию в программе реализована «авто-привязка» к mac-у устройства в момент активации ваучера (самого первого подключения клиента к интернету). Данная «авто-привязка» может быть отключена администрацией хотспота  при необходимости!

Клиенту с оплатой по счету (postpaid) вы можете ограничить три параметра доступа в интернет:

  • Входящую скорость
  • Исходящую скорость
  • Число одновременных логинов
  • Таймаут
  • Дату окончания обслуживания
  • ID хотспота
  • MAC-адрес

Клиенту, использующему ваучер (prepaid), можно указать следующие параметры:

  • Номинал – фиксированное число минут или мегабайт
  • Входящую скорость
  • Исходящую скорость
  • Срок годности ваучера
  • Таймаут
  • График обслуживания
  • ID хотспота (привязывается не отдельный ваучер, а весь тариф)
  • МАС-адрес («привязывается» уже непосредственно ваучер)

Комбинирование этих параметров и ограничений позволит вам максимально гибко управлять доступом клиентов вашего хотспота в интернет.

С целью минимизации возможностей для злоупотреблений, работа в программе Easyhotspot разделена между несколькими категориями пользователей. Категорий пользователей (или т.н. «ролей») в программе существует три:

  • Суперадминистратор – это пользователь, наделенный максимальными административными правами. Суперадминистратор имеет право назначать тарифы для клиентов с оплатой по счету, создавать и удалять Тарифные пакеты (номиналы ваучеров), проводить инкассацию, удалять завершенные и израсходованные ваучеры, а также создавать и удалять пользователей программы: Кассиров, Администраторов и других Суперадминистраторов.
  • Администратор – это также административный пользователь программы, но в отличие от Суперадминистратора ему не позволено создавать, редактировать и удалять пользователей программы рангом выше Кассира (то есть, Администраторов и Суперадминистраторов он ни создавать, ни удалять, ни редактировать не имеет права, а Кассиров – может). За исключением этого ограничения, Администратор может выполнять все остальные административные действия, перечисленные выше для Суперадминистратора.
  • Кассир – пользователь, непосредственно работающий с клиентом. Он генерирует и продает (или раздает даром) ваучеры на основании уже имеющихся Тарифных пакетов, созданных ранее Администратором (или Суперадминистратором), а также создает аккаунты для клиентов, которые оплачивают доступ в интернет по счету. Также, Кассир закрывает аккаунты и выписывает счета клиентам с оплатой по счету после того, как те закончили пользование услугой. С целью предотвращения возможных злоупотреблений Кассиров, в программе введена специальная настройка про «Доверие Кассиру». Если вы доверяете Кассиру, в его меню присутствуют кнопки для удаления использованных ваучеров и выписанных счетов. Соответственно, Кассир сможет их самостоятельно удалять. Если же параметр «Доверие Кассиру» установлен как «нет», то у кассира нет такой возможности (удаления ваучеров и счетов), что в конечном итоге не позволит ему присвоить себе деньги, полученные от клиента, а проданный клиенту ваучер, или выписанный счет просто удалить из программы.

Но вернемся к способам обслуживания клиентов.

Вариант Postpaid (или «Оплата по счету») предполагает, что клиент является постоянным (на протяжении некоторого периода времени), и за полученные услуги рассчитывается по истечении учетного периода на основании выставленного ему счета. Типичным примером использования данного варианта учета может служить хотспот гостиницы или отеля. В этом случае доступ в интернет предоставляется клиенту в момент его поселения, а расчет за потребленную услугу осуществляется, когда клиент уже выписывается из номера. На протяжении некоторого периода времени система подсчитывает суммарный объем потребленного клиентом времени или трафика. По окончании учетного периода на основании результатов учета и установленных тарифов программа формирует счет для клиента. В данном случае распределение ролей пользователей программы осуществляется следующим образом:

  • Администратор заранее назначает в программе расценки для оплаты по счетам (сколько стоит каждая минута подключения, и сколько стоит каждый Мегабайт переданной информации). Обращаю внимание на то, что эти тарифы не имеют абсолютно никакого отношения к ценообразованию для второго метода (ваучеров).
  • Кассир создает учетную запись пользователя, самостоятельно назначает ему логин, пароль и тип учета. При необходимости устанавливает лимиты скорости и меняет число одновременных логинов. После этого кассир распечатывает клиенту талон, на котором указаны параметры для доступа в интернет (логин и пароль).
  • Дополнительно (при необходимости) Клиенту может быть назначена Дата окончания обслуживания. По наступлении указанной даты доступ в интернет для Клиента прекращается автоматически. Ряд платежных модулей позволяет таким клиентам вносить «помесячную» оплату, в результате чего Дата автоматически смещается еще на месяц вперед.
  • Клиент начинает пользоваться услугой. На протяжении установленного учетного периода программа хотспота подсчитывает объем потребленной клиентом услуги. В зависимости от выбранного типа учета суммируется либо время, проведенное клиентом в интернете, либо объем полученной им информации.
  • По истечении учетного периода кассир формирует счет клиенту. Сумма счета определяется простым умножением цен, указанных Администратором, на объем услуги, потребленный клиентом. Кассир, если параметр про «Доверие кассиру» выключен, во избежание финансовых злоупотреблений, не может просто удалить учетную запись клиента. Также, по тем же причинам Кассир не может удалить и сформированный счет.
  • В момент формирования счета учетная запись клиента (логин и пароль) автоматически удаляется, и клиент более не сможет получить доступ в интернет с этими параметрами.
  • После того, как клиент оплатит счет, Администратор может удалить его из базы данных программы.

Второй способ обслуживания — Prepaid (ваучеры) предназначен для предоставления разовых предоплаченных услуг. Иными словами, клиент сначала приобретает у кассира ваучер (талон) определенного номинала (в котором указаны логин и пароль), и лишь потом получает доступ в интернет. Номинал ваучера (талона) гарантирует клиенту предоставление определенного объема услуги доступа в интернет. Учет потребленной услуги возможен как по времени подключения, так и по объему израсходованного трафика. Иными словами, клиент автоматически будет отключен от хотспота после того, как либо время, которое он был подключен к интернету (в минутах), либо объем переданной и полученной им информации (в Мегабайтах) превысили указанный лимит (номинал ваучера). Ваучер также может иметь ограничения скорости. Кроме того, у ваучера фиксирован лимит одновременных логинов – только один (настраиваемое значение) клиент сможет подключиться в интернет с указанными логином и паролем. Второму клиенту, использовавшему эти же учетные данные, в доступе будет отказано. И напоследок, у ваучера есть срок годности (указывается Администратором). По его истечении клиент не сможет подключиться к хотспоту даже, если он не израсходовал еще все лимиты времени или мегабайт. Отсчет срока годности ведется от момента активации ваучера (первого подключения клиента к интернету через хотспот). Типичным примером использования данного варианта учета может служить хотспот в кафе.

Следует учесть, что ваучеры формируются (создаются) Кассиром на основании уже имеющихся в системе Тарифных пакетов. То есть, все параметры (лимиты) ваучера будут в точности такими, какими они есть у Тарифного пакета, на основании которого этот ваучер и был создан. Тарифные пакеты создает Администратор. И именно Тарифный пакет определяет, что будет подсчитываться – время или трафик, а также назначает тот лимит, по истечении которого клиент будет отключен. Тарифный пакет имеет собственную цену. Цена может быть указана произвольная (хоть и нулевая), и она никак не связана с тарифами, назначенными для оплаты по счетам. Кроме того, для Тарифного пакета при желании могут быть указаны ограничения входящей и исходящей скорости, с которой данные будут передаваться от/к клиенту. И срок годности, упоминавшийся ранее, также является параметром именно Тарифного пакета. При таком методе предоставлении услуги доступа в интернет роли пользователей программы распределены следующим образом:

  • Администратор создает Тарифные пакеты. Их число ничем не ограничено, и определяется лишь вашими потребностями. Например, можно создавать тарифные пакеты на разную длительность работы в интернете. Или, допустим, на одно и то же время доступа, но с различной скоростью. Или «мало и медленно» – задаром, а «много и быстро» – за деньги! В очередной раз напоминаю, что Администратор абсолютно свободен в вопросах ценообразования.
  • На основании имеющихся (созданных Администратором) Тарифных пакетов Кассир генерирует и распечатывает ваучеры, и продает их Клиентам (или же раздает даром, если указана нулевая цена).
  • Клиент начинает пользоваться услугой. В момент первого подключения к хотспоту система начинает отсчет срока годности ваучера. Также, система начинает подсчет объема потребленной клиентом услуги. По истечению лимита, указанного как номинал ваучера, клиент будет отключен от интернета автоматически.
  • Все ваучеры, использование которых клиентами было начато, попадают в отчет для инкассации. То есть, пока ваучеры были просто распечатаны и «тихо и мирно» лежат у кассира, они не попадают в этот отчет. Но как только логин и пароль из ваучера были хоть раз введены в систему для получения доступа в интернет, программа автоматически считает такой ваучер как проданный. Как следствие, такой ваучер попадает в отчет для инкассации. Отчет подсчитывает общее число проданных ваучеров для каждого из Тарифных пакетов и, с учетом их цены, выводит итоговую сумму, подлежащую инкассации (иными словами, выручку Кассира, полученную от продажи ваучеров).
  • После того, как Кассир оплачивает Администратору сумму, подлежащую инкассации за проданные ваучеры, Администратор помечает попавшие в отчет ваучеры, как инкассированные. В дальнейшем, при формировании нового отчета для инкассации, ваучеры, инкассированные ранее, уже не попадут в него.
  • После инкассации Администратор запускает команду, которая удаляет из базы хотспота все инкассированные ваучеры, лимит которых был израсходован, либо истек их срок годности.

Более подробно работа в программе Easyhotspot рассмотрена либо на этой странице, либо в данном полном руководстве.

Обобщенные «сводки» о внесенных в программу изменениях и улучшениях публикуются в этом разделе сайта. Также, полный список всех модернизаций, обновлений и дополнений программы был продублирован мной в форум. По мере дальнейшей модернизации и реализации новых функций информация об этом также добавляется в указанную тему. Желающие также могут просмотреть описание модернизаций на этой странице.

Увидеть получившийся результат (в том смысле, что в онлайн попробовать поработать в «демонстрационной» версии модифицированной программы Easyhotspot) можно, если перейти по этой ссылке. Чтобы войти в программу как Администратор, Вам потребуется ввести логин admin и пароль admin123. Чтобы поработать в роли Кассира, нужно будет ввести логин vcool, и пароль vcool123.

Желающие сравнить, чем же все-таки модернизированный Easyhotspot отличается от «оригинального», могут легко сделать это самостоятельно! Достаточно просто сравнить старую версию программы с ее обновленным собратом. Чтобы войти в любую из версий программы как Администратору, Вам потребуется ввести логин admin и пароль admin123. Чтобы поработать в роли Кассира, нужно вводить логин vcool, и пароль vcool123.

Существует также вариант модернизированной программы Easyhotspot с английским языком интерфейса. Его демо версия доступна по адресу: http://wifi-hotspot.zp.ua/hotspot_demo_eng/ . Данные для входа — те же самые, что и для «русской» версии (приведены в предыдущем абзаце).

Полную подробную инструкцию по работе с модернизированной программой Easyhotspot можно прочесть или скачать по данной ссылке.

Мной составлено подробное руководство по установке и настройке хотспота с использованием программ и служб Easyhotspot, FreeRADIUS, MySQL, Apache, установленных на компьютере, работающем под управлением актуальных версий ОС Linux Ubuntu LTS (12.04, 14.04, 16.04, 18.04), а также актуальных версий ОС Debian (7.Х, 8.Х или 9.Х). Содержание руководства можно просмотреть по данной ссылке. Данное руководство плюс модифицированная и русифицированная версия программы предлагаются к продаже по цене $90.

Программа поставляется в виде скрипта-инсталлятора, который самостоятельно полностью устанавливает и настраивает весь хотспот – контроллер доступа Chillispot, сервер авторизации RADIUS, а также все остальные необходимые для работы программы: сервер баз данных MySQL, веб сервер Apache, ну и собственно саму программу Easyhotspot. В результате вы получаете стабильно работающий (по нескольку месяцев без выключения) хотспот, у которого отсутствуют какие-либо ограничения. В двух словах, создание сервера хотспота состоит из двух этапов — установки самой ОС UBUNTU (или Debian), и последующего выполнения скрипта-инсталятора, который сам установит все компоненты сервера хотспота!!! Подробнее как пользоваться скриптом исталлятором описано в руководстве по быстрой установке, которое можно скачать по этой ссылке. Как видно из данного руководства, никаких «особых» познаний в Linux-е от устанавливающего не требуется! Дополнительно на Youtube выложены 2 видео-ролика. Первый ролик показывает процесс установки самой ОС Ubuntu 12.04 LTS. Второй ролик показывает процесс установки всего комплекса программ хотспота с помощью скрипта инсталятора.

Остальные видеоматериалы, доступные в интернете:

  • Процедура обновления программы Easyhotspot:

  • Авторизация Клиента по логину и паролю:

  • Гостевая авторизация кнопкой «Бесплатно» (Клиент не пользуется логинами и паролями):

  • Задержка на время показа рекламы при включении соответствующего режима:

  • Автоматическая авторизация Клиента после просмотра рекламы:

  • Режим, при котором Клиент смотрит рекламу до авторизации, а потом смотрит еще одну после авторизации (только «гости»):

Дополнительные детали – по почте. Альтернативные контакты – на странице «Обо мне».

Кроме того, за отдельную плату, предоставляется услуга по дистанционной установке и настройке сервера хотспота на ваш подготовленный компьютер. Детали о том, что нужно подготовить – в этом руководстве. Стоимость услуги – $10.

Отзывы о работе системы от тех, кто уже использует в работе описанное выше ПО, можно прочесть на этой странице.

У вас все еще остались вопросы, на которые вы так и не нашли ответа? Загляните на страницу FAQ, просмотрите еще целый ряд «вопросов и ответов«, почитайте форум, посвященный модифицированной версии программы Easyhotspot. И этого недостаточно? Напишите мне письмо с вашими вопросами, или просто задайте ваш вопрос в поле «Оставь комментарий» внизу страницы…

Программу можно приобрести либо связавшись со мной по е-мейл, либо же онлайн, если перейти по ссылке:

https://wifi-hotspot.zp.ua/file_sale/

Дополнительные ссылки:

Пинг точки доступа, подключенной к Chillispot

В данном случае речь не только и не столько о пинге. Мне нужно было попасть в веб-интерфейс точки доступа, подключенной к серверу хотспота, на котором запущен и настроен Chillispot. Решение оказалось сравнительно простым.

Часть первая — настройка локальной адресации

Согласно документации на Chillispot, сетевая плата, используемая для подключения точки доступа, в настройке не нуждается. То есть, нужно лишь чтобы система опознала плату и присвоила ей номер (например, eth1). После чего сам Chillispot выполняет все необходимые настройки самостоятельно.

Чтобы добраться к точке доступа понадобилось сделать совсем немного.

Во первых, нужно выбрать подсеть, не используемую ни одним из интерфейсов компьютера. Например, у компьютера два интерфейса (сетевых платы). Допустим, плата eth0 используется для подключения к интернету и имеет адрес 192.168.1.2. А второй сетевой адаптер (eth1) используется для организации хотспота — им управляет Chillispot. По умолчанию, Chillispot присвоит этому интерфейсу адрес 192.168.182.1 (если вы не указали иное значение параметра net в его настройках). Выберем адрес, не относящийся ни к одной из двух указанных подсетей (но из диапазона, используемого для локальных сетей), например, 192.168.123.1. Этот адрес я и присвоил сетевой плате eth1 (той, к которой подключена точка доступа). Для этого в консоли от имени root-а я ввел команду:

ifconfig eth1 inet 192.168.123.1 netmask 255.255.255.0

Вторым делом в подготовке нуждается сама точка доступа. Нужно зайти в ее сетевые настройки (LAN) и присвоить ей статическй сетевой адрес, попадающий в диапазон подсети одной с тем адресом, который мы только что присвоили плате eth1. С учетом адреса eth1, выбранного мной выше, точке доступа нужно присвоить адрес в диапазоне от 192.168.123.2 до 192.168.123.254, и лично я, например, установил 192.168.123.5.

На этом подготовка завершена.

Теперь на компьютере, к которому подключена точка доступа, открываете браузер и вводите адрес точки доступа — 192.168.123.5. Откроется веб-интерфейс управления точкой доступа. Все.

Часть вторая — а снаружи?

Собственно, компьютер выступающий в роли сервера хотспота постоянно подключен к интернету. И  далеко не всегда человек, управляющий этим сервером, находится непосредственно перед ним. Он может находиться в другом месте за сотни или тысячи километров, лишь-бы был доступ к интернету. И в этом случае, для того, чтобы попасть в настройки точки доступа, человек этот вынужден сначала дистанционно подключиться к консоли сервера (по ssh), потом в консоли запустить браузер, и если в ssh настроен форвардинг «иксов», то браузер этот «всплывет» на его компьютере (иначе и не скажешь с поправкой на скорость), и уж потом он сможет подключаться к точке доступа. Главное неудобство — очень медленная скорость, вызванная тем, что «иксы» шифруются и заворачиваются в ssh-туннель.

Но что нам мешает настроить систему так, чтобы в веб-интерфейс настройки точки доступа попадать непосредственно из браузера удаленного компьютера, минуя ssh-подключение? Да ничего! Единственный нюанс, обратиться извне мы можем только к адресу самого сервера хотспота. А на нем уже работает apache, и как следствие, 80-й порт занят. Но и веб интерфейс настройки точки доступа также по умолчанию настроен на работу на 80-м порту. По этому, первым делом, нужно перенастроить точку доступа так, чтобы ее веб-интерфейс работал на порту с другим номером. Я у себя установил значение 8080, и именно такое значение и рассматривается в приведенных ниже командах. IP-адреса оставлены те же, что и в первой половине заметки. Если вы захотите использовать иные значения, откорректируйте приведенные команды самостоятельно.

Итак, в файл правил файервола (имеется ввиду файл «стандартных» правил, поставляемых вместе с программой chillispot) потребовалось добавить всего лишь три строки:

$IPTABLES -A FORWARD -i $EXTIF -d 192.168.123.0/24 -p tcp -j ACCEPT 
$IPTABLES -A FORWARD -i $INTIF -p tcp --source 192.168.123.0/24 -j ACCEPT 
$IPTABLES -t nat -I PREROUTING -p tcp -i $EXTIF --dport 8080 -j DNAT --to-destination 192.168.123.5:8080

Первый нюанс — месторасположение добавленных правил в файле. Я их добавил сразу же после команд установки «умолчательных» значений для всех правил, выполняемых в самом начале скрипта. То есть, СРАЗУ ЖЕ ПОСЛЕ СЛЕДУЮЩИХ СТРОК:

$IPTABLES -P INPUT DROP $IPTABLES -P FORWARD ACCEPT $IPTABLES -P OUTPUT ACCEPT

А теперь чуток поподробней о добавленных строках.

  • Первая строка разрешает принимать на внешнем (подключенном к интернету) интерфейсе все пакеты, которые подлежат переадресации в подсеть 192.168.123.0/24. В данном случае, в правиле указана вся подсеть. При  желании, вы можете ограничить правило, указав один-единственный адрес (адрес самой точки доступа), например, 192.168.123.5, или же уменьшить диапазон адресов, изменив маску (точек доступа ведь может быть больше чем одна), например, вот так — 192.168.123.0/29 (кроме адреса самой сети и широковещательного, эта маска дает всего 6 адресов устройств). В принципе, правило может быть ужесточено, например, добавлением ограничения допуска параметром номера(ов) портов, то есть, допустим, принимать только пакеты поступающие на порт 8080, и т.д. Документация по iptables в таком случае — именно то, что вам нужно сесть и прочитать…
  • Вторая строка разрешает отдавать назад во внешний интерфейс пакеты, поступающие из указанной подсети. Все вышесказанное про диапазоны адресов может быть так же применено и здесь с таким же успехом.
  • Ну и третья строка непосредственно включает переадресацию пакетов, поступающих на порт 8080 внешнего интерфейса по следующему адресу — 192.168.123.5:8080 (то есть, на порт 8080 устройства с адресом 192.168.123.5).

Результат таких действий (естественно, после того, как правила будут задействованы) — при обращении в браузере к адресу сервера с указанием выбранного номера порта (то есть, http://your.server.adres:8080/) вы будете попадать непосредственно на веб-интерфейс точки доступа.

А как же быть, если точек больше одной, спросите вы. С учетом того, что внешний интерфейс у сервера хотспота один, придется использовать следующий (другой) номер порта для переадресации. При этом, порт на котором слушает сама точка доступа, можно использовать все тот же 8080. А вот снаружи мы к ней будем добираться уже через порт 8081. В таком случае нужно будет продублировать всего лишь третью строку из числа добавленных и модифицировать ее таким образом (с учетом того, что, допустим, у второй точки доступа ip-адрес будет 192.168.123.7):

$IPTABLES -t nat -I PREROUTING -p tcp -i $EXTIF --dport 8081 -j DNAT --to-destination 192.168.123.7:8080

Вот и все…