@SteepNET

Парсинг black_list Asterisk?

Добрый день! Прошу помощи спарсить БД Астериска и дописать скрипт..

Команда в CLI Asteisk "asterisk -rx "database show" | grep blacklist" выводит все номера черного списка в формате
/blacklist/+79999999999 : 1
/blacklist/+78888888888 : 1

Есть метод для запросов к базе - $res = myQuery($sql, true);
Можно выполнять команды в Asterisk, из скрипта и парсить ответ - exec('asterisk -rx "database show" | grep blacklist', $res);

Задача спарсить номера и поместить их в переменную $black_list
Должно получиться что то вроде:
$black_list = array('+79999999999' , '+7888888888');
  • Вопрос задан
  • 132 просмотра
Пригласить эксперта
Ответы на вопрос 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
preg_match_all('/\/([+0-9])+\s:/', `asterisk -rx "database show" | grep blacklist`, $matches);
$black_list = $matches[1];

Если номера всегда по 12 знаков, включая плюс, то можно так
preg_match_all('/[+0-9]{12}/', `asterisk -rx "database show" | grep blacklist`, $black_list);
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы