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

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


Сайдбар

Розділи

Загальний опис
Історія змін
Рекомендації щодо оновлення
Плани на майбутнє
Відомі проблеми
Онлайн демо
Люди
Трохи про безпеку

FAQ



Редагувати сайдбар

megogo

Megogo

Модуль складається з декількох частин, і призначений для управління і тарифікації підписок користувачів на сервісі megogo.net. Модуль підтримує як помісячну так і подобову моделі нарахування АП.

Базова конфігурація Ubilling

З точки зору Ubilling усе керується такими опціями alter.ini:

alter.ini
MG_ENABLED=1
MG_PARTNERID="testpartner"
MG_PREFIX="OurISP"
MG_SALT="guessmeifyoucan"
MG_SPREAD=0
MG_PERCENT=15
MG_CUSTOM_PERCENTS="1:30,2:30,3:15"
MG_FREEPERIOD_DAYS=14
MG_DOMAIN="ourisp.com"

Тарифікація і ввімкнення/вимкнення підписок здійснюється за допомогою таких викликів RemoteAPI, для помісячного (MG_SPREAD=0) нарахування АП:

crontab
19 1 * * *      /bin/ubapi "mgfreecleanup"
20 1 1 * *      /bin/ubapi "mgqueue"
21 1 1 * *      /bin/ubapi "mgprocessing"

І для подобового (природно потрібно MG_SPREAD=1):

crontab
20 1 1 * *      /bin/ubapi "mgqueue"
21 1 * * *      /bin/ubapi "mgprocessing"

Як не складно помітити, mgqueue спочатку здійснює обробку заявок на відключення з черги, після чого відбувається зняття АП за всіма активними підписками за допомогою mgprocessing. У цей же час примусово ліквідуються тестові підписки з безкоштовним періодом. Для валідного очищення підписок із тестовим періодом починаючи з релізу 1.1.3 можна використовувати виклик mgfreecleanup у комплексі з опцією MG_FREEPERIOD_DAYS, що встановлює жорстку кількість днів, після якої підписку буде видалено. По-хорошому, цей виклик має здійснюватися до mgqueue і mgprocessing.

Конфігурація кабінету користувача

З точки зору кабінету - все ще простіше.

userstats.ini
MG_ENABLED=1
MG_PROTECTION=1
MG_TARIFFSALLOWED=""
MG_GUIDE_URL=""
API_URL="http://billing.isp/"
API_KEY="UBxxxxxxxxxxxxxxxx"

Власне зрозуміло, що URL до встановленого Ubilling і його серійник мають бути валідними, для адекватного спілкування кабінету з білінгом, за допомогою RemoteAPI. Опція MG_PROTECTION у ввімкненому вигляді - актуальна в разі помісячної тарифікації послуг.

Заради чого все це?

Для того, щоб за допомогою відповідного модуля

Ми могли додати актуальні тарифи, і задати послуги, що надаються нами користувачам

Користувачі зможуть спробувати оформити підписку у себе в кабінеті. Природно статися це все може, тільки якщо користувач не є замороженим, відключеним, і у нього на рахунку достатньо коштів.

Який вигляд мають оформлені підписки для користувача? Ось якось так це і має виглядати.

Під час передплати залежно від значення MG_SPREAD (0 - нормальна щомісячна АП, 1 - розмазана АП) з рахунку користувача буде знято вартість або місячної, або добової АП. Заміна основної підписки проводиться шляхом відписки, і подальшої підписки на нову, тільки з настанням наступного місяця. Цим займається обробник черги mgqueue. Зроблено так, заради простоти взаєморозрахунків і швидкого виявлення конфліктів, користувача, провайдера, і сервісу Megogo.
Починаючи з релізу 0.7.5 перед нарахуванням АП перевіряється, чи не викличе це заборгованості на рахунку користувача. Якщо це має шанс статися - підписка буде насильно деактивована і нарахування АП проводитися не буде. Звісно, кожна підписка розглядається в цьому контексті окремо. Тобто якщо у користувача тариф інтернету за 100 грошей, а також додатково активовані передплати за 37 і 59 грошей (ага, разом все коштує 196 грошей на місяць), а на рахунку є 137 грошей, спочатку буде нараховано АП за інтернет (-100), потім по черзі розглянуті передплати, продовжено передплату, що коштує 37 грошей, і насильно деактивовано передплату за 59, оскільки її продовження точно викличе заборгованість на рахунку користувача (-59 грошей). І так - все це має сенс тільки для помісячної АП.

Починаючи з релізу Ubilling 1.1.8, відходить у небуття стара авторизація, з прив'язкою партнерського акаунта користувача до наявного облікового запису на megogo.net за допомогою чарівної кнопки “Перейти на Megogo”. На заміну цьому приходить нова модель авторизації за допомогою автоматичної реєстрації користувачів на megogo.net за допомогою виклику changeCredentials і нової магічної кнопки “Продовжити”. Обов'язковою для цього є нормально заповнена опція MG_DOMAIN. Наприклад якось так:

MG_DOMAIN="voslavusatane.net.ua"

Під час активації підписки користувачем, для нього автоматично реєструватиметься акаунт на сайті megogo.net такого вигляду логин_пользователя@voslavusatane.net.ua і використовуватиметься за замовчуванням пароль від основного профілю користувача. Це ж усе, в разі успіху, буде показуватися в кабінеті користувача якось так:

Так само всі дані авторизації показуються і в інтерфейсі адміністратора. На випадок, якщо “користувач забув пароль, який він бачить у себе в кабінеті” або “він його випадково змінив на сайті”, ви завжди можете взяти і в ручному режимі зі свого боку натиснути йому повторно “реєстрацію користувача” і оновити дані авторизації цього користувача “на сайті”, примусово зі свого боку.

Про безкоштовний період

Якщо підписка має безкоштовний період (aka try&buy) і користувач раніше не був підписаний, ні на один інший, або на цей самий тариф із безкоштовним періодом, під час його активації АП не стягується (точніше стягується, але в сумі “0” грошей). І дана підписка в списку і кабінеті користувача буде фігурувати саме як з “безкоштовним періодом”.

Її самоліквідація відбудеться залежно від значення MG_SPREAD - або з настанням нового місяця в разі повної тарифікації, або через 30 календарних днів з моменту активації, в разі розмазаної АП. Після чого користувач може відновити підписку на цей, або інший сервіс, але безкоштовного періоду для нього вже не настане, і тарифікуватися він буде на загальних обставинах.
Починаючи з релізу Ubilling 1.1.3 для очищення “прострочених” підписок із безоплатним періодом рекомендується використовувати виклик mgfreecleanup у комплексі з опцією MG_FREEPERIOD_DAYS, що встановлює жорстку кількість днів, після якої підписку буде видалено.

Звітність

Звіт слугує для контролю взаєморозрахунків, і вміє обробляти як помісячну, так і подобову тарифікацію послуг і показувати кількість підписок за місяць або кількість тарифікованих днів щодо тарифних планів. Ну і звісно ж рахує кінцевий профіт провайдера ;)

Місячний звіт:

Добовий звіт

Алярма

Якщо будете змінювати IP-адресу білінгу, все перестане працювати. З боку Мегого адреса жорстко прибита, у разі заміни треба їх повідомити.

megogo.txt · Востаннє змінено: 2023/06/20 11:51 повз borisov