Ineu Опубликовано 1 декабря, 2006 Жалоба Поделиться Опубликовано 1 декабря, 2006 Столкнулся с проблемой, не приходит в голову ничего... В старом биллинге были механизмы учета трафика: 1. входящий 2. исходящий 3. суммарный 4. больший 5. меньший Если первые три пункта понятны, то последние два - не понимаю, как считать. Реально определить бОльший или меньший трафик можно только по окончании сессии, но проводить процедуру биллинга надо ежеминутно. Понятно, что определять больший/меньший трафик по состоянию на данную минуту бессмыслено, поскольку уже в следующую все может поменяться... Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Hans R. Steiner Опубликовано 5 декабря, 2006 Автор Жалоба Поделиться Опубликовано 5 декабря, 2006 Считать надо оба сразу и периодически, проверять, какой из них больше... соответственно, так и счет выставлять. Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Ineu Опубликовано 5 декабря, 2006 Жалоба Поделиться Опубликовано 5 декабря, 2006 Hans R. Steiner писал(а) Tue, 05 December 2006 17:24 Считать надо оба сразу и периодически, проверять, какой из них больше... соответственно, так и счет выставлять. Получается так: 1 минута - больше нисходящий - считаем его, деньги тут же снимаем за него 2 минута - больше восходящий - считаем уже его, снимаем деньги за него Так делать нельзя, потому что конечная цифра получается некорректной. Например Ставка = 1 д.е./мб 1 минута Восх = 5 Исх = 4 Снято денег = 5 (за восх) 2 минута Восх = 1 Исх = 3 Снято денег = 3 (за нисх) Итого Восх = 6 Нисх = 7 Снято денег = 8 Т.о. снято 8 д.е., когда реально, по состоянию на конец сессии, должно быть снято 7. А проверять по окончании сессии невозможно, поскольку услуга препэйд и надо тарифицировать ежеминутно и по достижении нулевого баланса отключать. Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
vpk_vpk Опубликовано 5 декабря, 2006 Жалоба Поделиться Опубликовано 5 декабря, 2006 А если складывать отдельно вх. и исх., а по достижении каким-либо из них предела обрывать сессию и снимать деньги? Зачем реально снимать деньги ежеминутно? Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Hans R. Steiner Опубликовано 6 декабря, 2006 Автор Жалоба Поделиться Опубликовано 6 декабря, 2006 Допустим: $BILLNOW = счет пользователя $BILLNEW = счет пользователя $TRAF_IN = деньги за входящий трафик $TRAF_OUT = деньги за исходящий трафик каждую минуту: if ( $TRAF_IN >= $TRAF_OUT ) { $BILLNEW = $BILLNOW - $TRAF_IN } else { $BILLNEW = $BILLNOW - $TRAF_OUT } $BILLLAST = $BILLNEW; после разрыва сессии: $BILLNOW = $BILLLAST; Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Ineu Опубликовано 6 декабря, 2006 Жалоба Поделиться Опубликовано 6 декабря, 2006 2vpk То есть, вычислить в начале сессии лимит трафика как баланс/ставка за метр? Во-первых, пользователь не любит считать и предпочитает видеть, сколько у него денег на счету на данный момент, а не сколько у него было до начала сессии и сколько должно за сессию сняться. Во-вторых, само вычисление не всегда возможно. Например, если ставка различается во времени - днем одна цена, ночью другая - то невозможно определить, по какой ставке считать трафик, поскольку неизвестно, как долго будет длиться сессия и на какой период ее придется бОльшая часть трафика. 2Hans Опять же, получается, что манипуляции со счетом производим в конце сессии, что не есть хорошо. Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
vpk_vpk Опубликовано 6 декабря, 2006 Жалоба Поделиться Опубликовано 6 декабря, 2006 IMHO, в таком случае вопрос нужно решать не математически, а юридически (в договоре). Нет понятия "больший/меньший трафик", есть понятие "больший/меньший трафик за какой-то период". В договоре нужно определить этот период, а потом уже включать математику. Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Hans R. Steiner Опубликовано 6 декабря, 2006 Автор Жалоба Поделиться Опубликовано 6 декабря, 2006 Цитата: Опять же, получается, что манипуляции со счетом производим в конце сессии, что не есть хорошо. Не совсем так. Вычисление проводится ежеминутно, но фиксируется оно после окончания сессии. А пользователю, можно показывать не $BILLNOW а $BILLNEW PS^ и рвать сессию можно по $BILLNEW а не по $BILLNOW Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Ineu Опубликовано 6 декабря, 2006 Жалоба Поделиться Опубликовано 6 декабря, 2006 vpk писал(а) Wed, 06 December 2006 12:45 IMHO, в таком случае вопрос нужно решать не математически, а юридически (в договоре). Нет понятия "больший/меньший трафик", есть понятие "больший/меньший трафик за какой-то период". В договоре нужно определить этот период, а потом уже включать математику. Под периодом подразумевается сессия, при любом способе учета. Нельзя же говорить пользователю, что учитывается такой-то трафик, но только в том случае, если продолжительность сессии будет больше опр. значения. Продолжительность сессии может быть любой, от минуты до нескольких суток. Соотв. и больший/меньший трафик за сессию, но учитываться и тарифицироваться все должно в реалтайме, не обязательно даже ежеминутно, может и чаще. Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.