====== Настройка "черного" списка в MikoPBX ====== [[faq:|Обратно к инструкциям]] Периодически каждая компания сталкивается с проблемой поступления «спам» звонков. В связи с этим возникает потребность блокировки определенных номеров, чтобы звонки с этих номеров не поступали. - Создайте новое "[[:dialplan-applications|Приложение диалплан]]" - Укажите произвольное название, к примеру **Blacklist** - Выберите "**Тип кода**" - "**PHP AGI Скрипт**" - Укажите короткий номер для приложения, к примеру 99 - На вкладке "**Программный код**" вставьте: get_variable('ISTRANSFER', true)); $number = substr($agi->request['agi_callerid'],-10); $agi->verbose('new call from '.$agi->request['agi_callerid'], 1); $filename = '/storage/usbdisk1/mikopbx/custom_modules/balcklist.txt'; $result = Processes::mwExec("/usr/sbin/grep '$number' < $filename"); if($isTransfer && $result !==0 ){ $agi->verbose('Add number to black list', 1); // Номер не найден в черном списке. file_put_contents($filename, $number.PHP_EOL, FILE_APPEND); $agi->answer(); $agi->hangup(); }elseif($result === 0){ // Номер найден. $agi->verbose('The number was found in the blacklist. The call will be completed'); $agi->hangup(); } - Сохраните изменения и скопируйте идентификатор приложения из адресной строки браузера - Перейдите в раздел **Система** -> **Кастомизация системных файлов**, откройте для редактирования файл **extensions.conf** {{ :providers:2018-12-11_170112.png |}} - Выберите режим **"Добавлять в конец файла"**, внизу в черное поле для редактирования вставьте следующие строки: [internal-transfer](+) exten => _99,1,Set(__ISTRANSFER=transfer_) same => n,Goto(internal,${EXTEN},1) [add-trim-prefix-clid-custom] exten => _[0-9*#+a-zA-Z][0-9*#+a-zA-Z]!,1,NoOp(start check blacklist) same => n,AGI(DIALPLAN-APP-BE22D80F2A270C0020A1192B001A6653.php) same => n,Return(), где "**DIALPLAN-APP-BE22D80F2A270C0020A1192B001A665**" - это идентификатор приложения - Сохраните изменения! Черный список телефонов будет храниться в файле: \\ "**/storage/usbdisk1/mikopbx/custom_modules/balcklist.txt**" \\ \\ Для добавления номера в черный список просто **выполните переадресацию на номер 99** (слепую, без консультации **99) [[faq:|Обратно к инструкциям]]