Всем привет. Может кто-то сможет подсказать по синтаксису команды?
Action: GetConfigJSON
ActionID: <value>
Filename: <value>
Category: <value>
Filter: <value>
Конкретно интересует категория "Filter"
Какой должен быть синтаксис? В доке написано:
Filter - A comma separated list of name_regex=value_regex expressions which will cause only categories whose variables match all expressions to be considered. The special variable name TEMPLATES can be used to control whether templates are included. Passing include as the value will include templates along with normal categories. Passing restrict as the value will restrict the operation to ONLY templates. Not specifying a TEMPLATES expression results in the default behavior which is to not include templates.
Но нет примеров. Интернет тоже не богат.
Для примера, я пытаюсь вытащить из файла ami_extensions.conf, секция globals его настройки.
Содержимое файла примерно такое:
[globals]
AMO_CONNECTOR = /var/lib/asterisk/agi-bin/amo-connector/handler.php
AMO_CONNECTOR_PROD = /var/lib/asterisk/agi-bin/amo-connector-prod/handler.php
MONITOR_EXEC = /usr/local/bin/2wav2mp3.sh
ccnumber0 = 123105
ccnumber1 = 123106
smallccnumber0 = 123108
smallccnumber1 = 123139
smallccnumber2 =
MOBILE_120 = 89104XXXXXX
MOBILE_200 = 89035XXXXXX
MOBILE_201 = 89629XXXXXX
MOBILE_202 = 89168XXXXXX
я бы хотел вытащить только строки, в которых есть значение "MOBILE". Как это можно сделать с помощью filter и можно ли вообще?
Пытался подставить регулярки из ЯП, но либо показывает весь конфиг, либо ничего.
Пытался подставлять:
Filter: myfilter=MOBILE* - No categories found
Filter: myfilter=MOBILE\w* - No categories found
Filter: myfilter=.* - выдает весь конфиг (в целом, ожидаемо)
Сделать обработку средствами языка программирования не проблема, но, если есть возможность решить это средствами астера, то конечно хотелось бы сделать с помощью него. Иначе, как говорится, это не python way.