Анонс новостей (обновлений, исправлений) Easyhotspot

Анонсы всего, что происходит в плане дальнейшей модернизации программы, а также, исправления обнаруженных ошибок.
Аватара пользователя
Dmitry
Администратор
Сообщения: 994
Зарегистрирован: 25 май 2011, 09:14
Откуда: г. Запорожье, Украина
Контактная информация:

Анонс новостей (обновлений, исправлений) Easyhotspot

Сообщение Dmitry » 25 май 2011, 10:10

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

Вот список всевозможных переделок и улучшений, которые уже были выполнены ранее в программе Easyhotspot на момент написания этого сообщения:
  • Создан скрипт-инсталлятор, значительно упрощающий процедуру установки и настройки ВСЕГО сервера хотспота. То есть, скрипт не только устанавливает саму программу Easyhotspot, но также и устанавливает и настраивает ВСЕ службы (RADIUS, Chillispot, MySQL, Apache, PHP и пр.), требующиеся для работы сервера хотспота. Инсталятор, позволяет легко и просто установить хотспот в два действия. Первым делом - установить операционную систему с использованием либо CD-диска либо DVD-диска Ubuntu-desktop 10.04, либо CD-диска Ubuntu-server 10.04. Второй шаг - запустить скрипт, который установит и настроит все службы (программы) хотспота. Подробнее - в инструкции. Также, инсталятор работает на дистрибутивах - Ubuntu 12.04 LTS и Debian 6.0.x;
  • Скрипт-инсталятор позволяет установить сервер для использования его в трех режимах: обслуживание клиентов, подключенных непосредственно к его выходу; обслуживание внешних роуетеров, расположенных на любом удалении от сервера; и смешанном, при котором обслуживаются и те и другие;
  • Программа позволяет "привязать" Тарифы и Клиентов с оплатой по счету к конкретным хотспотам. При этом таким клиентам будет отказано в обслуживании иными хотспотами;
  • На сервер хотспота устанавливаются для постоянного самоконтроля его работы и автоматического исправления возникающих ошибок следующие скрипты: Скрипт контроля системы / Скрипты удаления зависших сессий из базы RADIUS / Скрипт бакапа баз данных /Скрипт удаления старых логов radacct сервера FreeRADIUS;
  • Полностью переработана страницы авторизации. Во первых, она теперь многоязычная – по ответу браузера клиента определяется язык, используемый в системе клиента, и в ответ страница авторизации выводится на соответствующем языке. Поддерживаются следующие языки – английский, французский, немецкий, испанский, русский, украинский. Во вторых, на страницу добавлена графика – есть «основная» картинка фиксированного размера, и картинка фонового рисунка, заполняющего остальное поле. В третьих, на ней переведены в том числе и сообщения о причинах отказа клиенту в доступе в интернет (превышении лимитов времени, трафика, одновременных логинов). Ранее они выводились только на английском языке, теперь же – на языке, используемом в системе клиента (английском, французском, немецком, испанском, русском – в соответствии с ответом браузера клиента). В четвертых, стили всех объектов на странице определяются CSS, что позволяет легко адаптировать ее под собственные нужды. При этом подгружаемый CSS автоматически выбирается в зависимости от разрешения экрана клиентского устройства (что предоставляет возможность настройки стилей под "маленькие" экраны мобильных устройств). В пятых, на странице внедрен режим "гостевого доступа", позволяющий клиентам попадать в интернет на основании назначенных вами лимитов времени/скорости/трафика) без необходимости приобретения логинов/паролей. Также, в случае необходимости, страница позволяет теперь полностью убрать меню парольного доступа. В шестых, переведены подписи кнопок входа в интернет.;
  • Добавлены всплывающие подсказки;
  • В меню создания Тарифных пакетов, и в меню создания Клиентов с оплатой по счету реализована проверка вводимых значений (с помощью Javascript). При вводе некорректного значения (например, в поле, в которое должны были быть введены цифры (допустим, "Цена") вы по ошибке ввели буквы) выводится сообщение об ошибке, при этом фон поля, в котором была допущена ошибка, меняется на красный;
  • Исправлена ошибка в установке скорости 64 кбит, имевшаяся в английской версии 0.1;
  • Добавлена возможность редактирования Тарифных пакетов;
  • Добавлен параметр, благодаря которому информация в базе Easyhotspot о времени и трафике, потребленных клиентом, обновляется каждую минуту;
  • При отображении информации о времени и трафике, потребленных клиентом, включено округление значений как времени, так и трафика до целых чисел, чтобы не выводились дроби задействована новая функция, которая преобразует значения в "человечески читаемые": показания времени выводятся в формате ЧЧ:ММ:СС, а показания объема данных - в формате ХХХ,Х (кб|Мб|Гб);
  • При создании аккаунта для Клиента, оплачивающего услугу по счету, добавлена возможность указания лимита скорости доступа в интернет;
  • При создании аккаунта для Клиента, оплачивающего услугу по счету, добавлена возможность указания числа одновременных логинов (сколько устройств может одновременно подключиться к хотспоту с использованием одних и тех же логина и пароля);
  • При создании аккаунта для Клиента, оплачивающего услугу по счету, добавлена возможность выбора времени таймаута (по истечении которого клиент будет отключен автоматически, если не пользуется интернетом);
  • Клиенту с оплатой по счету теперь возможно назначить дату, когда его обслуживание будет автоматически прекращено;
  • Клиент с оплатой по счету теперь может быть привязан к хотспоту, благодаря чему он будет обслуживаться только указанных хотспотом;
  • Клиент с оплатой по счету теперь может быть привязан к mac-адресу. В результате авторизоваться будет только то устройство, чей mac-адрес указан в настройках аккаунта. Всем остальным в авторизации будет отказано даже в том случае, если введены правильные логин и пароль;
  • В меню создания клиентов с оплатой по счету добавлена кнопка для автоматической генерации логина и пароля (кассиру теперь не нужно придумывать их каждый раз самостоятельно);
  • Добавлен вывод информационного сообщения при создании клиента с оплатой по счету, если у него уже есть неоплаченный ранее счет;
  • Добавлен вывод сообщения об ошибке при попытке создании клиента с логином, который уже имеется в базе;
  • Добавлены проверки вводимых значений и вывод сообщений об ошибках при создании клиента с оплатой по счету;
  • Исправлена ошибка (имевшаяся в английской версии 0.1) формирования счета для клиента, который еще не пользовался услугой. Вместо «белого экрана» теперь выводится сообщение о невозможности выписать счет;
  • Добавлена отсутствующая в английской версии 0,1 возможность удаления старых счетов. Теперь она присутствует, но только в меню администратора, чтобы исключить возможность злоупотреблений кассиров;
  • Добавлен логотип (Wi-Fi) в печатаемые счета;
  • Изменена процедура генерации новых ваучеров. Теперь сразу же после их создания автоматически выполняется вывод ваучеров на печать. При этом, в отличие от английской версии программы, ваучеры группируются по 9 штук на листе А4 (см. пример по ссылке);
  • Также, во время выполнения процедуры генерации ваучеров программа формирует файл CSV-формата, в который записываются пары "логин-пароль" только что созданных ваучеров (пример доступен по этой ссылке). Процедура была изменена. Теперь файл с логинами и паролями генерится динамически, и реально на сервере он отсутствует. Старый механизм не предполагал никакой защиты сгенерированного файла. В новой редакции злоумышленнику красть с сервера просто физически нечего. Этот файл будет полезн, если вы планируете распечатывать ваучеры не средствами программы, а, например, в типографии. В таком случае вы можете просто передать им этот файл, чтобы они указали логины и пароли на печатаемых ваучерах;
  • У всех ваучеров и талонов сделан фоновый рисунок (подложка). В итоге внешний вид ваучера теперь вот такой;
  • Добавлена возможность выборочной печати ваучеров. В списке отмечаются "птичками" выбранные ваучеры, которые потом и распечатываются вами;
  • Добавлена печать порядкового номера ваучера, что упрощает их учет (см. пример ваучера по ссылке, данной в предыдущем абзаце). Также, в списке ваучеров реализована возможность искать именно по этому номеру;
  • Добавлен параметр - Срок годности ваучера. Суть параметра в том, что доступ в интернет по «просроченному» ваучеру не предоставляется, даже если его лимит не был израсходован полностью. Срок годности ваучера является параметром Тарифного пакета, и может быть присвоен каждому Тарифному пакету индивидуально. Также, при создании Тарифного пакета в поле «Срок годности» допускается указывать дробные значения. То есть, вы можете, например, указать срок годности равным 0,04166 (это число обозначает 1 час или же 1/24 суток), и ваучеры, созданные на основании этого Тарифного пакета будут однозначно становиться негодными через 1 час после их активации Клиентом;
  • Из английской версии 02 добавлено меню со списком пользователей, подключенных к хотспоту в текущий момент. Это меню кроме чисто информативной функции (время, когда клиент подключился, длительность сеанса, потребленный им за сеанс трафик), позволяет еще и принудительно отключать клиентов от интернета. Также, в это меню добавлена кнопка, выводящая лог авторизации клиентов хотспота. Благодаря этому Кассир теперь может сразу же просмотреть в чем проблема, если у клиента не получается подключиться к интернету;
  • В указанном списке подключенных к хотспоту клиентов добавлен вывод информации о IP-адресе, присвоенном клиенту, IP-адресе контроллера Chillispot, к которому подключен клиент (информация полезна, когда биллинг обслуживает несколько хотспотов). Кроме того, для клиентов с оплатой по счету в этом списке теперь отображаются не только их логины, но и их т.н. "Реальные имена" (поле "Имя клиента").
  • В меню для смены пароля у кассира теперь автоматически подставляется его логин, и ввод какого-либо иного значения в это поле запрещен. Этим исключена возможность злоупотребления: ранее кассир имел возможность сменить пароль любого пользователя, в том числе и администратора, если в своей форме вводил его учетные данные;
  • В программу добавлен параметр о «доверии кассиру». Он определяет – будут ли в программе отображаться кнопки для удаления ваучеров, аккаунтов и счетов, доступные именно кассиру (администратору они доступны всегда). Если ваш хотспот предполагает «двухуровневое» управление – то есть кассир и администратор – это разные люди, и администратор не доверяет кассиру, то указанные кнопки лучше скрыть. Благодаря этому кассир не сможет удалить выписанные ваучеры, аккаунты и счета, а полученные за них деньги присвоить. Их (ваучеры, аккаунты и счета) сможет удалить только администратор (об этом - см. ниже). Если же хотспотом управляет один и тот же человек (как в качестве кассира, так и в качестве администратора), то ему каждый раз переключаться с кассира на администратора и наоборот, возможно, будет не удобно. В таком случае указанные кнопки можно не скрывать, благодаря чему ваучеры, аккаунты и счета можно будет удалять непосредственно в меню кассира (см. ниже);
  • В программу добавлены кнопки, позволяющие переходить из меню Администратора в меню Кассира и обратно без необходимости выхода из программы и повторной авторизации другим пользователем. Кнопки видны только в случае, если вошедший в программу пользователь - администратор. Также, в связи с появившейся возможностью администратору перехода в меню кассира, действие параметра про "доверие кассиру" было изменено. Кнопки удаления скрываются из меню (если параметр установлен как "нет") только в случае если вошедший в программу пользователь - кассир. Если же в программу вошел администратор, кнопки удаления видны всегда, вне зависимости от значения параметра про "доверие кассиру".
  • В меню администратора добавлен отчет, выводящий всю информацию о проданных ваучерах. Проданными считаются все ваучеры, использование которых клиентами было начато (ваучер был хотя бы раз активирован клиентом). В данном отчете указывается номинал ваучеров, их цена и количество проданных (активированных). В результате - отчет автоматически подсчитывает сумму «Итого», подлежащую инкассации. После того, как деньги Администратором от Кассира получены (инкассация произошла), Администратор нажатием одной кнопки помечает сразу все ваучеры, попавшие в текущий отчет, как «инкассированные». В следующий раз при формировании этого отчета ранее «инкассированные» ваучеры в него уже не попадут. Информация о том, какие ваучеры уже были инкассированы, также добавлена и в меню кассира;
  • Чтобы в базе не хранились все старые израсходованные ваучеры, Администратору добавлено новое меню. В нем выводится информация (список) обо всех израсходованных и просроченных ваучерах. В списке присутствует поле, в котором отображается причина, по которой ваучер «пришел в негодность» – либо клиент израсходовал лимит, либо у ваучера истек срок годности. В меню присутствует три кнопки удаления – «Удалить просроченные», «Удалить завершенные» и «Удалить все». При нажатии любой из кнопок происходит автоматическое удаление всех ваучеров, соответствующих выбранному критерию.
