Zhmak 1 Опубликовано: 2011-02-01 11:48:05 Share Опубликовано: 2011-02-01 11:48:05 В январе запустил Stargazer биллинг для небольшой группы. Первый неполный месяц у всех был анлим тариф xalyava, где отключена всякая оплата. 31 числа переключил кого следует на трафик unlim с абонплатой в 325руб. Первого числа обнаружил, что абонплата снята неполностью (251,61руб). mysql> select * from tariffs; +---------+------------+------------+--------------+--------------+------------+---------+-------------+--------------+------------+------------+--------------+--------------+------------+---------+-------------+--------------+------------+------------+--------------+--------------+------------+---------+-------------+--------------+------------+------------+--------------+--------------+------------+---------+-------------+--------------+------------+------------+--------------+--------------+------------+---------+-------------+--------------+------------+------------+--------------+--------------+------------+---------+-------------+--------------+------------+------------+--------------+--------------+------------+---------+-------------+--------------+------------+------------+--------------+--------------+------------+---------+-------------+--------------+------------+------------+--------------+--------------+------------+---------+-------------+--------------+------------+------------+--------------+--------------+------------+---------+-------------+--------------+-------------+------+------+-----------+ | name | PriceDayA0 | PriceDayB0 | PriceNightA0 | PriceNightB0 | Threshold0 | Time0 | NoDiscount0 | SinglePrice0 | PriceDayA1 | PriceDayB1 | PriceNightA1 | PriceNightB1 | Threshold1 | Time1 | NoDiscount1 | SinglePrice1 | PriceDayA2 | PriceDayB2 | PriceNightA2 | PriceNightB2 | Threshold2 | Time2 | NoDiscount2 | SinglePrice2 | PriceDayA3 | PriceDayB3 | PriceNightA3 | PriceNightB3 | Threshold3 | Time3 | NoDiscount3 | SinglePrice3 | PriceDayA4 | PriceDayB4 | PriceNightA4 | PriceNightB4 | Threshold4 | Time4 | NoDiscount4 | SinglePrice4 | PriceDayA5 | PriceDayB5 | PriceNightA5 | PriceNightB5 | Threshold5 | Time5 | NoDiscount5 | SinglePrice5 | PriceDayA6 | PriceDayB6 | PriceNightA6 | PriceNightB6 | Threshold6 | Time6 | NoDiscount6 | SinglePrice6 | PriceDayA7 | PriceDayB7 | PriceNightA7 | PriceNightB7 | Threshold7 | Time7 | NoDiscount7 | SinglePrice7 | PriceDayA8 | PriceDayB8 | PriceNightA8 | PriceNightB8 | Threshold8 | Time8 | NoDiscount8 | SinglePrice8 | PriceDayA9 | PriceDayB9 | PriceNightA9 | PriceNightB9 | Threshold9 | Time9 | NoDiscount9 | SinglePrice9 | PassiveCost | Fee | Free | TraffType | +---------+------------+------------+--------------+--------------+------------+---------+-------------+--------------+------------+------------+--------------+--------------+------------+---------+-------------+--------------+------------+------------+--------------+--------------+------------+---------+-------------+--------------+------------+------------+--------------+--------------+------------+---------+-------------+--------------+------------+------------+--------------+--------------+------------+---------+-------------+--------------+------------+------------+--------------+--------------+------------+---------+-------------+--------------+------------+------------+--------------+--------------+------------+---------+-------------+--------------+------------+------------+--------------+--------------+------------+---------+-------------+--------------+------------+------------+--------------+--------------+------------+---------+-------------+--------------+------------+------------+--------------+--------------+------------+---------+-------------+--------------+-------------+------+------+-----------+ | traffik | 0.1 | 0.1 | 0 | 0 | 0 | 0:0-0:0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0:0-0:0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0:0-0:0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0:0-0:0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0:0-0:0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0:0-0:0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0:0-0:0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0:0-0:0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0:0-0:0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0:0-0:0 | 0 | 0 | 0 | 0 | 0 | down | | xalyava | 0 | 0 | 0 | 0 | 0 | 0:0-0:0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0:0-0:0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0:0-0:0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0:0-0:0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0:0-0:0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0:0-0:0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0:0-0:0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0:0-0:0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0:0-0:0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0:0-0:0 | 0 | 0 | 0 | 0 | 0 | up+down | | unlim | 0 | 0 | 0 | 0 | 0 | 0:0-0:0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0:0-0:0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0:0-0:0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0:0-0:0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0:0-0:0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0:0-0:0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0:0-0:0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0:0-0:0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0:0-0:0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0:0-0:0 | 0 | 0 | 0 | 325 | 0 | up+down | +---------+------------+------------+--------------+--------------+------------+---------+-------------+--------------+------------+------------+--------------+--------------+------------+---------+-------------+--------------+------------+------------+--------------+--------------+------------+---------+-------------+--------------+------------+------------+--------------+--------------+------------+---------+-------------+--------------+------------+------------+--------------+--------------+------------+---------+-------------+--------------+------------+------------+--------------+--------------+------------+---------+-------------+--------------+------------+------------+--------------+--------------+------------+---------+-------------+--------------+------------+------------+--------------+--------------+------------+---------+-------------+--------------+------------+------------+--------------+--------------+------------+---------+-------------+--------------+------------+------------+--------------+--------------+------------+---------+-------------+--------------+-------------+------+------+-----------+ 3 rows in set (0.00 sec) Фрагмент stargazer.conf ################################################################################ # Файл настроек сервера stargazer # ################################################################################ # Имя лог-файла куда пишутся события LogFile = /var/log/stargazer.log AdminAllowFrom = 192.168.0.110 # Имя PID-файла куда пишется идентификатор процесса # По умолчанию /var/run/pid PIDFile = /var/run/stargazer.pid # Имя файла в котором определяются правила подсчета трафика Rules = /etc/stargazer/rules # Время через которое пишется d БД детальная статистика пользователя # Значения: 1, 1/2, 1/4, 1/6. # 1 - раз в чаc, 1/2 - раз в пол часа, 1/4 - раз в 15 мин, 1/6 - раз в 10 мин DetailStatWritePeriod=1/6 # Периодичность записи записи в БД информации о статистике пользователя (минуты) # При большом кол-ве пользователей эту величину стоит увеличить, т.к. # запись в БД может занимать длительное время. # Значения: 1...1440 (минуты) StatWritePeriod = 1 # День снятия абонплаты # Значения: 0...31. 0 - Последний день месяца DayFee = 1 # Абонплата снимается в последний (yes) или первый (no) день учетного периода. # Это влияет на то, как будет снята абонплата (АП) при переходе на новый тариф. # Если у пользователя был тариф A с АП=100 и он хочет перейти на тариф B с АП=200, # то при переходе на новый тариф со счета пользователя снимется 100, если # DayFeeIsLastDay = yes и 200, если DayFeeIsLastDay = no DayFeeIsLastDay = no # День сброса данных о трафике за месяц и день перехода пользователей на новые тарифы # Значения: 0...31. 0 - Последний день месяца DayResetTraff = 1 # "Размазанное" снятие абонплаты. Снятие АП не раз в месяц, а каждый # день 1/30 или 1/31 части АП # Значения: yes, no SpreadFee = no # Данная опция определяет может ли пользователь получить доступ в интерент # если у него на счету нет денег, но остался предоплаченный трафик # Значения: yes, no FreeMbAllowInet = no # Эта опция определяет что будет писаться в стоимость трафика в detail_stat. # Если у пользователя еще есть предоплаченный трафик и WriteFreeMbTraffCost = no, # то в detail_stat стоимость будет 0. Если у пользователя уже нет # предоплаченного трафика и WriteFreeMbTraffCost = no, то в detail_stat # будет записана стоиость трафика. При WriteFreeMbTraffCost = yes стоимость # трафика будет записана в любом случае. WriteFreeMbTraffCost = no # Необязательный параметр. Указывает снимать полную абонплату у пользователя даже # если он быз заморожен только часть учетного периода. # По умолчанию установлен в no # FullFee=no # Необязательный параметр указывающий показывать на счету и позволять # использовать пользователю абонплату. По умолчанию установлен в yes # ShowFeeInCash=yes # Названия направлений. Направления без названий не будут отображаться в # авторизаторе и конфигураторе. Названия состоящие из нескольких слов должны # быть взяты в кавычки <DirNames> DirName0 = Internet DirName1 = DirName2 = DirName3 = DirName4 = DirName5 = DirName6 = DirName7 = DirName8 = DirName9 = </DirNames> # Кол-во запускаемых процессов stg-exec. # Эти процессы отвечают за выполнение скриптов OnConnect, OnDisconnect, ... # Кол-во процессов означает сколько скриптов могут выполнятся одновременно. # Значения: 1...1024 ExecutersNum = 1 # Message Key для stg-exec. # Идентификатор очереди сообщений для выполнятеля скриптов. # Его изменение может понадобится если есть необходимость запустить несколько # экземпляров stg. Если вы не понимаете, что это, не трогайте этот параметр! # Значения: 0...2^32 # Значение по умолчанию: 5555 # ExecMsgKey = 5555 # Путь к директории, в которой находятся модули сервера ModulesPath = /usr/lib/stg # Определяет директорию, в которой будут находится файлы "монитора" # работы сервера. В этой директории будут созданы пустые файлы, время # модификации которых будет меняться примерно раз в минуту. Если какой-то # компонент сервера зависнет, файл(ы) перестанет обновлятся, и по этому # признаку можно определить сбой в работе сервера и при надобности # перезапустить. Если параметр не указан или пустой, мониторинг производится # не будет. Параметр не является обязательным, по умолчанию пустой. MonitorDir=/var/stargazer/monitor События из stargazer.log в момент снятия абонплаты. 2011-02-01 00:00:01 -- Admin '@stargazer', 0.0.0.0: User 'vortex': 'tariff' parameter changed from 'xalyava' to 'unlim'. 2011-02-01 00:00:01 -- Admin '@stargazer', 0.0.0.0: User 'udovichenko': 'tariff' parameter changed from 'xalyava' to 'unlim'. 2011-02-01 00:00:01 -- Admin '@stargazer', 0.0.0.0: User 'marshall': 'tariff' parameter changed from 'xalyava' to 'unlim'. 2011-02-01 00:00:01 -- Admin '@stargazer', 0.0.0.0: User 'gena': 'tariff' parameter changed from 'xalyava' to 'unlim'. 2011-02-01 00:00:01 -- Admin '@stargazer', 0.0.0.0: User 'dima': 'tariff' parameter changed from 'xalyava' to 'unlim'. 2011-02-01 00:00:01 -- Admin '@stargazer', 0.0.0.0: User 'cccp': 'tariff' parameter changed from 'xalyava' to 'unlim'. 2011-02-01 00:00:01 -- Admin '@stargazer', 0.0.0.0: User 'zhmak': 'freeMb' parameter changed from '0.000000' to '0.000000'. Prepaid traffic 2011-02-01 00:00:01 -- Admin '@stargazer', 0.0.0.0: User 'vortex': 'freeMb' parameter changed from '0.000000' to '0.000000'. Prepaid traffic 2011-02-01 00:00:01 -- Admin '@stargazer', 0.0.0.0: User 'viktor': 'freeMb' parameter changed from '-56.329815' to '0.000000'. Prepaid traffic 2011-02-01 00:00:01 -- Admin '@stargazer', 0.0.0.0: User 'udovichenko': 'freeMb' parameter changed from '0.000000' to '0.000000'. Prepaid traffic 2011-02-01 00:00:01 -- Admin '@stargazer', 0.0.0.0: User 'sveta': 'freeMb' parameter changed from '0.000000' to '0.000000'. Prepaid traffic 2011-02-01 00:00:01 -- Admin '@stargazer', 0.0.0.0: User 'nout': 'freeMb' parameter changed from '0.000000' to '0.000000'. Prepaid traffic 2011-02-01 00:00:01 -- Admin '@stargazer', 0.0.0.0: User 'marshall_nout': 'freeMb' parameter changed from '0.000000' to '0.000000'. Prepaid traffic 2011-02-01 00:00:01 -- Admin '@stargazer', 0.0.0.0: User 'marshall': 'freeMb' parameter changed from '0.000000' to '0.000000'. Prepaid traffic 2011-02-01 00:00:01 -- Admin '@stargazer', 0.0.0.0: User 'gena': 'freeMb' parameter changed from '0.000000' to '0.000000'. Prepaid traffic 2011-02-01 00:00:01 -- Admin '@stargazer', 0.0.0.0: User 'dima': 'freeMb' parameter changed from '0.000000' to '0.000000'. Prepaid traffic 2011-02-01 00:00:01 -- Admin '@stargazer', 0.0.0.0: User 'cccp': 'freeMb' parameter changed from '0.000000' to '0.000000'. Prepaid traffic 2011-02-01 00:00:01 -- Admin '@stargazer', 0.0.0.0: User 'vortex': 'cash' parameter changed from '-437.200000' to '-688.813025'. Subscriber fee charge 2011-02-01 00:00:01 -- Admin '@stargazer', 0.0.0.0: User 'udovichenko': 'cash' parameter changed from '250.000000' to '-1.613025'. Subscriber fee charge 2011-02-01 00:00:01 -- Admin '@stargazer', 0.0.0.0: User 'marshall': 'cash' parameter changed from '0.500000' to '-251.113025'. Subscriber fee charge 2011-02-01 00:00:01 -- Admin '@stargazer', 0.0.0.0: User 'gena': 'cash' parameter changed from '310.000000' to '58.386975'. Subscriber fee charge 2011-02-01 00:00:01 -- Admin '@stargazer', 0.0.0.0: User 'dima': 'cash' parameter changed from '700.000000' to '448.386975'. Subscriber fee charge 2011-02-01 00:00:01 -- Admin '@stargazer', 0.0.0.0: User 'cccp': 'cash' parameter changed from '-361.500000' to '-613.113025'. Subscriber fee charge Непонятно, почему произошло неполное снятие абонплаты вперед (за февраль месяц). Закрадывается подозрение о том, что абонплата снята пропорционально количеству "использованных дней" в январе. Помогите разобраться. Ссылка на сообщение Поделиться на других сайтах
Zhmak 1 Опубліковано: 2011-02-01 11:51:38 Автор Share Опубліковано: 2011-02-01 11:51:38 Сейчас посчитал, получилось, что накинулась абонплата за 24 дня из 31. Почему? Ссылка на сообщение Поделиться на других сайтах
nightfly 1 239 Опубліковано: 2011-02-01 12:00:37 Share Опубліковано: 2011-02-01 12:00:37 fullfee=yes надо Ссылка на сообщение Поделиться на других сайтах
Zhmak 1 Опубліковано: 2011-02-01 12:16:18 Автор Share Опубліковано: 2011-02-01 12:16:18 Если виной всему этот параметр, то это баг. Зачем дробить абонплату за февраль из-за того, что в январе пользователь существовал неполный месяц, да еще с другим тарифом? Ссылка на сообщение Поделиться на других сайтах
nightfly 1 239 Опубліковано: 2011-02-01 12:40:04 Share Опубліковано: 2011-02-01 12:40:04 Это не баг - это фича. Оплата по факту использования услуги а не по календарному месяцу вроде как распространена среди многих провайдеров как и размазанная абонплата скажем. Кроме того все таки русским по зеленому написано: # Необязательный параметр. Указывает снимать полную абонплату у пользователя даже # если он быз заморожен только часть учетного периода. # По умолчанию установлен в no # FullFee=no неожиданно да? Ссылка на сообщение Поделиться на других сайтах
Zhmak 1 Опубліковано: 2011-02-01 13:01:19 Автор Share Опубліковано: 2011-02-01 13:01:19 (відредаговано) неожиданно да? Неожиданно! Учитывая, что # День снятия абонплаты # Значения: 0...31. 0 - Последний день месяца DayFee = 1 # Абонплата снимается в последний (yes) или первый (no) день учетного периода. # Это влияет на то, как будет снята абонплата (АП) при переходе на новый тариф. # Если у пользователя был тариф A с АП=100 и он хочет перейти на тариф B с АП=200, # то при переходе на новый тариф со счета пользователя снимется 100, если # DayFeeIsLastDay = yes и 200, если DayFeeIsLastDay = no DayFeeIsLastDay = no То есть прямо сказано, что абонплата снимается в первый день учетного периода (в данном случае февраль). Вместо этого, абонплата за февраль снимается с учетом неполного январского периода. Забыл указать, что 31 января конфигуратором сделал отложенное изменение тарифного плана, а не мгновенное. Відредаговано 2011-02-01 13:06:32 Zhmak Ссылка на сообщение Поделиться на других сайтах
madf 279 Опубліковано: 2011-02-01 13:04:53 Share Опубліковано: 2011-02-01 13:04:53 Если виной всему этот параметр, то это баг. Зачем дробить абонплату за февраль из-за того, что в январе пользователь существовал неполный месяц, да еще с другим тарифом? Это не баг. Абонплата снимается пропорционально времени активности абонента. Так, например, если абонент был пол месяца "заморожен" или создан в середине месяца - снимется половина абонплаты. Ссылка на сообщение Поделиться на других сайтах
madf 279 Опубліковано: 2011-02-01 13:13:45 Share Опубліковано: 2011-02-01 13:13:45 неожиданно да? Неожиданно! Учитывая, что # День снятия абонплаты # Значения: 0...31. 0 - Последний день месяца DayFee = 1 # Абонплата снимается в последний (yes) или первый (no) день учетного периода. # Это влияет на то, как будет снята абонплата (АП) при переходе на новый тариф. # Если у пользователя был тариф A с АП=100 и он хочет перейти на тариф B с АП=200, # то при переходе на новый тариф со счета пользователя снимется 100, если # DayFeeIsLastDay = yes и 200, если DayFeeIsLastDay = no DayFeeIsLastDay = no То есть прямо сказано, что абонплата снимается в первый день учетного периода (в данном случае февраль). Вместо этого, абонплата за февраль снимается с учетом неполного январского периода. Забыл указать, что 31 января конфигуратором сделал отложенное изменение тарифного плана, а не мгновенное. Как правильно написано в комментарии, DayFeeIsLastDay влияет только на то по какому тарифу будет снята абонплата. yes - по старому, no - по новому. Ссылка на сообщение Поделиться на других сайтах
zulu_Radist 856 Опубліковано: 2011-02-01 13:15:36 Share Опубліковано: 2011-02-01 13:15:36 Обожаю наблюдать такие топики каждое начало нового месяца Ссылка на сообщение Поделиться на других сайтах
madf 279 Опубліковано: 2011-02-01 15:01:42 Share Опубліковано: 2011-02-01 15:01:42 Обожаю наблюдать такие топики каждое начало нового месяца Скоро придется писать мануал по работе тарифов Ссылка на сообщение Поделиться на других сайтах
Zhmak 1 Опубліковано: 2011-02-01 15:19:29 Автор Share Опубліковано: 2011-02-01 15:19:29 Обожаю наблюдать такие топики каждое начало нового месяца Скоро придется писать мануал по работе тарифов Если топики возникают так часто, то это просто необходимо Я правильно понял, что stargazer работает по кредитной схеме, когда снятие абонплаты проходит только в конце учетного периода? От того, мои попытки настроить схему с предоплаченной услугой потерпели неудачу. Ссылка на сообщение Поделиться на других сайтах
nightfly 1 239 Опубліковано: 2011-02-01 15:35:00 Share Опубліковано: 2011-02-01 15:35:00 От того, мои попытки настроить схему с предоплаченной услугой потерпели неудачу. Нет - просто изза игнорирования документации и коментов в конфиге. Испокон веков продаем только припейд и только по полной абонплате. Проблем не наблюдаем. Ссылка на сообщение Поделиться на других сайтах
keshaLG 5 Опубліковано: 2011-02-01 17:25:44 Share Опубліковано: 2011-02-01 17:25:44 .....в конфиге. Испокон веков продаем только припейд и только по полной абонплате.... Брррр... А можно листинг Вашего правильного конфига? Честно говоря, думал по той же логике, а именно работать только по предоплате. Но при этом, если юзер был заморожен пол месяца - оплатить он должен по факту оставшихся дней в месяце разморозки, для этого в статистике считаю их и вычисляю сколько снять за текущий мес. А получается, что СТГ снимает абонку не по предоплате - я правильно понял? Ссылка на сообщение Поделиться на других сайтах
keshaLG 5 Опубліковано: 2011-02-01 17:28:10 Share Опубліковано: 2011-02-01 17:28:10 вот собственно и проблема Ссылка на сообщение Поделиться на других сайтах
yKpon 8 Опубліковано: 2011-02-01 18:03:57 Share Опубліковано: 2011-02-01 18:03:57 Если топики возникают так часто, то это просто необходимо Я правильно понял, что stargazer работает по кредитной схеме, когда снятие абонплаты проходит только в конце учетного периода? От того, мои попытки настроить схему с предоплаченной услугой потерпели неудачу. я тоже как то интересовался этим вопросом, у меня тоже систеама работает по предоплате, от функции "заморозка счёта" отказался, пересчитываю при возобновлении обслуживания вручную честно говоря всё таки хотелось бы видеть в стг начисление абонплаты независимо от фактической работы в сети, а от календарного месяца Ссылка на сообщение Поделиться на других сайтах
OriNet 5 Опубліковано: 2011-02-01 21:00:03 Share Опубліковано: 2011-02-01 21:00:03 Раз уж тут завелась тема про тарифы/абонплату, то спрошу и я, чтоб не начинать новый топик в начале месяца После перехода на сервер 2.406 (до этого кажись был 2.401, были проблемы с файлами статистики пользователей) все было гуд до первого числа. Да и щас работает в принципе нормально, если не считать что у пользователей которым сняло абонплату и на счету стало 0, все равно осталась возможность ходить в инет. Раньше такого не было, ноль - значит доступа нету. Сейчас если выставить на счет отрицательную сумму то доступ блокируется, но мне это не совсем нравится. Где может быть ошибка? stargazer.conf --- DayFee = 1 DayFeeIsLastDay = yes DayResetTraff = 1 SpreadFee = no FreeMbAllowInet = no WriteFreeMbTraffCost = no Ссылка на сообщение Поделиться на других сайтах
nightfly 1 239 Опубліковано: 2011-02-01 21:44:02 Share Опубліковано: 2011-02-01 21:44:02 keshaLG DayFee = 1 DayFeeIsLastDay = no DayResetTraff = 1 SpreadFee = no FreeMbAllowInet = no FullFee=yes WriteFreeMbTraffCost = no А в чем проблема? Если тариф стоит 50 грн - эти 50 грн железно снимаются. Нету бабок - нету инета. Кажись все логично. Нормальное состояние пользователя - кеш либо в плюсе либо в нуле что тоже плюс если подумать логически с точки зрения "припейда". Тобиш исходя из логики "если бабки есть - они есть на будущее" либо "если бабок ноль значит услуга есть бабок за нее уже нет(тобишь бабки за нее мы уже захавали)" либо "если бабок меньше нуля - услуги нет, бабок нет, щастья нет". Ссылка на сообщение Поделиться на других сайтах
OriNet 5 Опубліковано: 2011-02-01 22:01:54 Share Опубліковано: 2011-02-01 22:01:54 да вроде как и логика понятна, и что ноль с точки зрения математики число положительное, но когда "балланс = 0 значит счастья нет" было лучше в конфиге никак нельзя выставить чтоб было так? я думал что причина в FreeMbAllowInet, вот если б этот параметр был выставлен в yes то я был бы со всем согласен. а так наверное прийдется стоимость тарифа делать на 1 грн больше чем абонент кладет на счет... или даже не знаю как выкрутиться. Ссылка на сообщение Поделиться на других сайтах
nightfly 1 239 Опубліковано: 2011-02-01 22:08:16 Share Опубліковано: 2011-02-01 22:08:16 да вроде как и логика понятна, и что ноль с точки зрения математики число положительное, но когда "балланс = 0 значит счастья нет" было лучше в конфиге никак нельзя выставить чтоб было так? Не терпится потоптаться на трупе бабушки математики и тетушки логики? Как-то за последних лет 10 привык что и у людей где раньше работал, и у самого как и у большинства окружающих провайдеров - ноль всетаки "положительное" число символизирущее таки свершившийся факт оплаты абонентом услуги которая должна бы таки ему предоставиться. Ссылка на сообщение Поделиться на других сайтах
OriNet 5 Опубліковано: 2011-02-01 22:40:58 Share Опубліковано: 2011-02-01 22:40:58 Не терпится потоптаться на трупе бабушки математики и тетушки логики? Ну, не знаю... не хочется вступать в полемику со старыми морскими волками, но я рассуждаю так: если у юзера на счету больше нуля - работай на здоровье. если ноль - доступ есть если есть предоплаченные мегабайты и FreeMbAllowInet = yes, если no - доступа нет. если меньше нуля - доступа нет в любом случае. жаль, что в предыдущей версии было так, а в новой - по-другому. или я все-таки что-то напутал в конфиге? Ссылка на сообщение Поделиться на других сайтах
madf 279 Опубліковано: 2011-02-02 10:00:29 Share Опубліковано: 2011-02-02 10:00:29 Раз уж тут завелась тема про тарифы/абонплату, то спрошу и я, чтоб не начинать новый топик в начале месяца После перехода на сервер 2.406 (до этого кажись был 2.401, были проблемы с файлами статистики пользователей) все было гуд до первого числа. Да и щас работает в принципе нормально, если не считать что у пользователей которым сняло абонплату и на счету стало 0, все равно осталась возможность ходить в инет. Раньше такого не было, ноль - значит доступа нету. Сейчас если выставить на счет отрицательную сумму то доступ блокируется, но мне это не совсем нравится. Где может быть ошибка? stargazer.conf --- DayFee = 1 DayFeeIsLastDay = yes DayResetTraff = 1 SpreadFee = no FreeMbAllowInet = no WriteFreeMbTraffCost = no Да, действительно, с версии 2.401.6.7 эта логика поменялась. Ссылка на сообщение Поделиться на других сайтах
madf 279 Опубліковано: 2011-02-02 10:02:34 Share Опубліковано: 2011-02-02 10:02:34 да вроде как и логика понятна, и что ноль с точки зрения математики число положительное, но когда "балланс = 0 значит счастья нет" было лучше в конфиге никак нельзя выставить чтоб было так? я думал что причина в FreeMbAllowInet, вот если б этот параметр был выставлен в yes то я был бы со всем согласен. а так наверное прийдется стоимость тарифа делать на 1 грн больше чем абонент кладет на счет... или даже не знаю как выкрутиться. С точки зрения математики число 0 не является ни положительным, ни отрицательным. FreeMbAllowInet только разрешает доступ в Internet при отрицательном балансе в случа если еще остались бесплатные мегабайты. Ссылка на сообщение Поделиться на других сайтах
madf 279 Опубліковано: 2011-02-02 10:04:01 Share Опубліковано: 2011-02-02 10:04:01 Не терпится потоптаться на трупе бабушки математики и тетушки логики? Ну, не знаю... не хочется вступать в полемику со старыми морскими волками, но я рассуждаю так: если у юзера на счету больше нуля - работай на здоровье. если ноль - доступ есть если есть предоплаченные мегабайты и FreeMbAllowInet = yes, если no - доступа нет. если меньше нуля - доступа нет в любом случае. жаль, что в предыдущей версии было так, а в новой - по-другому. или я все-таки что-то напутал в конфиге? Логика проста: услуга стоит 10 денег, абонент заплатил 10 денег, 10 - 10 = 0 - абонент доллжен получать услугу за которую заплатил. Ссылка на сообщение Поделиться на других сайтах
keshaLG 5 Опубліковано: 2011-02-02 22:24:16 Share Опубліковано: 2011-02-02 22:24:16 Логика проста: услуга стоит 10 денег, абонент заплатил 10 денег, 10 - 10 = 0 - абонент доллжен получать услугу за которую заплатил. Ну да железная логика, я тоже так думал. А как можно объяснить это? Да конечно, там "заморозкой/разморозкой" усложняется все. И походу, если DayFeeIsLastDay = no СТГ в момент разморозки должен снимать за оставшиеся дни в тек. месяце. А я хотел бы вернуться к вопросу топикстартера: "Почему при DayFeeIsLastDay = no абонка снялась за прошлый мес.?" Или я чего-то не понимаю, за что прошу заранее прощение и спасибо за Ваши разъяснения. PS Спасибо nightfly за конфиг Ссылка на сообщение Поделиться на других сайтах
Kucher2 122 Опубліковано: 2011-02-03 06:20:45 Share Опубліковано: 2011-02-03 06:20:45 Потому что Вы не прочли или не вникли в описание функции. DayFeeIsLastDay – параметр, указывающий серверу, когда абонплатаснимается в последний (yes) или первый (no) день учетного периода. Это влияет на то, как будет снята абонплата (АП) при переходе на новый тариф. Если у пользователя был тариф A с АП=100 и он хочет перейти на тариф B с АП=200, то при переходе на новый тариф со счета пользователя снимется 100, если DayFeeIsLastDay = yes, и 200, если DayFeeIsLastDay = no. По умолчанию DayFeeIsLastDay = yes. Т.е. если "DayFeeIsLastDay = no" - абонка снимется ИМЕННО за прошлый месяц. Если у вас включена заморозка и конфиг похож на конфиг от nightfly - абонка снимется только в том случае, если на момент её снятия (первое число) юзер был разморожен, иначе никаких изменений баланса не будет. У меня конфиг был именно таким образом настроен - очень удобно и понятно: первого числа за месяц АП снялась - если деньги есть, то юзер работает, если не хватает - баланс отрицательный и Инета нет. Скрипт 28-го числа проверял баланс. Если он меньше минус 1, то заморозка. Разморозка через личную страничку. Хоть через год - долг не накапливается, но будь добр заплатить задолженность и ещё 40 грн компенсации за удержание аккаунта (за разморозку). И все были счастливы. Почитайте файл PDF, который в архиве с СТГ идёт, там очень много полезных вещей написано. Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Создайте аккаунт или войдите в него для комментирования
Вы должны быть пользователем, чтобы оставить комментарий
Создать аккаунт
Зарегистрируйтесь для получения аккаунта. Это просто!
Зарегистрировать аккаунтВхід
Уже зарегистрированы? Войдите здесь.
Войти сейчас