Консольные команды

Консольные команды нужны для выполнения некоторых действий из командной строки или написания собственных скриптов для некоторых действий.

Вызов консольных команд в версии 2.х:

nolink&|

Общий принцип всех команд одинаков: для начала нужно зайти в директорию "админки".

Для Linux систем:

cd /var/www/mikbill/admin

Для FreeBSD систем:

cd /usr/local/www/mikbill/admin

далее выполняем:

php ./index.php "команда" "параметр"
Параметр по необходимости, если их несколько то разделителем является пробел

# raw раздел

По умолчанию можно настроить запуск консольных команд каждые:

  • 5 минут (mikbill_5min.sh)
  • час (mikbill_hour.sh)
  • день (mikbill_block.sh; mikbill_day.sh)
  • 1 раз в начале месяца (mikbill_mth.sh)
  • 1 раз в середине месяца (mikbill_halfmonth.sh)
  • 1 раз в конце месяц (mikbill_lastday.sh)

Запуск осуществляется по записям в cron.

Список скриптов включенных по умолчанию в CRON

Дополнительные скрипты

Скрипты можно найти в директории:
 Linux: /var/www/mikbill/admin/sys/scripts 
 
 BSD:   /usr/local/www/mikbill/admin/sys/scripts
 
Если добавили свой скрипт в выше указанные директории, то НЕ забудьте поставить права на исполнение скрипта
КомандаОписание
rad_onlineзапускает 'сборщик мусора', который находит и закрывает, 'зависшие' сессии абонентов, если вдруг возник какой либо сбой на NAS
pool_onlineзапускает 'сборщик мусора IP', который утилизирует IP из IP-Pool, в случае, если они уже перестали использоваться, но остались еще выданными
clear_onlineочистит список текущего онлайна
clear_pool_onlineВернуть все IP в свои пулы ip_pool
user_mrtg_genгенерирует конфигурационный файл для мониторинга нагрузки online абонентов
do_turbo_blockвыполняет проверку и своевременную блокировку услуги 'турбо'
unlim_blockвыполняет блокировку Интернета абонентам, у которых нахватает денег на абон.плату (только для ежедневных абон.плат и плавающей даты)
unlim_block_monthвыполняет блокировку Интернета абонентам, у которых нахватает денег на абон.плату (только для ежемесячных абон.плат, кроме плавающей даты)
changetarifuserизменяет шейпер у абонента после смены тарифа, 3 параметра: UID, старый GID , новый GID
do_freeze'заморозка' пользователей по расписанию
do_unfreeze'разморозка' пользователей по расписанию
unfreezeuser'разморозка' пользователя по UID - передается параметр UID
do_freeze_abonplataснимает ежедневную абонплату заморозки, если таковая существует
pay_dayснимает ежедневную абонплату, если таковая существует
pay_day_monthlyснимает 'месячную абонплату' по указанной дате в учетке абонента
pay_day2снимает 'ежедневную абонплату' пропорционально количеству дней месяца
pay_realснимает 'ежедневную абонплату' за использование услуги Real-ip, если таковая существует
pay_creditоплата услуги % по кредиту
clear_dhcp_logвыполняет очистку лога DHCP в Mysql
do_usluga_blockвыполняет блокировку всех услуг, в соответствии с датой окончания услуги
credit_nullвыполняет полное обнуление кредитов по заданному числу
otkl_neplatперенос в группу 'отключенные' по истечению количества дней (регулируется 'системными опциями')
del_otklперенос в группу 'удаленные' из 'отключенных' по истечению количества дней (регулируется 'системными опциями')
clear_real_ipавтозабор внешних IP у абонентов в удаленных и отключенных
dhcp_genформирует конфигурацию для демона dhcpd
block_dolgnikiблокировать локальную сеть должникам
block_dolgniki_inetблокировать интернет должникам (тем, у кого (депозит + лимит) < 0 и включёны интернет и локальная сеть. С 2.8.13 в платежах создаётся запись типа "Блокировка интернета в связи с окончанием средств". Таким образом её можно использовать для реализации схемы "загнать абонента в минус и заблокировать интернет".
pay_mth_ostснимает остаточную абонплату за месяц (тип абонплаты - 'каждый месяц обязан потратить')
tarif_changeвыполняет изменения тарифа с нового месяца
migratenodenyвыполняет миграцию абонентов
pay_mthснимает месячную абонплату
shaper_initаналогично действию 'обновить шейперы'
do_voip_callsвыполняет об звонку должников на базе Asterisk
white_listформирует 'Белый список', аналогично действию 'обновить белый список'
sectorsyncвыполняет синхронизацию IP в пулах сегментов, т.е. убирает из свободных те, что уже выданы абонентам и т.д. Удобно восстановить целостность после ручной правки базы или же на этапах внедрения. Результатом работы команды будет упорядочивание IP в пулах сегментов, удаление используемых абонентами IP, а также исключение из пула адресов, указанных в параметре Range, ваших сегментов. Если у вас были проблемы с пересортировкой IP в сегментах, когда в пуле одного сегмента присутствовали IP другого, команда исправит эту и другие проблемы с IP в сегментах
do_api_terminal_paymentsпроводит все платежи Pay API
do_disable_locked_usersперенос в группу 'отключенные' по прошествии N дней с момента блокировки Интернета по недостатку средств (регулируется 'системными опциями'). Не переносятся в отключённые абоненты с "вечным лимитом" и те, у которых с момента регистрации не прошло N дней
do_disable_users_contract_stateпереводит в группу 'отключённые' базовых пользователей, у которых статус контракта 'приостановлен'
do_remove_users_contract_stateпереводит в группу 'удалённые' базовых пользователей, у которых статус контракта 'закрыт'
discard_thousandths_of_users_balanceрешение 'проблемы' '-0.00': отбрасывает все знаки после сотых в балансе базовых пользователей, т.е. '0.001' = 0 и '-0.001' = 0. При использовании этой команды может не сойтись оборотно-сальдовая ведомость и прочие отчёты, т.к. погрешность будет увеличена
sql_fixустраняет большинства проблем в БД: не существующие связи и прочие артефакты, которые могли возникнуть до времени введения контроля над действиями сотрудников
sql_clearуменьшает объём базы данных путём очистки низкоприоритетной информации
sql_checkвыполнить диагностику и ремонт базы данных MikbiLL
update_date_of_contract_by_regdateвносит абонентам без 'даты заключения договора' дату заключения, которая соответствует дате регистрации абонента в системе биллинга
do_create_ticket_blockedсоздаёт тикеты на обзвон абонентов, которых отключило от Интернета N дней назад (всё настраивается в системных опциях)
getPrivatTodayPaymentsВносит в биллинг все новые платежи за сегодняшний день из выписки ПриватБанк
getPrivatPreviousPaymentsВносит в биллинг все новые платежи за прошлые дни из выписки ПриватБанк, количество дней регулируется в системных опциях
proceed_users_pending_changesВыполнить все отложенные изменения абонентов, которые готовы к активации
remove_used_framed_IP_from_framed_poolИз пула (справочника) реальников удаляет те IP, которые уже выданы абонентам
userkick Выполняет выкидывание абонента по UID (Консольная версия команды Админки "Выкинуть из Интернета" ). Пример: userkick 1234, где 1234 - uid абонента
prepare_mobile_and_sms_phones убирает из "мобильный номер" и "смс номер" всех абонентов все символы, кроме цифр
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 Выкинуть всех кто на учетном тарифе, плавающая дата
framedsync Синхронизирует framed_ip с local_ip согласно VPN базе
do_interval Изменяет скорость абонентам в онлайне (скорость берется из настроек интервала день/ночь. Для NAS типа accelv2, ciscoasr, asr9000, junmxv2 будет использоваться CoA, для остальных PoD
  • billing/preferences/management/console.txt
  • Последние изменения: 3 дней назад
  • — Александр Дудяк