Зміст

Кабінет користувача

Налаштування кабінету користувача

знаходяться в userstats/config/userstats.ini

тип авторизації, в даний момент підтримуються методи ip (безпарольний вхід), login (за зв'язкою логін+пароль) і both (спочатку пробуємо вгадати користувача по IP, якщо не вдалося - показуємо форму входу по логіну та паролю)

auth=ip

URL за яким буде перенаправлений користувач у разі неможливості знайти відповідність при auth=ip

authfailredir="http://ubilling.net.ua/"

мова інтерфейсу за замовчуванням, можливі значення: ukrainian, english, russian…

lang = ukraininan

Дозволяти користувачеві самостійно обирати мову?

allowclang=1

Валюта

currency=UAH

Ім'я шаблону за замовчуванням

SKIN="paper"
  

Кастомний бекграунд. Варто вказувати або DEFAULT або ім'я якогось з тайлів tiles, що лежать у директорії tiles (наприклад tile1.jpg або скажімо tile5.jpg). Також може приймати RANDOM для вибору випадкового фону. (Працює тільки зі старим шаблоном default)

BACKGROUND="DEFAULT"  

Найменування провайдера

ISP_NAME="Роги&Копита"

Посилання на сайт провайдера

ISP_URL="http://ubilling.net.ua"  

URL зображення з логотипом провайдера, дві попередні опції також мають бути заповнені. Пам'ятаємо, що skins/ затирається під час оновлень і варто вкзати посилання на якесь безпечніше місце для вашого логотипу.

ISP_LOGO="skins/ublogo.png"  

налаштування sgconf для взаємодії зі stargazer

SGCONF = /usr/sbin/sgconf
STG_HOST = localhost
STG_PORT = 5555
STG_LOGIN = admin
STG_PASSWD = 123456

Чи ввімкнено самостійну зміну тарифів користувачами?

TC_ENABLED = 1

Ціна зміни тарифу на тариф з більшою АП

TC_PRICEUP = 0

Вартість зміни тарифу на тариф із меншою АП

TC_PRICEDOWN = 25

Ціна зміни тарифу на тариф з однаковою АП

TC_PRICESIMILAR = 0

Чи встановлювати кредит на суму вартості зміни тарифу у разі нестачі коштів на рахунку?

TC_CREDIT=1

ID типу оплати під яким проводитимуться зняття грошей за використання послуги

TC_CASHTYPEID=1

Тарифи на які дозволено перехід (розділювач кома)

TC_TARIFFSALLOWED = tariff,Unlim-5

Тарифи з яких доступний перехід на тарифи вказані в опції вище (розділ кома)

TC_TARIFFENABLEDFROM = tariff,Unlim-5

Розширена матриця переходу між тарифами що керується за допомогою tariffmatrix.ini Увімкнення опції призведе до ігнорування TC_TARIFFSALLOWED та TC_TARIFFENABLEDFROM

TC_EXTENDED_MATRIX=0

Необов'язкова опція, що включає перехід за тарифом “прямо зараз”. Не вмикайте без повного розуміння наслідків! Власне працювати воно може адекватно, тільки в операторів з поденним нарахуванням АП, а також платними переходами між тарифами у будь-який бік.

;TC_RIGHTNOW=0  

Чи включено самокредитування?

SC_ENABLED = 1

Початкова дата від якої самокредитування доступне

SC_MINDAY = 1

Максимальне число місяця, до якого самокредитування доступне

SC_MAXDAY = 7

Термін на який надається кредитна лінія (кількість днів)

SC_TERM = 3

Вартість послуги самокредитування

SC_PRICE = 5

ID типу оплати під яким проводитимуться зняття грошей за використання послуги

SC_CASHTYPEID=1

Контролювати можливість скористатися функцією кредитування лише раз на місяць

SC_MONTHCONTROL=1

Список тарифів, для яких дозволено використання послуги кредитування. Якщо порожній - дозволено всім. Розділювач - кома.

SC_TARIFFSALLOWED=""

Чи враховувати вартість віртуальних сервісів під час видачі кредиту?

SC_VSCREDIT=0

Виправляє кредитування під час використання тарифів з періодом “день”. Необов'язкова настройка. Розкоментуйте для увімкнення. Кредит буде встановлено на abs(стан рахунку)+(вартість тарифу*кількість днів кредиту). Інакше кредит для подобових тарифів буде встановлено на місячну вартість тарифу.

;SC_DAILY_FIX=1

Виправляє проблеми з активацією користувачів під час використання NAS на MikrotikAPI. Можливі значення: 0 - вимкнено, 1 - використовувати для ресета прапор Down, 2 - використовувати для ресета прапор AlwaysOnline. Необов'язкова настройка. А взагалі краще використовуйте КупаГен для своїх NAS і забудьте ці проблеми як клас.

;SC_MTAPI_FIX=1

Використовувати виклик RemoteAPI sc для встановлення кредиту (потребує вірно заповнених опцій API_URL та API_KEY).

SC_REMOTE=0  

Чи включено використання платіжних карток (ваучерів для поповнення рахунку)?

PC_ENABLED=1

Максимальна кількість спроб неправильного введення номера картки

PC_BRUTE=3

ID типу оплати під виглядом якої вноситиметься оплата платіжною краткою

PC_CASHTYPEID=1

Обробляти платежі картками поповнення, в рамках окремої черги (може ліквідувати проблему дублювання платежів, якщо вона виникає)

PC_QUEUED=0

Чи включити перевірку номера партії разом із серійним номером скретч картки?

PC_SERIES_AND_SN=0

Довжина рядка з номером партії

PC_SERIES_LENGTH=4

Вказувати назву населеного пункту в адресних полях

CITY_DISPLAY=0

Розглядати квартиру з нульовим номером як приватний будинок

ZERO_TOLERANCE=1

Приховати пароль користувача від нього ж

PASSWORDSHIDE=0

Ховати від користувача його логін (навіщо їм знати, що у них є якісь такі штуки?)

LOGINHIDE=0  

Чи приховувати від користувачів час платежів?

PAYMENTSTIMEHIDE=0

Максимальна кількість пунктів меню без іконок (за замовчуванням зверху). Працює тільки в старому скіні default. Наразі не має глибинного значення.

MENUNOICONMAX=6

Приховувати наступні модулі в меню (розділювач кома)

MENUHIDE=zload

Підтримку OpenPayz ввімкнено?

OPENPAYZ_ENABLED=0

Посилання на бекенди OpenPayz. У реальному світі - це має бути прямий URL на бекенди вашого воркера OpenPayz. Наприклад, http://opayz.isp/backend/

OPENPAYZ_URL=../openpayz/backend/

Платіжні системи OpenPayz (розділювач “,”). Власне, це імена активних бекендів OpenPayz.

OPENPAYZ_PAYSYS=ipay

Запитувати платіжний ID щоразу з op_customers (повинно бути увімкненим в реальному світі)

OPENPAYZ_REALID=0  

Чи включений хелпдеск?

TICKETING_ENABLED=1

Чи увімкнений сервіс тестування швидкості?

SP_ENABLED=1

Посилання до встановленого сервісу тестування швидкості

SP_URL=http://speedtest.ukrtelecom.ua/

Вказує тип сервісу, що використовується для тестування: вбудований в кабінет html5 - 1, редирект на зовнішній SP_URL - 2, ембеддимо SP_URL всередину фреймом - 3

SP_TYPE=1  

Кастомні розміри фрейму при SP_TYPE 3 у форматі: ширина | висота

SP_SIZE="100%|500"

Чи включено розділ завантажень?

ZL_ENABLED=0

Налаштування розділу завантажень у форматі шлях_до_іконки|посилання|заголовок (розділювач пайп)

ZL_OPTIONS="iconz/key.gif|http://stargazer.net.ua/download/inetaccess/2.62.8/inetaccess.2.62.8.win.exe|Inetaccess Windows"

Чи включено модуль заморожування рахунку?

AF_ENABLED=1

Вартість кожної заморозки (працює окремо від тієї вартості, що вказано в налаштуваннях тарифу)

AF_FREEZPRICE=10

Тарифи для яких доступний сервіс заморозки рахунку (розділювач кома)

AF_TARIFFSALLOWED = Unlim-5

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

;AF_TARIFF_ALLOW_ANY=0

ID типу оплати під яким проводитимуться зняття грошей за заморожування

AF_CASHTYPEID=1

Показувати швидкість тарифу у профілі користувача?

SHOW_SPEED=0 

Показувати швидкість “як є” в Мбіт/с, якщо швидкості у вас з якоїсь причини вказані таки в мегабітах/с замість замовчувальних кілобіт/с. Необов'язкова опція.

;SHOW_SPEED_MB=1

Увімкнення підтримки UBAgent (працює тільки при auth=ip) та XMLAgent, що працює з будь-яким типом авторизації.

UBA_ENABLED=1 

Включає показ адреси як окремих атрибутів XML (повертає адресу не однією стрінгою, а кількома “полями” XML/JSON документа відповідно).

UBA_XML_ADDRESS_STRUCT=0

Вмикає дебаг режжим для XMLAgent REST API із записом у WebLogs. Необов'язкова опція.

;XMLAGENT_DEBUG_ON=0

Вмикає більш “verbose” дебаг режжим для XMLAgent REST API із записом в окремий файл: 'userstats/exports/xmlagent.debug'. Перед ввімкенням, переконайтеся, що каталог “exports” існує у “корені” вашого особистого кабінету і має відповідні права на створення/запис. Необов'язкова опція.

;XMLAGENT_DEBUG_DEEP_ON=0

Чи показувати скільки днів залишилося до закінчення оплаченої послуги?

ONLINELEFT_COUNT=0

Стиль показу періоду, що залишився - кількість днів або кінцева дата надання послуги. Можливі значення days, date чи mixed

ONLINELEFT_STYLE='days'  

Чи встановлено “розмазане” зняття абонплати в конфігурації Stargazer?

ONLINELEFT_SPREAD=0

Враховувати вартість всіх віртуальних послуг користувача при підрахунку днів, що залишилися до закінчення оплаченої послуги. Необов'язкова опція.

;ONLINELEFT_CONSIDER_VSERVICES=0  

Чи пропонувати функцію кредитування користувачам, які мають існуючу заборгованість? Також реагує на SC_ENABLED

ONLINELEFT_CREDIT=0    

Округлення балансу користувача до сотих (копійок).

ROUND_PROFILE_CASH=0

Режим публічної оферти - поле договір буде замінено на “Публічну оферту” з посиланням на URL вказаним в опції

;PUBLIC_OFFER=""

Увімкнення можливості друку користувачами рахунків та інших публічних документів DOCX

DOCX_SUPPORT=0

Повний шлях до сховища документів

DOCX_STORAGE="../content/documents/"

Відсоткова ставка ПДВ для друкованих документів

DOCX_NDS=20

Можливі для друку рахунків послуги, роздільник - кома

DOCX_SERVICES="Інтернет"  

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

DOCX_DENY_SELFGEN=1

Необов'язкові налаштування прив'язки контрагентів ідентичні аналогічним з alter.ini. Увімкнення приведе до залучення макросів {AGENT*} якщо вам це дуже потрібно.

;AGENTS_ASSIGN=1
;DEFAULT_ASSIGN_AGENT=1

Включає відображення платіжного ID абонента у вигляді QR-коду

PAYMENTID_QR=0  

Чи увімкнено модуль оголошень?

AN_ENABLED=0

Включає додаткові контроли керування прочитаністю оголошень у вигляді гарненьких кнопочок.

AN_BUTTONS=1

Чи включений модуль, що показує попередні оплати?

PAYMENTS_ENABLED = 1  

Показувати лише оплати з сумою >0 для виключення показу віртуальних сервісів та інших зовнішніх нарахувань. Необов'язкова опція.

;PAYMENTS_ONLYPOSITIVE=1  

Чи показувати додаткові послуги (віртуальні сервіси) у профілі користувача?

VSERVICES_SHOW=0  

Чи враховувати періоди віртуальних послуг при розрахунку їх вартості? Необов'язкова опція.

;VSERVICES_CONSIDER_PERIODS=0  

Чи ввімкнено модуль статистики трафіку?

TRAFFIC_ENABLED=1  

Включити модуль розсилки повідомлень про передчасну оплату послуги?

REMINDER_ENABLED=0

Місячна вартість розсилки повідомлень для кожного користувача?

REMINDER_PRICE=1

ID тегу віртуального сервісу, для зняття плати за розсилку повідомлень

REMINDER_TAGID=1

Довжина мобільного номера (дуже важливо заповнювати реальними цифрами, для України - 10, якщо використовується нагадувалка)

REMINER_NUMBER_LENGTH=10

За скільки днів повідомляти?

REMINDER_DAYS_THRESHOLD=5

Префікс для стільникових телефонів (для України +38)

REMINDER_PREFIX="+38"

Чи ввімкнути опцію для самостійної зміни мобільного телефону?

REMINDER_CHANGE_NUMBER=0

Чи знімати відразу вартість REMINDER_PRICE з рахунку абонента при активації послуги.

REMINDER_FEE=1

ID типу платежів, для примусового зняття вартості нагадувачем

REMINDER_CASHTYPEID=1

Чи дозволяти користувачеві самостійно деактивувати послугу нагадувалки?

REMINDER_TURNOFF=1


Стан “включенності” наведених нижче REMINDER_* опцій повинен відповідати аналогічним в alter.ini.
Нагадувати користувачам про близькое закінчення терміну дії кредиту (враховується лише встановлена дата закінчення кредиту, сума кредиту не враховується)? Необов'язкова опція.

;REMINDER_CONSIDER_CREDIT=0

За скільки днів нагадувати про швидке закінчення терміну дії кредиту? REMINDER_DAYS_THRESHOLD буде використано, якщо ця опція не вказана. Необов'язкова опція.

;REMINDER_DAYS_THRESHOLD_CREDIT=2

Нагадувати користувачам про швидкий прихід Достоєвського з сокирою та настання покарання за злочини? Необов'язкова опція.

;REMINDER_CONSIDER_CAP=0

За скільки днів нагадувати про близьке вчинення справедливості? REMINDER_DAYS_THRESHOLD буде використано, якщо ця опція не вказана. Необов'язкова опція.

;REMINDER_DAYS_THRESHOLD_CAP=5

Нагадувати користувачам про швидке закінчення доступних днів заморозки? Працює лише разом із включеною опцією FREEZE_DAYS_CHARGE_ENABLED. Необов'язкова опція.

;REMINDER_CONSIDER_FROZEN=0

За скільки днів нагадувати про швидке закінчення доступних днів заморозки? REMINDER_DAYS_THRESHOLD буде використано, якщо ця опція не вказана. Необов'язкова опція.

;REMINDER_DAYS_THRESHOLD_FROZEN=15


Чи ввімкнено сервіс інтеграції з Megogo?

MG_ENABLED=0

Чи увімкнено захист користувачів від “випадкової підписки” на сервіси Megogo.

MG_PROTECTION=1

Тарифи, на яких доступне використання сервісів Megogo. Залишіть пустим для відсутності обмежень. Розділювач - кома.

MG_TARIFFSALLOWED=""  

Посилання на інструкцію з активації передплати

MG_GUIDE_URL=""

Далі опції для роботи з RemoteAPI у вигляді URL до вашого встановленого Ubilling, доступний кабінету користувача

API_URL="http://billing.isp/"

І серійний номер вашого Ubilling

API_KEY=""

Чи увімкнено сервіс підключення додаткових послуг? (АХТУНГ! Працює у зв'язці з планувальником відкладених завдань. Дивитися: RemoteAPI dealwithit).

ADSERVICE_ENABLED=0

Тип підключення. Може бути nextmonth або nextday.

ADSERVICE_DATE="nextmonth"

Імена для доступних для підключення додаткових сервісів. Записується у форматі: ім'я_сервісу_1: номер_тегу_для_сервісу_1,ім'я_сервісу_2:номер_тегу_для_сервісу_2

ADSERVICE_NAMES="TV:1,PHONE:3,TEST:4"

Вартість додаткових послуг. Записується у форматі: ім'я_сервісу_1:вартість_сервісу_1,ім'я_сервісу_2:вартість_сервісу_2

ADSERVICE_COST="TV:50,PHONE:30,TEST:1"

Необов'язкова опція. Контролює показ додаткової інформації (EULA) перед тим, як користувач підключить послугу. Реалізовано як підвантаження посилання в iframe. Тобто. цілком згодиться посилання на pdf документ. Заповнюється у вигляді: роздільник між послугами крапка з комою, розділити між послугою та посиланням кома “номер_тегу_для_сервісу_1,посилання на документ;номер_тегу_для_сервісу_2,посилання на документ”

ADSERVICE_CUSTOM_ACCEPT="1,http://link_to_my.pdf.com/pdf1;2,http://link_to_my.pdf.com/pdf2"

Необов'язкова опція вказує тип валюти для шаблонізації сум прописом. На даний момент можливі значення: UAH та RUR.

;TEMPLATE_CURRENCY=UAH

Вмикає підтримку УКВ.

UKV_ENABLED=0  

Режим інтро. 0 - відключено і ніде не відображається, 1 - показується під профілем користувача, 2 - показується замість блоку меню (тільки при авторизації за логіном), 3 - показується над профілем користувача, 4 - показується під інтерфейсом авторизації (тільки при авторизації за логіном). Сам текст інтро (так, HTML) редагується з адміністративного інтерфейсу за допомогою модулю “Оголошення”.

INTRO_MODE=0

Включає підтримку голосування та перегляду відповідей на попередні голосування користувача.

POLLS_ENABLED=0  

Показує додаткові номери мобільних телефонів у профілі користувача.

SHOW_EXT_MOBILES=1

Чи включено обмеження кількості днів заморожування? За замовчуванням - вимкнено.

FREEZE_DAYS_CHARGE_ENABLED=0

Кількість днів заморозки доступна користувачеві спочатку (може бути встановлена індивідуально для кожного користувача в профілі)

FREEZE_DAYS_INITIAL_AMOUNT=365

Кількість днів, які користувач повинен відпрацювати (бути активним) після вичерпання доступних днів заморозки, після закінчення яких користувач знову зможе скористатися заморозкою і йому будуть знову нараховані дні заморозки (може бути встановлено індивідуально для кожного користувача в профілі)

FREEZE_DAYS_WORK_TO_RESTORE=120  

Дозволити користувачеві заморожувати послугу з особистого кабінету навіть за негативного балансу

FREEZE_ALLOW_ON_NEGATIVE_BALANCE=0

Заборонити користувачеві брати кредит, якщо після попереднього кредиту він “забув” поповнитися. Це додаткова опція захисту для тих, хто любить брати кредит щомісяця та користується послугою лише кілька днів.

SC_HACKCONTROL=0

Чи увімкнено сервіс OmegaTV?

OM_ENABLED=0

Забороняти користувачам оформлювати передплати, на які їм не вистачить грошей?

OM_PROTECTION=1

Перелік тарифів, яким заборонено використовувати модуль OmegaTV. Розділювач - кома.

OM_TARIFFSDENIED=""  

Загальний ліміт на кількість пристроїв та плейлистів на користувача.

OM_MAXDEV=3    

Інтеграція TrinityTV увімкнена?

TRINITYTV_ENABLED=0

Забороняти користувачам оформлювати передплати, на які їм не вистачить грошей?

TRINITYTV_PROTECTION=1

Чи продавати Trinity під соусом SweetTV? Власне включає інший модуль з іншою іконкою, з тими самими механіками.

SWEETTV_ENABLED=0

Встановлює URL-адресу з посібниками для користувачів, з налаштування, софту та всілякого такого.

TRINITYTV_GUIDE_URL=""

Вимикає можливість самостійного оформлення чи відмови від підписок користувачами.

TRINITYTV_NOUSERSUB=0

Чи увімкнено планетарний тельбухач Ішимура?

ISHIMURA_ENABLED=0    

Старий режим онлайн відображення контролу виходу при методах авторизації login/both. Потрібно лише для сумісності із кастомними скінами. Необов'язкова настройка.

INLINE_LOGOUT=0

Чи ввімкнено модуль Відеоспостереження?

VISOR_ENABLED=0

Клієнтське програмне забезпечення для відеоспостереження. Формат: іконка|URL|Назва. Розділювач - кома.

;VISOR_SOFTWARE="skins/paper/iconz/android.png|https://play.google.com/store/apps/details?id=dssl.client|Android,skins/paper/iconz/ios.png|https://apps.apple.com/us/app/trassir-client/id722762165|iOS,skins/paper/iconz/windows.png|http://ubilling.net.ua/visor/Trassir-4.1.1112540-client.exe|Windows,skins/paper/iconz/macos.png|https://apps.apple.com/ru/app/trassir-client/id1277151643|MacOS"

Необов'язкова опція, що включає показ об'яв у модальному вікні на головній сторінці.

AN_MODAL=1

Необов'язкова опція, що включає відлагоджувальні лічильники часу генерації сторінки та кількості запитів до БД.

DEBUG_COUNTERS=0  

Опція, що включає можливість зміни пароля користувачам через особистий кабінет. При включенні опції - поточний пароль ховається. Для зміни необхідно ввести поточний пароль, і 2 рази новий (щоб випадково не схибити). Після зміни пароля перекидає на сторінку входу для оновлення реп'яшків.

PASSWORD_CHANGE=0

Користувач вашого робота Telegram. Наприклад, UbillingFeedbackDemoBot або YourSupportBot. Залиште пустим для вимкнення.

TG_BOTNAME=""

Чи увімкнено сервіс OllTV?

OLLTV_ENABLED=0  

Чи включено на цій системі Могутні тарифи?

POWERTARIFFS_ENABLED=0

Вказує максимальний день місяця, який буде округлятися до першого числа потужними тарифами.

POWERTARIFFS_MAXDAY=26  

Чи включено нотифікацію користувачів про повітряні тривоги у вашому регіоні? Потребує правильно заповнених опцій API_URL і API_KEY в кабінеті і настроєної нотифікації в alter.ini за допомогою опцій AERIAL_ALERTS_ENABLED і AERIAL_ALERTS_NOTIFY.

AIR_RAID_ALERT_ENABLED=0

Перераховує і показує швидкість, як 1000 біт в 1 Кбіт/с. (корисна для користувачів у яких джуніпер використовується у ролі BRAS). Необов'язкова опція.

;SHOW_SPEED_1000B=1

Налаштування БД

знаходяться в userstats/config/mysql.ini

mysql.ini
;хост БД
server = "localhost"
;порт БД
port = "3306"
;логін користувача БД
username = "mylogin"
;пароль користувача БД
password = "newpassword"
;ім`я БД
db = "stg" 
;кодування даних в БД
character = "UTF8"
;префікс (використовується ні для чого)
prefix = "billing"

REST API

Для зовнішніх програм, що взаємодіють з кабінетом користувача, існує окреме XML/JSON API під назвою XMLAgent.