Вся информация о последующих обновлениях в программе будет выкладываться в этой теме форума.
Таким образом, подписавшись на данную тему вы всегда будете в курсе последних изменений в программе.

Аватара пользователя
Dmitry
Администратор
Сообщения: 994
Зарегистрирован: 25 май 2011, 09:14
Откуда: г. Запорожье, Украина
Контактная информация:

Re: Анонс новостей (обновлений, исправлений) Easyhotspot

Сообщение Dmitry » 25 май 2011, 15:18

24 мая 2011 были исправлены две ошибки, внесенные во время изменений от 15 мая 2011.
  • при попытке закрытия аккаунта Клиента с оплатой по счету вместа списка сессий появлялось сообщение об ошибке.
  • в базе был установлен лимит цены на ваучер ххх.хх, то есть, 999,99 максимум, вместо ххххх,хх.
Ошибки исправлены.

iny55
Сообщения: 3
Зарегистрирован: 27 май 2011, 22:56
Контактная информация:

Re: Анонс новостей (обновлений, исправлений) Easyhotspot

Сообщение iny55 » 27 май 2011, 23:03

Доброго времени суток. У меня вопрос по исправлению ошибок.

Я устанавливал все компоненты пакета вручную, т.к. у меня на серверах установлен Debian. Соотвественно, внести изменения по исправлениям мне тоже придется вручную. Правильно я понимаю, что надо просто полностью заменить Easyhotspot и исправить ошибку в структуре базы? Как это правильно сделать?

