dummy 8 Опубликовано: 2010-06-25 06:38:45 Share Опубликовано: 2010-06-25 06:38:45 Предлагаю создать тему, где обсуждаются параметры конфигурации stargazer.conf Меня интересует параметр: # "Размазанное" снятие абонплаты. Снятие АП не раз в месяц, а каждый # день 1/30 или 1/31 части АП # Значения: yes, no SpreadFee = no как его понять: абонплата снимается каждый день или только за те дни, в которые пользователь подключался ? и если 2 вариант, то по пользователю за месяц может получаться сумма меньше установленной абонплаты ? Ссылка на сообщение Поделиться на других сайтах
madf 279 Опубліковано: 2010-06-25 07:26:42 Share Опубліковано: 2010-06-25 07:26:42 Предлагаю создать тему, где обсуждаются параметры конфигурации stargazer.conf Меня интересует параметр: # "Размазанное" снятие абонплаты. Снятие АП не раз в месяц, а каждый # день 1/30 или 1/31 части АП # Значения: yes, no SpreadFee = no как его понять: абонплата снимается каждый день или только за те дни, в которые пользователь подключался ? и если 2 вариант, то по пользователю за месяц может получаться сумма меньше установленной абонплаты ? Каждый день. Ссылка на сообщение Поделиться на других сайтах
dummy 8 Опубліковано: 2010-07-01 01:10:27 Автор Share Опубліковано: 2010-07-01 01:10:27 а чтобы абонплата снималась только в дни использования инета - стандартных средств нет ? Ссылка на сообщение Поделиться на других сайтах
Небесный 26 Опубліковано: 2010-07-01 05:18:29 Share Опубліковано: 2010-07-01 05:18:29 Я так понял у вас используется подключение юзеров через авторизатор. В скрипт 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 122 Опубліковано: 2010-07-01 06:18:31 Share Опубліковано: 2010-07-01 06:18:31 А зачем тема нужна, если в архиве с СТГ есть дока, подробно всё описывающая. а чтобы абонплата снималась только в дни использования инета - стандартных средств нет ? Нет, только помегабайтный Инет или скрипт в OnConnect засунуть простенький: поймал юзера на подключении - абонка снялась. Естественно проверять снималась ли она уже сегодня. Ссылка на сообщение Поделиться на других сайтах
Небесный 26 Опубліковано: 2010-07-01 06:29:35 Share Опубліковано: 2010-07-01 06:29:35 Kucher2, с Вами согласен, решение более простое. Все равно нужно будет лезть в исходники и править снятие абонки, либо ставить тарифные планы с платой в 0 грн. И уже как бы самому оперировать снятием денег. Ссылка на сообщение Поделиться на других сайтах
Kucher2 122 Опубліковано: 2010-07-01 06:42:12 Share Опубліковано: 2010-07-01 06:42:12 Все равно нужно будет лезть в исходники и править снятие абонки, либо ставить тарифные планы с платой в 0 грн.И уже как бы самому оперировать снятием денег. Именно. У меня скриптом, например, отслеживаются неплательщики и замораживаются. После последнего фикса СТГ - замечательно работает. Не думаю что Ваша задача намного сложнее, тем более что в файле stat юзера есть замечательное поле типа "LastActivityTime". Ссылка на сообщение Поделиться на других сайтах
madf 279 Опубліковано: 2010-07-01 07:04:09 Share Опубліковано: 2010-07-01 07:04:09 Можно сделать нулевую абонку в тарифе, а в полночь кроном запускать скрипт который будет пробегать по всем пользователям и либо грепом из log (файловая база), либо запросом из tb_sessions_log проверять наличие коннектов за сегодня и снимать абонку в "ручном" режиме. Если нужна зависимость от тарифов - еще в тарифы заглядывать. Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Создайте аккаунт или войдите в него для комментирования
Вы должны быть пользователем, чтобы оставить комментарий
Создать аккаунт
Зарегистрируйтесь для получения аккаунта. Это просто!
Зарегистрировать аккаунтВхід
Уже зарегистрированы? Войдите здесь.
Войти сейчас