Админка: Консольные команды
Консольные команды
Консольные команды нужны для выполнения некоторых действий из командной строки или написания собственных скриптов для некоторых действий.
Запуск из косноли
Общий принцип всех команд одинаков: для начала нужно зайти в директорию "админки".
cd /var/www/mikbill/admin
далее выполняем:
php ./index.php "команда" "параметр"
Параметр по необходимости, если их несколько то разделителем является пробел
Доступные команды
Абонплата
| Команда | Описание | Дополнительно запускаются команды |
|---|---|---|
| pay_day | Снимает ежедневную абонплату по тарифу и аренде устройств: Тип тарифа: Обязательно Каждый День(фиксировано) | clear_user_port_from_disabled_deleted do_create_ticket_offline do_create_ticket_freezed do_create_ticket_blocked |
| pay_day2 | Снимает ежедневную абонплату по тарифу и аренде устройств: Тип тарифа: Обязательно Каждый День(пропорционально) Дополнительно обрабатывает: триал подписки ежедневные подписки подписки "как в тарифе" | generate_stat_balance cyclic_cleaning |
| pay_day_monthly | Снимает месячную абонплату по тарифу и аренде устройств: Тип тарифа: Обязательно Каждый Месяц, плавающая дата Дополнительно обрабатывает: подписки "как в тарифе" | |
| pay_mth | Снимает месячную абонплату по тарифу и аренде устройств: Тип тарифа: Обязательно Каждый Месяц Тип тарифа: Обязательно Каждый месяц, потратить сумму Тип тарифа: Обязательно Каждый Месяц, тип 3 Дополнительно обрабатывает: ежемесячные подписки подписки "как в тарифе" | device_installments packet_installments |
| pay_mth_ost | Снимает остаточную месячную абонплату по тарифу: Тип тарифа: Обязательно Каждый месяц, потратить сумму | |
| pay_tarif_type_4 | Снимает абонплату по тарифу: Тип тарифа: Обязательно Каждый Месяц, тип 4 | |
| block_dolgniki | Блокировать локальную сеть должникам | |
| block_dolgniki_inet | Блокировать интернет должникам | |
| unlim_block | Выполняет блокировку Интернета абонентам, у которых нахватает денег на абон.плату (только для ежедневных абон.плат и плавающей даты) | |
| unlim_block_month | Выполняет блокировку Интернета абонентам, у которых нахватает денег на абон.плату (только для ежемесячных абон.плат, кроме плавающей даты) | |
| unlim_block_month_type2 | Выполняет блокировку Интернета абонентам с балансом < 0 (только для ежемесячных абон.плат, кроме плавающей даты) | |
| do_freeze_abonplata | Снимает ежедневную абонплату заморозки, если таковая существует | |
| pay_real | Снимает 'ежедневную абонплату' за использование услуги Real-ip, если таковая существует | |
| pay_credit | Оплата услуги % по кредиту | |
| device_installments | Снимает плату за покупку устройства в рассрочку | |
| packet_installments | Снимает плату за подключение в рассрочку |
Абоненты
| Команда | Описание |
|---|---|
| otkl_neplat | перенос в группу 'отключенные' по истечению количества дней |
| del_otkl | перенос в группу 'удаленные' из 'отключенных' по истечению количества дней |
| do_disable_locked_users | перенос в группу 'отключенные' по прошествии N дней с момента блокировки Интернета по недостатку средств (регулируется 'системными опциями'). Не переносятся в отключённые абоненты с "вечным лимитом" и те, у которых с момента регистрации не прошло N дней |
| do_disable_users_contract_state | переводит в группу 'отключённые' базовых пользователей, у которых статус контракта 'приостановлен' |
| do_remove_users_contract_state | переводит в группу 'удалённые' базовых пользователей, у которых статус контракта 'закрыт' |
| update_date_of_contract_by_regdate | вносит абонентам без 'даты заключения договора' дату заключения, которая соответствует дате регистрации абонента в системе биллинга |
| do_create_ticket_nopays | создаёт тикеты на абонентов, которых отключило от Интернета N дней назад |
| do_create_ticket_offline | создаёт тикеты на абонентов, которые не выходили в онлайн N дней |
| do_create_ticket_freezed | создаёт тикеты на абонентов, которые заморожены более N дней |
| do_create_ticket_blocked | создаёт тикеты на абонентов, которые без интернета более N дней |
| prepare_mobile_and_sms_phones | убирает из "мобильный номер" и "смс номер" всех абонентов все символы, кроме цифр |
| changetarifuser | изменяет шейпер у абонента после смены тарифа, 3 параметра: UID, старый GID , новый GID |
| proceed_users_pending_changes | Выполнить все отложенные изменения абонентов, которые готовы к активации |
Сессии
| Команда | Описание | Дополнительно запускаются команды |
|---|---|---|
| rad_online | запускает 'сборщик мусора', который находит и закрывает 'зависшие' сессии абонентов, если вдруг возник какой либо сбой на NAS | proceed_users_pending_changes do_queue_once do_time_credit |
| clear_online | очистит список текущего онлайна | |
| userkick | Выполняет выкидывание абонента по UID . Пример: userkick 1234, где 1234 - uid абонента | |
| kick_unknown | Выкинуть неизвестных | |
| kick_usersblock | Выкинуть заблокированных | |
| kick_usersotkl | Выкинуть отключенных | |
| kick_usersdel | Выкинуть удаленных | |
| kick_usersotkl_usersdel | Выкинуть удаленных и отключенных | |
| kick_usersfreeze | Выкинуть замороженных | |
| kick_no_money | Выкинуть должников | |
| kick_tarif_tos_day | Выкинуть всех кто на учетном тарифе, ежедневно | |
| kick_tarif_tos_week | Выкинуть всех кто на учетном тарифе, еженедельно | |
| kick_tarif_tos_month | Выкинуть всех кто на учетном тарифе, ежемесячно | |
| kick_tarif_tos_dynamic | Выкинуть всех кто на учетном тарифе, плавающая дата |
IP адреса
| Команда | Описание |
|---|---|
| pool_online | запускает 'сборщик мусора IP', который утилизирует IP из IP-Pool, в случае, если они уже перестали использоваться, но остались еще выданными |
| clear_pool_online | Вернуть все IP в свои пулы ip_pool |
| clear_pool_ip_online | Убирает из пулов IP адреса, которые на данный момент "онлайн" |
| pool_recreate_all | Пересоздает IP адреса во всех пулах (у которых указаны шлюз и маска) |
| pool_recreate ID | Пересоздает IP адреса в указанном пуле (пример pool_recreate 4, пересоздаст адреса в пуле с ID 4) |
| remove_used_framed_IP_from_framed_pool | Из пула (справочника) реальников удаляет те IP, которые уже выданы абонентам |
| sectorsync | выполняет синхронизацию IP в пулах сегментов, т.е. убирает из свободных те, что уже выданы абонентам и т.д. Удобно восстановить целостность после ручной правки базы или же на этапах внедрения. Результатом работы команды будет упорядочивание IP в пулах сегментов, удаление используемых абонентами IP. Если у вас были проблемы с пересортировкой IP в сегментах, когда в пуле одного сегмента присутствовали IP другого, команда исправит эту и другие проблемы с IP в сегментах |
| framedsync | Синхронизирует framed_ip с local_ip согласно VPN базе |
| clear_real_ip | автозабор внешних IP у абонентов в удаленных и отключенных |
Услуги
| Команда | Описание |
|---|---|
| do_freeze | 'заморозка' пользователей по расписанию |
| do_unfreeze | 'разморозка' пользователей по расписанию |
| unfreezeuser | 'разморозка' пользователя по UID - передается параметр UID |
| credit_null | выполняет полное обнуление кредитов по заданному числу |
| tarif_change | выполняет изменения тарифа с нового месяца |
| do_usluga_block | выполняет блокировку всех услуг, в соответствии с датой окончания услуги |
| do_turbo_block | выполняет проверку и своевременную блокировку услуги 'турбо' |
| do_time_credit | обработка временного кредита |
Платежи
| Команда | Описание |
|---|---|
| autopayments | проводит автоплатеж тем у кого интернет отключится через X дней (кол-во можно указать в следующем параметре). |
| do_api_terminal_payments | проводит все платежи Pay API |
| getPrivatTodayPayments | Вносит в биллинг все новые платежи за сегодняшний день из выписки ПриватБанк |
| getPrivatPreviousPayments | Вносит в биллинг все новые платежи за прошлые дни из выписки ПриватБанк, количество дней регулируется в системных опциях |
| discard_thousandths_of_users_balance | решение 'проблемы' '-0.00': отбрасывает все знаки после сотых в балансе базовых пользователей, т.е. '0.001' = 0 и '-0.001' = 0. При использовании этой команды может не сойтись оборотно-сальдовая ведомость и прочие отчёты, т.к. погрешность будет увеличена |
| recount_payments_from | Пересчитывает цепочку платежей с указанной даты и восстанавливает её целостность меняя в конце баланс абонента. Принимает параметры: дата время uid Пример: php index.php recount_payments_from 2022-05-13 php index.php recount_payments_from 2022-05-13 00:00:00 php index.php recount_payments_from 2022-05-13 00:00:00 1123 |
| webkassa_close | Закрыть дневной отчет кассы в webkassa (фискальный отчетный чек) |
MBP (Мониторинг)
| Команда | Описание |
|---|---|
| mbp_ping_bras | Собирает информация о пинге к NAS серверам |
| mbp_ping_devices | Собирает информация о пинге к устройствам |
| mbp_graph_cpu | Добавляет информацию о текущей нагрузке процессора в график |
| mbp_graph_ram | Добавляет информацию о состоянии памяти сервера в график |
| mbp_pon_poll | Собирает информацию об устройствах по snmp, в качестве аргумента может принять ID устройства |
| mbp_pon_flush | Очищает собранную информацию об устройствах, в качестве аргумента может принять ID устройства |
Utility
| Команда | Описание |
|---|---|
| migratenodeny | выполняет миграцию абонентов |
| dhcp_gen | формирует конфигурацию для демона dhcpd |
| user_mrtg_gen | генерирует конфигурационный файл для мониторинга нагрузки online абонентов |
| shaper_init | аналогично действию 'обновить шейперы' |
| do_voip_calls | выполняет об звонку должников на базе Asterisk |
| white_list | формирует 'Белый список', аналогично действию 'обновить белый список' |
| sql_fix | устраняет большинства проблем в БД: не существующие связи и прочие артефакты, которые могли возникнуть до времени введения контроля над действиями сотрудников |
| sql_clear | уменьшает объём базы данных путём очистки низкоприоритетной информации |
| sql_check | выполнить диагностику и ремонт базы данных MikbiLL |
| sql_validate | проверяет наличие всех таблиц в базе данных |
| mysql_rec | показывает рекомендации по параметрам для mysql |
| do_interval | Изменяет скорость абонентам в онлайне (скорость берется из настроек интервала день/ночь. Для NAS типа accelv2, ciscoasr, asr9000, junmxv2 будет использоваться CoA, для остальных PoD Пример использования: php index.php do_interval accelv2 |
| clear_dhcp_log | выполняет очистку лога DHCP в Mysql |
| fiscalization_upd | обновляет старые переменные фискализации из системных опций |
| shaper_generate_vasexperts | Создать индивидуальные шейпера абонентов для vasexperts |
| clear_user_port_from_disabled_deleted | Очищает занятые порты устройства у отключенных и удаленных абонентов |
| do_queue_once | Выполняет задания в очереди (первые 1000 заданий) |
| ip_access_admin | Обновление access list админки |
| ip_access_payment | Обновление access list платежных систем |
| generate_left_days | Просчитывает для всех абонентов дату и кол-во дней до отключения интернета, результат записывается в таблицу sms_users_left_days |
| sender_run_jobs | Выполняет задания из SMS очереди |
| sender_create_jobs | Обрабатывает условия SMS рассылки и добавляет задания в SMS очередь |
| omnicell_migrate_v1_to_v2 | Конвертирует omnicell информацию абонентов с 1-вой версии на 2-ую |
Документы
| Команда | Описание |
|---|---|
| generateinvoices | Генерирует invoice за текущий месяц |
| generateinvoiceslastmonth | Генерирует invoice за прошлый месяц |
| generateinvoicesnextmonth | Генерирует invoice за следующий месяц |
| send_sms_invoices | Отправить счета по СМС |
| send_email_invoices | Отправить счета по email |
| send_post_invoices | Сохранить счета в файлы (для распечатки) |
Отчеты
| Команда | Описание |
|---|---|
| generate_stat_balance | Фиксирует баланс абонентов в момент запуска. Используется в бухгалтерских отчетах. Запускать в конце месяца (после снятия всех абонплат) |
| generate_trial_balance_report | Сгенерировать оборотно-сальдовую ведомость за текущий месяц. Указать период можно передав в первом параметре месяц а во втором год. Пример: php index.php generate_trial_balance_report 01 2021 |
| generate_trial_balance_report_city | Сгенерировать оборотно-сальдовую ведомость по нас. пунктам за текущий месяц. Указать период можно передав в первом параметре месяц а во втором год. Пример: php index.php generate_trial_balance_report_city 01 2021 |
| generate_trial_balance_report_subprovider | Сгенерировать оборотно-сальдовую ведомость по субпровайдерам за текущий месяц. Указать период можно передав в первом параметре месяц а во втором год. Пример: php index.php generate_trial_balance_report_subprovider 01 2021 |
| generate_trial_balance_report_tarif | Сгенерировать оборотно-сальдовую ведомость по тарифам за текущий месяц. Указать период можно передав в первом параметре месяц а во втором год. Пример: php index.php generate_trial_balance_report_tarif 01 2021 |
Подписки
На данный момент реализовано для IPTVPortal и OmegaTV
| Команда | Описание |
|---|---|
| iptv_user_sync | Выполняет синхронизацию подписок указанного абонента с мидлварой. Пример iptv_user_sync 7 |
| iptv_sub_sync | Выполняет синхронизацию абонентов указанной подписки с мидлварой. Пример iptv_sub_sync 101 |