Аватара пользователя
Dmitry
Администратор
Сообщения: 994
Зарегистрирован: 25 май 2011, 09:14
Откуда: г. Запорожье, Украина
Контактная информация:

Re: Анонс новостей (обновлений, исправлений) Easyhotspot

Сообщение Dmitry » 27 май 2011, 23:23

Эти исправления (от 24 мая) не затронули сам веб-интерфейс Easyhotspot, и в принципе именно в данном случае его менять не обязательно. Обе ошибки были исправлены только в базе данных.

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

Если же есть желание исправить эти ошибки на работающей системе без потери данных базы MySQL, то это возможно, если на сервере установлен phpmyadmin. Запускаете, заходите в MySQL. Открываете в нем базу easyhotspot...

Ошибка числа разрядов в цене - это в принципе, даже не ошибка, просто на каком-то этапе потерялся ранее увеличенный лимит поля цены. Чтобы снова поставить лимит поболее (а в принципе - просто установить любое нужное для вас значение), нужно открыть таблицу billingplan, в ней найти поле price и его формат (в структуре) с decimal 5,2 нужно поменять на decimal 7,2 (или любое другое по желанию). Суть цифр проста: первая (до запятой) - суммарное число цифр (и целой части и дробной), вторая - (после запятой) - число разрядов дробной части.

