Користувальницькькі налаштування

Налаштування сайту


crimeandpunishment

Розбіжності

Тут показані розбіжності між вибраною ревізією та поточною версією сторінки.

Посилання на цей список змін

Порівняння попередніх версій Попередня ревізія
Попередня ревізія
crimeandpunishment [2015/05/31 01:43]
crimeandpunishment [2023/06/15 21:42] (поточний)
bobr [Як конфігурується?]
Рядок 1: Рядок 1:
 +====== Злочин та кара ======
 +{{ :raskolnikovsaxe.jpg?300|}}
 +Починаючи з Ubilling 0.6.7 реалізовано нову механіку <del>вбивства старушенцій</del> нарахування штрафів, за перебування абонентом у неактивному (читаємо - неоплаченому) стані впродовж певного інтервалу, який зазначається в кількості днів. Штраф нараховується одноразово, при досягненні абонентом зазначеного порогу.  
  
 +====== Як конфігурується? ======
 +Вся обробка здійснюється щоденним викликом відповідного action з [[remoteapi|Remote API]] - crimeandpunishment.  В кроні краще розмістити її вже після нарахування абонплати та інших дій, що зачіпають баланс абонента. Наприклад ось так:
 +
 +<code bash>
 +2 2 * * *       /bin/ubapi "crimeandpunishment"
 +</code>
 +
 +Поведінка цього механізму повністю регулюється за допомогою таких опцій [[alteriniconf|alter.ini]] ось в такому вигляді для прикладу:\\
 +
 +<code ini>
 +CAP_ENABLED=1
 +CAP_DAYLIMIT=30
 +CAP_PENALTY_PERCENT=0
 +CAP_PENALTY=20
 +CAP_PAYID=1
 +CAP_IGNOREFROZEN=1
 +</code>
 +
 +====== Що взагалі відбувається? ======
 +Призначено це все для опису бізнес логіки такого вигляду: 
 +  * Абонент //Родіон Романович// забув оплатити інтернет і раптово стан його рахунку став меншим за кредитний ліміт.
 +  * Він не є замороженим - ігнорування цього факту відбувається за допомогою **CAP_IGNOREFROZEN**.
 +  * Для нього заводиться відповідний запис у БД і лічильник днів неактивності виставляється в 1 (один).
 +  * Якщо лічильник неактивності вже існує - до нього додається ще один день, на шляху до невідворотного кінця.
 +  * Якщо лічильник неактивності Раскольнікова стає рівним кількості в 30 днів - **CAP_DAYLIMIT** - відбувається зняття суми 20 грошей **CAP_PENALTY** з рахунку, під виглядом платежу типу "готівка" **CAP_PAYID**
 +  * Лічильник продовжує тікати... ну так... про всяк випадок.
 +  * Якщо абонент розкаявся і вніс на рахунок суму, достатню для погашення боргу (або Баланс почав дорівнювати кредитному ліміту) - лічильник неактивності виставляється в 0 (нуль) і продовжує очікувати подальшого розвитку подій <del>у засідці</del>
 +  * Про всі ці цікаві події можна дізнатися за допомогою відповідного модуля "Чорної магії":
 +{{:dostoevsky.png?|}}