====== Консольные команды ====== Консольные команды нужны для выполнения некоторых действий из командной строки или написания собственных скриптов для некоторых действий. {{: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 |