====== Консольные команды ======
Консольные команды нужны для выполнения некоторых действий из командной строки или написания собственных скриптов для некоторых действий.
{{:billing:preferences:management:console_commands_2x.jpg?800|}}
===== Запуск из косноли =====
Общий принцип всех команд одинаков: для начала нужно зайти в директорию "админки".
cd /var/www/mikbill/admin
далее выполняем:
php ./index.php "команда" "параметр"
Параметр по необходимости, если их несколько то разделителем является пробел
===== Доступные команды =====
==== Абонплата ====
^ Команда ^ Описание ^ Дополнительно запускаются команды ^
|pay_day|Снимает ежедневную абонплату по тарифу и аренде устройств:\\ [[admin/main/tariffs/types/7]] | clear_user_port_from_disabled_deleted\\ do_create_ticket_offline\\ do_create_ticket_freezed\\ do_create_ticket_blocked |
|pay_day2|Снимает ежедневную абонплату по тарифу и аренде устройств:\\ [[admin/main/tariffs/types/10]]\\ \\ Дополнительно обрабатывает:\\ триал подписки\\ ежедневные подписки \\ подписки "как в тарифе" | generate_stat_balance\\ cyclic_cleaning |
|pay_day_monthly|Снимает месячную абонплату по тарифу и аренде устройств:\\ [[admin/main/tariffs/types/11]]\\ \\ Дополнительно обрабатывает: \\ подписки "как в тарифе" | |
|pay_mth|Снимает месячную абонплату по тарифу и аренде устройств:\\ [[admin/main/tariffs/types/8]]\\ [[admin/main/tariffs/types/9]]\\ [[admin/main/tariffs/types/12]]\\ \\ Дополнительно обрабатывает:\\ ежемесячные подписки \\ подписки "как в тарифе" | device_installments\\ packet_installments |
|pay_mth_ost|Снимает остаточную месячную абонплату по тарифу:\\ [[admin/main/tariffs/types/9]] | |
|pay_tarif_type_4|Снимает абонплату по тарифу:\\ [[admin/main/tariffs/types/13]] | |
|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|проводит все платежи [[billing:configuration:payment_api|Pay API]]|
|getPrivatTodayPayments|Вносит в биллинг все новые платежи за сегодняшний день из выписки ПриватБанк|
|getPrivatPreviousPayments|Вносит в биллинг все новые платежи за прошлые дни из выписки ПриватБанк, количество дней регулируется в системных опциях|
|discard_thousandths_of_users_balance|решение 'проблемы' '-0.00': отбрасывает все знаки после сотых в балансе базовых пользователей, т.е. '0.001' = 0 и '-0.001' = 0.\\ При использовании этой команды может не сойтись оборотно-сальдовая ведомость и прочие отчёты, т.к. погрешность будет увеличена|
|recount_payments_from|Пересчитывает цепочку платежей с указанной даты и восстанавливает её целостность меняя в конце баланс абонента. \\ Пример: \\ php index.php recount_payments_from 2022-05-13 00:00:00 \\ php index.php recount_payments_from 2022-05-13|
|webkassa_close|Закрыть дневной отчет кассы в webkassa (фискальный отчетный чек)|
==== MBP (Мониторинг) ====
^ Команда ^ Описание ^
|mbp_ping_bras | Собирает информация о пинге к NAS серверам|
|mbp_ping_devices | Собирает информация о пинге к устройствам|
|mbp_graph_cpu | Добавляет информацию о текущей нагрузке процессора в график|
|mbp_graph_ram | Добавляет информацию о состоянии памяти сервера в график|
==== Utility ====
^ Команда ^ Описание ^
|migratenodeny|выполняет миграцию абонентов|
|dhcp_gen|формирует конфигурацию для демона dhcpd|
|user_mrtg_gen|генерирует конфигурационный файл для мониторинга нагрузки online абонентов |
|shaper_init|аналогично [[billing:preferences:management:actions|действию]] 'обновить шейперы'|
|do_voip_calls|выполняет об звонку должников на базе Asterisk|
|white_list|формирует '[[billing:preferences:security:whitelist|Белый список]]', аналогично [[billing:preferences:management:actions|действию]] 'обновить белый список'|
|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 | [[billing/howto/individual_shaper_vasexperts|Создать индивидуальные шейпера абонентов для vasexperts]] |
|clear_user_port_from_disabled_deleted| Очищает занятые порты устройства у отключенных и удаленных абонентов|
|do_queue_once|Выполняет задания в очереди (первые 1000 заданий)|
|ip_access_admin|Обновление [[admin/settings/ip_access|access list админки]]|
|ip_access_payment|Обновление [[billing/secure_16122020|access list платежных систем]]|
|generate_left_days|Просчитывает для всех абонентов дату и кол-во дней до отключения интернета, результат записывается в таблицу sms_users_left_days|
==== Документы ====
^ Команда ^ Описание ^
|generateinvoices |[[docs:invoices:generate|Генерирует invoice]] за текущий месяц |
|generateinvoiceslastmonth |[[docs:invoices:generate|Генерирует invoice]] за прошлый месяц |
|generateinvoicesnextmonth |[[docs:invoices:generate|Генерирует invoice]] за следующий месяц |
|send_sms_invoices |[[docs:invoices:sms|Отправить счета по СМС]] |
|send_email_invoices |[[docs:invoices:email|Отправить счета по email]] |
|send_post_invoices |[[docs:invoices:files|Сохранить счета в файлы]] (для распечатки) |
==== Отчеты ====
^ Команда ^ Описание ^
|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 |