Вторая ошибка вызвана тем, что в структуре базы "нечаянно потерялось" представление (view) postpaid_account_bill. Точнее, оно не совсем потерялось, потерялось его содержимое :( . Чтобы "вручную" восстановить его, нужно выполнить следующий sql-запрос:

Код: Выделить всё

-- Структура для представления `postpaid_account_bill`
--
DROP TABLE IF EXISTS `postpaid_account_bill`;

CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `postpaid_account_bill` AS select `postpaid_account`.`realname` AS `realname`,`postpaid_account`.`username` AS `username`,`postpaid_account`.`password` AS `password`,`radacct`.`acctstarttime` AS `start`,`radacct`.`acctstoptime` AS `stop`,(`radacct`.`acctsessiontime` / 60) AS `time_used`,((`radacct`.`acctoutputoctets` + `radacct`.`acctinputoctets`) / 1048576) AS `packet_used`,`postpaid_account`.`bill_by` AS `bill_by`,(`postplan`.`price` * (`radacct`.`acctsessiontime` / 60)) AS `time_price`,(`postplan`.`price` * ((`radacct`.`acctoutputoctets` + `radacct`.`acctinputoctets`) / 1048576)) AS `packet_price` from ((`postpaid_account` left join `radacct` on((`postpaid_account`.`username` = `radacct`.`username`))) join `postplan` on((`postplan`.`name` = `postpaid_account`.`bill_by`)));
Единственное замечание - для выполнения этого запроса в phpmyadmin нужно войти именно root-ом.

Аватара пользователя
Dmitry
Администратор
Сообщения: 994
Зарегистрирован: 25 май 2011, 09:14
Откуда: г. Запорожье, Украина
Контактная информация:

Re: Анонс новостей (обновлений, исправлений) Easyhotspot

Сообщение Dmitry » 30 май 2011, 15:20

НЕ АКТУАЛЬНО!!! Информация для Ubuntu 9.04
Обновлен инсталятор (скрипт). Учтите, что сама программа ни плане настроек, ни в плане базы, ни в плане вебинтерфейса не менялась!
Тем, у кого программа уже установлена, переживать не о чем.

Просто, Ubuntu переместила ВСЕ, что связано с версией 9.04 на сервер old-releases.ubuntu.com.
Туда переехали как установочные образы дисков, так и все репозитории програмного обеспечения (пакетов) для версии 9.04. И похоже, это осталось единственное место...
Именно по-этому, скрипт был переписан (исправлены адреса серверов репозиториев).

Те, кто только планирует устанавливать программу - обращайтесь за обновленной версией скрипта.
Всем остальным:
  • в том случае, если вы планируете устанавливать на сервер дополнительное ПО из репозиториев, введите в консоли команду:

Код: Выделить всё

echo "deb http://old-releases.ubuntu.com/ubuntu/ jaunty main universe multiverse" | sudo tee -a /etc/apt/sources.list
после чего обновить список пакетов коммандой:

Код: Выделить всё

sudo apt-get update

Аватара пользователя
Dmitry
Администратор
Сообщения: 994
Зарегистрирован: 25 май 2011, 09:14
Откуда: г. Запорожье, Украина
Контактная информация:

Re: Анонс новостей (обновлений, исправлений) Easyhotspot

Сообщение Dmitry » 16 июн 2011, 21:48

НЕ АКТУАЛЬНО! Страница авторизации уже давно совсем другая
В архив с программой добавлены в виде zip-архива:
  • Модифицированная страница авторизации hotspotlogin.cgi с возможностью бесплатного демо-входа клиентов в интернет, описанная тут и тут;
  • Скрипт чистки базы от демо-пользователей - clear_query.pl. Использование скрипта описано тут и тут.
По умолчанию и эта страница, и этот скрипт очистки на сервер хотспота НЕ УСТАНАВЛИВАЮТСЯ. При желании вам их нужно будет установить самостоятельно вручную.

Аватара пользователя
Dmitry
Администратор
Сообщения: 994
Зарегистрирован: 25 май 2011, 09:14
Откуда: г. Запорожье, Украина
Контактная информация:

Re: Анонс новостей (обновлений, исправлений) Easyhotspot

Сообщение Dmitry » 17 июн 2011, 12:26

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

Аватара пользователя
Dmitry
Администратор
Сообщения: 994
Зарегистрирован: 25 май 2011, 09:14
Откуда: г. Запорожье, Украина
Контактная информация:

Re: Анонс новостей (обновлений, исправлений) Easyhotspot

Сообщение Dmitry » 18 июн 2011, 15:32

Обновлен скрипт-инсталятор. В нем изменен алгоритм настройки сетевой платы в соответствии с пожеланиями, рассматривавшимися в этой теме:
Скрипт ускоренной установки! Маска для интерфейса eth0
Обращаю внимание на то, что никаких изменений в самой программе Easyhotspot не производилось. Тем у кого программа уже установлена и работает, беспокоиться не о чем...

Аватара пользователя
Dmitry
Администратор
Сообщения: 994
Зарегистрирован: 25 май 2011, 09:14
Откуда: г. Запорожье, Украина
Контактная информация:

Re: Анонс новостей (обновлений, исправлений) Easyhotspot

Сообщение Dmitry » 10 авг 2011, 09:34

В самой Easyhotspot функции, отмененные в РНР версии 5.3 заменены на те, которые поддерживаются. Резальтат - Easyhotspot запускается и работает на серверах, использующих РНР версий выше 5.3.0! Сейчас переписываю инсталятор, чтобы устанавливать хотспот на базе Ubuntu 10.4 LTS.

upd.

Все, инсталятор исправил - теперь для установки сервера хотспота качать нужно не Ubuntu 9.04, а Ubuntu 10.04 LTS, причем, достаточно - CD-диска, все недостающее при установке хотспота будет корректно загружено из интернета.

Аватара пользователя
Dmitry
Администратор
Сообщения: 994
Зарегистрирован: 25 май 2011, 09:14
Откуда: г. Запорожье, Украина
Контактная информация:

Re: Анонс новостей (обновлений, исправлений) Easyhotspot

Сообщение Dmitry » 14 авг 2011, 15:38

НЕ АКТУАЛЬНО!! Страница авторизации уже давно совсем другая
Написана новая страница авторизации (универсальная). Скриншоты - вот в этой записи в моем блоге
https://wifi-hotspot.zp.ua/wp/2011/08/m ... last-news/
Страница включает поддержку
  • гостевого входа
  • индикации и ссылки для работы модуля приема платежей по СМС
  • индикации и ссылки для работы модуля приема платежей с пластиковых банковских карт
Указанная страница включена в инсталятор в качестве основной (используемой при установке) страницы авторизации клиентов хотспота.

Ответить

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя