Новости программы 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 доступен тут.