ВидеоКонф(ВКС)  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

Черный список не срабатывает

Проблемы и их решения Asterisk как такового

Модераторы: april22, Zavr2008

Re: Черный список не срабатывает

Сообщение fecyt » 12 дек 2017, 16:34

Вы, лучше, скиньте лог, где у Вас в конфигурации, описанной выше, срабатывает постоянно блэклист.
Заодно и вывод "database show".
fecyt
 
Сообщений: 148
Зарегистрирован: 17 янв 2017, 18:51

Re: Черный список не срабатывает

Сообщение andrystepa » 12 дек 2017, 16:48

fecyt писал(а):Ну не знаю, у меня все получилось.
[Показать] Спойлер:
localhost*CLI> database show
/blacklist/101 : blacklist test
1 results found.

== Using SIP RTP CoS mark 5
-- Executing [100@test:1] GotoIf("SIP/101-00000004", "1?blacklisted") in new stack
-- Goto (test,100,3)
-- Executing [100@test:3] Hangup("SIP/101-00000004", "") in new stack


На счет AGI, если пару номеров надо чекнуть, зачем писать сторонний скрипт, вызывать его и тратить на это ресурсы и время? Вопрос риторический.

Я в конфиге написал такую конструкцию:
Код: выделить все
exten = mi,1,Log(NOTICE,$[blacklist()])

Добавил в базу телефон 79774177456
Он там появился:
Код: выделить все
vtigercrm*CLI> database show
/blacklist/74953799628                            : 1                       
/blacklist/79774177456                            : 1                       
/blacklist/79857880714                            : 1                       
/dundi/secret                                     : KmHzZFZc1WcjTQZVIhbYNw==;CFWbQko8N0J0Hp8aM4NnQQ==
/dundi/secretexpiry                               : 1513084310               
5 results found.
vtigercrm*CLI>

Позвонил, и вот что увидел в логе:
Код: выделить все
Executing [mi@incoming_calls:1] Log("SIP/asterisk-gw-00001415", "NOTICE,0") in new stack

Т.е. функция возвратила false. Почему?
andrystepa
 
Сообщений: 17
Зарегистрирован: 03 апр 2014, 09:57

Re: Черный список не срабатывает

Сообщение shader » 12 дек 2017, 16:49

ааа, вот откуда оно пошло
https://www.voip-info.org/wiki/view/Ast ... +BLACKLIST
Та это ж вроде тупо обертка для метода DB().
shader
 
Сообщений: 117
Зарегистрирован: 09 авг 2013, 10:33

Re: Черный список не срабатывает

Сообщение shader » 12 дек 2017, 16:53

И еще: самые частые ошЫбки появляются при копипасте :)
У Вас написано:
Код: выделить все
exten = mi,1,GotoIf($["${BLACKLIST()}"=1]?blacklist)
exteb = mi,n,Dial(SIP/101)
....
exten = mi, n(blacklist), Playback(privacy-unident)
Hangup()

В оригинале:
Код: выделить все
exten => s,1,GotoIf(${BLACKLIST()}?blacklisted)
exten => s,n,Dial(SIP/123)
exten => s,n(blacklisted),Hangup()

Я нашёл аж целых две :)
shader
 
Сообщений: 117
Зарегистрирован: 09 авг 2013, 10:33

Re: Черный список не срабатывает

Сообщение andrystepa » 12 дек 2017, 17:00

Первая ошибка от того что не копипастил, а руками писал.
А вторая - я уже писал, что конфигурация:
Код: выделить все
exten => s,1,GotoIf(${BLACKLIST()}?blacklisted)
exten => s,n,Dial(SIP/123)
exten => s,n(blacklisted),Hangup()

у меня отсеивает все звонки подряд.
andrystepa
 
Сообщений: 17
Зарегистрирован: 03 апр 2014, 09:57

Re: Черный список не срабатывает

Сообщение shader » 12 дек 2017, 17:05

только что воспроизвел этот пример у себя на DEV asterisk. Все работает как задекларировано.
Версия asterisk - 13.18.2
shader
 
Сообщений: 117
Зарегистрирован: 09 авг 2013, 10:33

Re: Черный список не срабатывает

Сообщение Wapo » 12 дек 2017, 17:15

Для начала первой строкой поставьте exten => s,1,NoOp(${CALLERID(num)}) - сразу увидите номер вызывающего
Аватар пользователя
Wapo
 
Сообщений: 795
Зарегистрирован: 02 мар 2011, 18:53

Re: Черный список не срабатывает

Сообщение fecyt » 12 дек 2017, 17:22

У меня такая конструкция вообще не работает. Получили вывод и не написали еще несколько строк с варнингами, которые ругались на некорректный синтаксис.
А вот
Код: выделить все
exten => 100,1,Log(NOTICE,${BLACKLIST()})

[Показать] Спойлер:
-- Executing [100@test:1] Log("SIP/101-00000005", "NOTICE,1") in new stack
[Dec 12 08:18:21] NOTICE[8562][C-00000006]: Ext. 100:1 @ test: 1


И с номером не в блэклисте
[Показать] Спойлер:
-- Executing [100@test:1] Log("SIP/102-00000008", "NOTICE,0") in new stack
[Dec 12 08:18:46] NOTICE[9127][C-00000009]: Ext. 100:1 @ test: 0

Между прочим, синтаксис чувствителен к регистру, функции blacklist() нет, есть BLACKLIST()

Так, что пишите корректно, и будет работать, а не как сейчас, спустя рукава.
fecyt
 
Сообщений: 148
Зарегистрирован: 17 янв 2017, 18:51

Re: Черный список не срабатывает

Сообщение andrystepa » 12 дек 2017, 17:27

Сделал. В логе увидел вот что:
Код: выделить все
Executing [mi@incoming_calls:1] NoOp("SIP/asterisk-gw-00001417", "79774175476") in new stack
[Dec 12 16:23:10] VERBOSE[9513][C-00000abf] pbx.c:     -- Executing [mi@incoming_calls:2] Log("SIP/asterisk-gw-00001417", "NOTICE,0") in new stack

В общем то то, что и должно было быть.
Про синтаксис знаю. У меня так и есть. Сейчас наконец скопирую:
Код: выделить все
exten = mi,1,NoOp(${CALLERID(num)})
exten = mi,n,Log(NOTICE,$[BLACKLIST()])

И все же почему BLACKLIST() возвращает 0 на имеющийся в базе номер?
Последний раз редактировалось andrystepa 12 дек 2017, 17:32, всего редактировалось 1 раз.
andrystepa
 
Сообщений: 17
Зарегистрирован: 03 апр 2014, 09:57

Re: Черный список не срабатывает

Сообщение fecyt » 12 дек 2017, 17:32

То, что и должно было быть - работает? или нет?

Если не работает, то выше
Код: выделить все
vtigercrm*CLI> database show
/blacklist/74953799628                            : 1                       
/blacklist/79774177456                            : 1                       
/blacklist/79857880714                            : 1                       
/dundi/secret                                     : KmHzZFZc1WcjTQZVIhbYNw==;CFWbQko8N0J0Hp8aM4NnQQ==
/dundi/secretexpiry                               : 1513084310               
5 results found.
vtigercrm*CLI>

И тут такого номера нет.
fecyt
 
Сообщений: 148
Зарегистрирован: 17 янв 2017, 18:51

Пред.След.

Вернуться в Конфигурация и настройка Asterisk

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 13

© 2008 — 2024 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH