Тут показані розбіжності між вибраною ревізією та поточною версією сторінки.
Порівняння попередніх версій Попередня ревізія Наступна ревізія | Попередня ревізія Наступна ревізія По сторонах наступні версії | ||
remoteapi [2023/03/28 16:29] nightfly |
remoteapi [2023/11/22 15:49] nightfly [API віддаленого виклику процедур] |
||
---|---|---|---|
Рядок 1: | Рядок 1: | ||
- | ====== API удаленного вызова | + | ====== API віддаленого виклику |
- | В Ubilling начиная с релиза 0.3.1 поддерживается вызов внешними приложениями определенных внутренних процедур биллинга. Для этого требуется опция REMOTEAPI_ENABLED=1 в **alter.ini**. Для авторизации используется серийный номер Ubilling.\\ | + | |
- | Формат вызовов при помощи GET: | + | У Ubilling починаючи з релізу 0.3.1 підтримується |
- | http:// | + | Для цього потрібна опція |
- | + | < | |
- | На данный момент поддерживаються следующие action:\\ | + | REMOTEAPI_ENABLED=1 |
- | * **reset + param [login]** - ресет пользователя, | + | |
- | * **handlersrebuild** - перестройка всех сетевых хендлеров и перезапуск dhcpd для соответствующих подсетей | + | |
- | * **catvfeeprocessing** - снятие АП пользователей КТВ | + | |
- | * **vserviceschargefee + param [nofrozen]** - снятие АП виртуальных сервисов. Необъязательный параметр nofrozen - не снимать АП с отморозков. | + | |
- | * // | + | |
- | * **discountprocessing** - обработка скидок | + | |
- | * **backupdb** - резервирование БД | + | |
- | * **autocleandb** - зачистка БД от старых | + | |
- | * **swpoll** - опрос всех устройств, | + | |
- | * **swping** - опрос всех устройств, | + | |
- | * **fullhostscan + param [traffdiff] + nn** - опрос всех клиентов из подсетей указанных в справочнике " | + | |
- | * **rebuilduserdatacache** - перестраивается кеш пользовательских даных в exports: cache_address, | + | |
- | * **autofreeze + param [nocredit]** - запускает процедуру автозаморозки пользователей с балансом ниже alter.ini: | + | |
- | * **autofreezemonth + param [nocredit]** - запускает процедуру автозаморозки пользователей с балансом ниже или равным alter.ini: | + | |
- | * **watchdog** - натравливает собаку-наблюдаку на исполнение ее задач | + | |
- | * **senddog** - [[senddog|собака-посылака]] пробегается по всем очередям для отправки и осуществляет отправку всех сообщений. | + | |
- | * **senddog + [param chkmsgstatuses]** - нужно только при включенной истории СМС сообщений. Обязывает [[senddog|собаку-посылаку]] попытаться получить статусы ранее отправленных СМС. | + | |
- | * **ukvfeeprocessing** - снятие АП пользователей [[ukv|УКВ]] | + | |
- | * **switchescoverage | + | |
- | * **rebuildglscache** - принудительно перестраивается кеш глобального поиска. | + | |
- | * **uhwbrutecleanup** - очищает реестр попыток перебора UHW | + | |
- | * **cudiscounts** - запускает механизм обработки [[cumulativediscounts|накопительных скидок]]. | + | |
- | * **crimeandpunishment** - запускает механизм [[crimeandpunishment|обработки преступления и наказания]] | + | |
- | * **oltpoll** - запускает опрос всех OLT устройств. | + | |
- | * **reminder + [param force]** | + | |
- | * **friendshipdaily** - производит внесение процентов по всем дружественным платежам, | + | |
- | * **freezemonth + [param debug2ublog]** - производит списание средств у замороженных пользователей равным alter.ini: | + | |
- | * **writevlanmachistory** - делает опрос по влан терминаторам и заносит маки абонентов в таблицу, | + | |
- | * **dealwithit** - выполняет для пользователей задачи, | + | |
- | * **mgqueue** - Производит запланированные отписки от тарифов Megogo | + | |
- | * **mgprocessing** - Производит начисление АП по тарифам Megogo | + | |
- | * **mgfreecleanup** - Производит ликвидацию уже тестовых подписок Megogo с просроченым периодом. | + | |
- | * **exhorse + [& | + | |
- | * **policedog** - Запускает быстрое сканирование собакой-полициякой. Раз в полчаса-час будет вполне нормально. | + | |
- | * **whydoyoucall** - Получает данные с Askozia PBX о пропущенных звонках. | + | |
- | * **whydoyoucallstats** - Записывает статистику пропущенных звонков за день в БД. | + | |
- | * **asterisk + [param login]** - позволяет получить логин клиента по номеру телефона | + | |
- | * **asterisk + [param realname]** - позволяет получить логин и ФИО клиента по номеру телефона в виде **[login]-[FIO]**; | + | |
- | * **asterisk + [param swstatus]** - позволяет получить состояние оборудования к которому привязан клиент в билинге по номеру телефона (Ответ будет: OK или DIE) | + | |
- | * **asterisk** - возможен следующий запрос: | + | |
- | * // | + | |
- | * // | + | |
- | * // | + | |
- | * // | + | |
- | * // | + | |
- | * // | + | |
- | * // | + | |
- | * // | + | |
- | * // | + | |
- | * // | + | |
- | * // | + | |
- | * // | + | |
- | < | + | |
- | | + | |
- | Vservice1 => array(' | + | |
- | Vservice2 => array(' | + | |
- | VserviceN => array(' | + | |
- | ) | + | |
- | // | + | |
</ | </ | ||
- | * | ||
- | * - ! - | ||
- | * //* Стоит отметить, | ||
- | * //* Все значения дополнительных параметров, | ||
+ | в конфігураційному файлі | ||
- | | + | Формат викликів за допомогою HTTP GET запитів: |
- | * **mtsigmonpoll** - производит опрос | + | |
- | * **sormcast** - производит выгрузку данных в [[sormyahont|ИС СОРМ Яхонт]]. | + | < |
- | * **askozianum | + | http:// |
- | * **freezedayscharge + [param debug2ublog]** - запускает процесс обработки замороженных пользователей | + | </ |
- | * **mikrotikdnshaper + [param downshift]** - запускает обработку правил динамического шейпера для [[mikrotikapi|Mikrotik NAS]]. Опциональный параметр **downshift** | + | |
- | * **getagentdata + [param login]** - возвращает | + | На даний момент підтримуються наступні action:\\ |
- | * **districtscache** - обновляет | + | |
- | * **smszilla** + filterid + templateid + [translit] | + | * **handlersrebuild** - перебудова всіх мережних хендлерів та перезапуск dhcpd для |
- | * **multigen** - производит | + | * **vserviceschargefee + param [nofrozen]** - зняття АП віртуальних сервісів. Необов' |
- | * **multigentotal** - очищает все сценарии, потом производит регенерацию всех сценариев и выполняет требуемые | + | * // |
- | * **multigentraff** - аггрегирует статистику сессий из таблички аккаунтинга | + | * **discountprocessing** - обробка знижок |
- | * **multigenpod + [param login]** - шлет PoD на NAS пользователя с логином | + | * **backupdb** - резервування БД |
+ | * **autocleandb** - зачистка БД від старих логів та детальної | ||
+ | * **swpoll** - опитування всіх пристроїв з довідника " | ||
+ | * **swping** - опитування всіх пристроїв з довідника " | ||
+ | * **fullhostscan + param [traffdiff] + nn** - опитування всіх клієнтів з підмереж вказаних у довіднику " | ||
+ | * **rebuilduserdatacache** - перебудовується кеш даних користувача в exports: cache_address, | ||
+ | * **autofreeze + param [nocredit]** - запускає процедуру автозаморозки користувачів з балансом | ||
+ | * **autofreezemonth + param [nocredit]** - запускає процедуру автозаморозки користувачів з балансом нижче або рівним alter.ini: | ||
+ | * **watchdog** - нацьковує собаку-спостерігаку на виконання її завдань | ||
+ | * **senddog** - [[senddog|собака-посилака]] пробігається по всіх чергах для відправлення та здійснює відправлення всіх повідомлень. | ||
+ | * **senddog + [param chkmsgstatuses]** - необхідно лише за включеної історії СМС повідомлень. Зобов' | ||
+ | * **ukvfeeprocessing** - зняття АП користувачів [[ukv|УКВ]] | ||
+ | * **switchescoverage | ||
+ | * **rebuildglscache** - примусово перебудовується кеш глобального пошуку. | ||
+ | * **uhwbrutecleanup** - очищує реєстр спроб перебору паролів UHW | ||
+ | * **cudiscounts** - запускає механізм | ||
+ | * **crimeandpunishment** - запускає механізм [[crimeandpunishment|обробки злочинів | ||
+ | * **oltpoll** - запускає опит усіх OLT пристроїв. | ||
+ | * **reminder | ||
+ | * **friendshipdaily** - здійснює внесення відсотків за всіма дружніми платежами, | ||
+ | * **freezemonth + [param debug2ublog]** - здійснює списання коштів у заморожених користувачів рівним alter.ini: | ||
+ | * **writevlanmachistory** - робить опитування по влан термінаторам і заносить маки абонентів до таблиці, записує | ||
+ | * **dealwithit** - виконує для користувачів завдання, | ||
+ | * **mgqueue** - Здійснює заплановані відписки від тарифів Megogo | ||
+ | * **mgprocessing** - Здійснює нарахування АП за тарифами Megogo | ||
+ | * **mgfreecleanup** - Здійснює ліквідацію тестових підписок Megogo із простроченим періодом. | ||
+ | * **exhorse + [& | ||
+ | * **policedog** - Запускає швидке сканування собакою-поліціякою. Раз на півгодини-годину буде цілком нормально. | ||
+ | * **whydoyoucall** - Отримує дані з Askozia PBX про пропущені дзвінки. | ||
+ | * **whydoyoucallstats** - Записує статистику пропущених дзвінків за день у БД. | ||
+ | * **nasmon** - здійснює опитування серверів NAS з довідника на тему їхньої живості. | ||
+ | * **mtsigmonpoll** - проводить опитування Mikrotik, UBNT та інших | ||
+ | * **sormcast** - проводить вивантажування даних в ИС СОРМ Яхонт. | ||
+ | * **askozianum + [param mobilenumber]** - повертає стан користувача за номером його мобільного номера: | ||
+ | * **freezedayscharge + [param debug2ublog]** - запускає процес обробки заморожених користувачів | ||
+ | * **mikrotikdnshaper + [param downshift]** - запускає обробку правил динамічного шейпера для [[mikrotikapi|Mikrotik NAS]]. Опціональний параметр **downshift** | ||
+ | * **getagentdata + [param login]** - повертає JSON з даними про присвоєному користувачеві контрагента. | ||
+ | * **districtscache** - оновлює кеш присвоєних користувачам | ||
+ | * **smszilla** + filterid + templateid + [translit] | ||
+ | * **multigen** - проводить швидку регенерацію всіх сценаріїв та відпрацювання необхідних сервісів [[multigen|КупаГен]]. | ||
+ | * **multigentotal** - очищає всі сценарії, потім здійснює | ||
+ | * **multigentraff** - агрегує статистику сесій з таблички акаунтингу та оновлює трафік користувачів | ||
+ | * **multigenpod + [param login]** - шле PoD на NAS користувача з логіном | ||
* **onepunch + [param alias]** - запускает выполнение существующего [[onepunch|One-Punch]] скрипта. | * **onepunch + [param alias]** - запускает выполнение существующего [[onepunch|One-Punch]] скрипта. | ||
- | * **paycardsqueue** - обрабатывает очередь | + | * **paycardsqueue** - обробляє |
- | * **salarytelegram** - рассылает сотрудникам [[salary|закрытые]] на них работы за день. | + | * **salarytelegram** - розсилає співробітникам [[salary|закриті]] на них роботи за день. |
- | * **warehousetelegram** - рассылает сотрудникам [[warehouse|забронированные]] на них ТМЦ. | + | * **warehousetelegram** - розсилає співробітникам [[warehouse|заброньовані]] на них ТМЦ. |
- | * **ddt** - вызывает периодическую обработку тарифов судного дня. | + | * **ddt** - викликає періодичну обробку тарифів судного дня. |
- | * **visorcharge** - производит начисление средств для камер | + | * **visorcharge** - здійснює |
* **fdbarchive** - производит сохранение текущего кэша FDB для архива. При необходимости производит ротацию. | * **fdbarchive** - производит сохранение текущего кэша FDB для архива. При необходимости производит ротацию. | ||
- | * **remotedhcp** - возвращает | + | * **remotedhcp** - повертає дані, необхідні для синхронізації [[remotedhcp|віддаленими DHCP серверами]]. |
- | * **stgfeecharge2mysql** - создает кэш последних списаний денежных средств старгейзером | + | * **stgfeecharge2mysql** - створює кеш останніх списань коштів старгейзером |
- | * **smartup** - вызов | + | * **smartup** - виклик |
- | * **envyarchive** - сохраняет | + | * **envyarchive** - зберігає конфігурацію всіх активних заздрісних пристроїв у архіві. |
- | * **autocredit** - вызывает [[autocredit|автоматическое кредитование]] особенных пользователей | + | * **autocredit** - викликає [[autocredit|автоматичне кредитування]] особливих користувачів |
- | * **sc** +[login, | + | * **sc** +[login, |
- | * **pt** - вызывает обработку [[pt|Мощей | + | * **pt** - викликає обробку [[pt|Могутніх |
- | * **usercash** - денежные операции пользователя. Принимает параметры login (логин), summ(сумма денег), ct(тип оплат), | + | * **usercash** - Фінансові |
- | * **ptvchargefee** - производит начисление АП всем подписчикам [[prostotv|ProstoTV]]. | + | * **ptvchargefee** - здійснює |
- | * **karmaguard** - пытается автоматически чинить карму | + | * **karmaguard** - намагається автоматично ремонтувати |
- | * **callmeback + [param number]** - создает | + | * **callmeback + [param number]** - створює |
- | * **olltvchargefee** - производит тарификацию услуг [[olltv|OllTV]]. | + | * **olltvchargefee** - здійснює |
- | * **opayzsmsnotify** - запуск рассылки | + | * **opayzsmsnotify** - запуск розсилки |
- | * **cachedog** - следит за инвалидацией кэша полных пользовательских данных. В момент вызова | + | * **cachedog** - стежить за інвалідацією кешу повних даних користувача. У момент виклику |
* **telepony + number** - реагує на вхідний дзвінок [[telepony|TelePony]]. | * **telepony + number** - реагує на вхідний дзвінок [[telepony|TelePony]]. | ||
* **fastping** - опитує пристрої з довідника комутаторів на живість за допомогою [[fastping|FastPing]]. | * **fastping** - опитує пристрої з довідника комутаторів на живість за допомогою [[fastping|FastPing]]. | ||
Рядок 112: | Рядок 91: | ||
* **feesharvester** - реплікує дані про нарахування АП з логу Stargazer до БД. З додатковим параметром full - сканує весь лог за весь час, з параметром today - тільки за поточну добу, без параметрів - за поточний місяць. | * **feesharvester** - реплікує дані про нарахування АП з логу Stargazer до БД. З додатковим параметром full - сканує весь лог за весь час, з параметром today - тільки за поточну добу, без параметрів - за поточний місяць. | ||
* **btrxupd** - Пушить за наявності всі зміни в абонбазі для [[btrx24|CRM Bitrix24]] | * **btrxupd** - Пушить за наявності всі зміни в абонбазі для [[btrx24|CRM Bitrix24]] | ||
+ | * **btrxpolls** - пушить дані про всі наявні опитування та їх результати до [[btrx24|CRM Bitrix24]] | ||
+ | * **setculpa + [login, | ||
+ | * **pseudocrm + [param]** - виконує відповідний виклик функцій вказахнив в param з [[pseudocrm|PseudoCRM]]. | ||
+ | * **stickynotify** - виконує розсилку в Telegram всім активним працівникам, | ||
+ | * **taskmannotify** - виконує розсилку в Telegram всім активним працівникам, | ||
- | При неверных вызовах Remote API будет возвращать следующие исключения: | ||
- | * ERROR: | ||
- | * ERROR: | ||
- | * ERROR: | ||
- | * ERROR: | ||
- | * ERROR: | ||
- | * ERROR: | ||
+ | У разі неправильних викликів Remote API повертатиме наступні помилки: | ||
- | На данный момент вызовы reset и handlersrebuild используються для работы UHW. Пока что мы не хотим | + | * ERROR: |
+ | * ERROR: | ||
+ | * ERROR: | ||
+ | * ERROR: | ||
+ | * ERROR: | ||
+ | * ERROR: | ||
- | Если | + | |
+ | Якщо потрібно звідкись ззовні викликати якісь | ||
<code bash> | <code bash> | ||
- | / | + | / |
</ | </ | ||
- | или | + | |
+ | або | ||
<code bash> | <code bash> | ||
- | / | + | / |
</ | </ | ||
- | Мысль надеюсь понятна.\\ | + | Думка сподіваємось зрозуміла\\ |
- | ====== | + | |
- | Для удобства и красивости, | + | ====== Страшні виклики |
+ | |||
+ | * **asterisk + [param login]** - дозволяє отримати логін клієнта за номером телефону | ||
+ | * **asterisk + [param realname]** - дозволяє отримати логін та ПІБ клієнта за номером телефону у вигляді **[login]-[ПІБ]**; | ||
+ | * **asterisk + [param swstatus]** - дозволяє отримати | ||
+ | * **asterisk** - можливий наступний запит: **/?module=remoteapi& | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | * // | ||
+ | <code php> | ||
+ | array(TarrifName => array(' | ||
+ | Vservice1 => array(' | ||
+ | Vservice2 => array(' | ||
+ | VserviceN => array(' | ||
+ | ) | ||
+ | // | ||
+ | </ | ||
+ | * | ||
+ | * - ! - | ||
+ | * //* Варто зазначити, | ||
+ | * //* Всі значення додаткових параметрів, | ||
+ | |||
+ | |||
+ | |||
+ | ====== Обгортка ====== | ||
+ | |||
+ | Для зручності та красивості, | ||
<file bash ubapi> | <file bash ubapi> | ||
Рядок 155: | Рядок 176: | ||
</ | </ | ||
- | Начиная с релиза 0.8.0 он уже лежит по нужному пути. Вам стоит только установить в нем серийник вашего Ubilling. | ||
- | ====== | + | Починаючи з релізу 0.8.0, одразу після встановлення, |
+ | |||
+ | ====== | ||
- | И как теперь будет | + | І як тепер виглядатиме crontab -e у мінімальному джентльменському наборі? А от якось так: |
<code bash> | <code bash> | ||
Рядок 183: | Рядок 205: | ||
</ | </ | ||
- | Это | + | Це необхідний мінімум(!) для |