dummy Опубликовано: June 25, 2010 at 06:38 Опубликовано: June 25, 2010 at 06:38 Предлагаю создать тему, где обсуждаются параметры конфигурации stargazer.conf Меня интересует параметр: # "Размазанное" снятие абонплаты. Снятие АП не раз в месяц, а каждый # день 1/30 или 1/31 части АП # Значения: yes, no SpreadFee = no как его понять: абонплата снимается каждый день или только за те дни, в которые пользователь подключался ? и если 2 вариант, то по пользователю за месяц может получаться сумма меньше установленной абонплаты ?
madf Опубліковано: June 25, 2010 at 07:26 Опубліковано: June 25, 2010 at 07:26 Предлагаю создать тему, где обсуждаются параметры конфигурации stargazer.conf Меня интересует параметр: # "Размазанное" снятие абонплаты. Снятие АП не раз в месяц, а каждый # день 1/30 или 1/31 части АП # Значения: yes, no SpreadFee = no как его понять: абонплата снимается каждый день или только за те дни, в которые пользователь подключался ? и если 2 вариант, то по пользователю за месяц может получаться сумма меньше установленной абонплаты ? Каждый день.
dummy Опубліковано: July 1, 2010 at 01:10 Автор Опубліковано: July 1, 2010 at 01:10 а чтобы абонплата снималась только в дни использования инета - стандартных средств нет ?
Небесный Опубліковано: July 1, 2010 at 05:18 Опубліковано: July 1, 2010 at 05:18 Я так понял у вас используется подключение юзеров через авторизатор. В скрипт OnConnect добавляете примерно такую строчку echo "1" > /var/stargazer/$Login/today_online В скрипт OnDisconect добавляете примерно такую строчку echo "0" > /var/stargazer/$Login/today_online Потом прочтите вот это сообщение в теме. Там говорится о том, что бы не снимать в случае, если денежный баланс у юзера меньше нуля, а вы вот делайте проверку today_online на 1. И еще чтобы не было одного прикола (человек сегодня небыл онлайн, а у него сняло деньги) - это касается ситуации при перезагрузке системы - перед запуском все файлы today_online нужно будет записывать нулями, это касается только в случаее с ежедневным снятием абонки. Ну, вот единственное не знаю как в исходнике user.cpp читать при проверке today_online - в сяй не силен. ((( Опять может товарищ madf - подскажет как в си этот файл. А, ну еще чтобы небыло ошибки, нужно создать этот файл каждому, и при добавлении нового юзера, также добавлять этот файл. Добавить например в скрипт добавления юзера строчку с нулем. А, ну еще забыл, это схема для ежедневного снятия абонплаты. Если у вас помесячное, тогда в дисконект не нужно писать echo "0" > /var/stargazer/$Login/today_online Только вот нужно будет сделать скрипт, при переходе на новый месяц, чтобы он проверял, кто в это время не онлайн, тем записал нули.
Kucher2 Опубліковано: July 1, 2010 at 06:18 Опубліковано: July 1, 2010 at 06:18 А зачем тема нужна, если в архиве с СТГ есть дока, подробно всё описывающая. а чтобы абонплата снималась только в дни использования инета - стандартных средств нет ? Нет, только помегабайтный Инет или скрипт в OnConnect засунуть простенький: поймал юзера на подключении - абонка снялась. Естественно проверять снималась ли она уже сегодня.
Небесный Опубліковано: July 1, 2010 at 06:29 Опубліковано: July 1, 2010 at 06:29 Kucher2, с Вами согласен, решение более простое. Все равно нужно будет лезть в исходники и править снятие абонки, либо ставить тарифные планы с платой в 0 грн. И уже как бы самому оперировать снятием денег.
Kucher2 Опубліковано: July 1, 2010 at 06:42 Опубліковано: July 1, 2010 at 06:42 Все равно нужно будет лезть в исходники и править снятие абонки, либо ставить тарифные планы с платой в 0 грн.И уже как бы самому оперировать снятием денег. Именно. У меня скриптом, например, отслеживаются неплательщики и замораживаются. После последнего фикса СТГ - замечательно работает. Не думаю что Ваша задача намного сложнее, тем более что в файле stat юзера есть замечательное поле типа "LastActivityTime".
madf Опубліковано: July 1, 2010 at 07:04 Опубліковано: July 1, 2010 at 07:04 Можно сделать нулевую абонку в тарифе, а в полночь кроном запускать скрипт который будет пробегать по всем пользователям и либо грепом из log (файловая база), либо запросом из tb_sessions_log проверять наличие коннектов за сегодня и снимать абонку в "ручном" режиме. Если нужна зависимость от тарифов - еще в тарифы заглядывать.
Рекомендованные сообщения
Создайте аккаунт или войдите в него для комментирования
Вы должны быть пользователем, чтобы оставить комментарий
Создать аккаунт
Зарегистрируйтесь для получения аккаунта. Это просто!
Зарегистрировать аккаунтВхід
Уже зарегистрированы? Войдите здесь.
Войти сейчас