Обновления в 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 хотспотом — , Руководство по эксплуатации»

Всвязи с многочисленными изменениями в программе, были внесены изменения в инструкцию «Программа управления 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, которую можно приобрести на странице онлайн-продажи.

Советую также прочесть следующие записи блога: