Konstantin
11.01.2018
07:26:41
В фильтре: sip.Call-ID=="тут call id"
И ещё вопрос: а какой мехнизм авторизации вызовов используется? Т.е. как "по идее" всё работает?
Andrey
11.01.2018
07:28:16
Konstantin
11.01.2018
07:29:03
RADIUS/FreeSwitch ACL/Регистрация по имени и паролю из XML User Directory?
Google
Andrey
11.01.2018
07:29:33
т.е. стандартный directory/xml + mod_radius (но там юзеров нет, пока только для теста запросов т.е. радиус всегда дает отлуп)
acl не используем
Konstantin
11.01.2018
07:30:52
Т.е. в начале идёт Digest авторизация на основе информации из XML User Directory, а потом в DialPlan вызывается приложение модуля RADIUS. Так?
Andrey
11.01.2018
07:31:51
да
все верно
Konstantin
11.01.2018
07:32:40
Flow вызова покажи
Нужно это. И нужно кусок лога FreeSwitch для этого же вызова. Лучше grep по UUID из freeswitch.log
Andrey
11.01.2018
07:33:12
<extension name="radius-auth" continue="true">
<condition field="ani" expression="^27\d{4}$"/>
<condition field="${radius_auth_result}" expression="^$">
<action application="radius_auth" inline="true"/>
</condition>
</extension>
и в принципе все.... т.е. значение переменной radius_auth никак далее не проверяю
сейчас попробуем
Пример вызова, который прошел аутентификацию, успешно смаршрутизировался на внешний шлюз и там получил отбой
Konstantin
11.01.2018
07:51:29
Какой RADIUS модуль используется?
Andrey
11.01.2018
07:52:16
mod_xml_radius
Konstantin
11.01.2018
07:52:43
Выгрузи его unload mod_xml_radius и попробуй снова
Andrey
11.01.2018
07:52:47
радиус посылает его нормально:
Google
Andrey
11.01.2018
07:52:48
Thu Jan 11 10:51:34 2018 : Auth: Invalid user: [270481/<via Auth-Type = Reject>] (from client 91.197.172.28 port 0 cli 78352270481)
Thu Jan 11 10:51:34 2018 : Auth: Invalid user: [270481/<via Auth-Type = Reject>] (from client 91.197.172.28 port 0 cli 78352270481)
Thu Jan 11 10:51:34 2018 : Auth: Invalid user: [270481/NOT_SET] (from client 91.197.172.28 port 0 cli 78352270481)
Thu Jan 11 10:51:35 2018 : Auth: Invalid user: [270481/NOT_SET] (from client 91.197.172.28 port 0 cli 78352270481)
Thu Jan 11 10:51:35 2018 : Auth: Invalid user: [270481/NOT_SET] (from client 91.197.172.28 port 0 cli 78352270481)
Konstantin
11.01.2018
07:57:02
<param name="xml-handler-bindings" value="directory"/>
Такоф параметр присутствует в конфиге модуля?
Andrey
11.01.2018
07:57:51
xml_radius модуля? нет
Konstantin
11.01.2018
07:58:03
Да
Модуль выключил? Попробовал позвонить?
Andrey
11.01.2018
07:58:56
модуль выгрузил, жду звонка от клиента
Konstantin
11.01.2018
08:02:30
http://code.metager.de/source/xref/freeswitch/src/mod/xml_int/mod_xml_radius/xml_radius.conf.xml
Это видимо, полный конфиг модуля
Andrey
11.01.2018
08:07:05
есть звонок, сейчас смотрю
так
похоже теперь норм
но не понятно, почему модуль радиуса авторизировал клиента, если сам радиус говорил reject/invalid
Konstantin
11.01.2018
08:37:55
У тебя конфиг такогоже формата, как тот, что я тебе прислал по ссылке?
Радиус точно присылает REJECT на все запросы?
Просто, суть в том, что этот модуль работает на нескольких стадиях прохождения вызова.
Одна из стадий: поиск информации для авторизации пользователя. Это выглядит так: приходит INVITE, freeswitch опрашивает обработчики типо directory, эти обработчики возвращают XML фрагмент, описывающий пользователя. Т.е. сам по себе RADIUS в этом месте ничего не решает, он просто отдаёт параметры, необходимые для авторизации пользователя самим FreeSwitch.
Если не хочешь RADIUS в этом месте использовать, то нужно отключить этот обработчик в настройках модуля.
Andrey
11.01.2018
08:47:39
да я вообщем-то с радиус хорошо знаком и на настройку модуля потратил кучу времени
причем все работало, и случайно эта история вылезла
Google
Andrey
11.01.2018
08:52:03
да и насколько я помню при INVITE именно радиус проверяет Digest авторизацию
Konstantin
11.01.2018
08:53:17
https://habrahabr.ru/post/240339/
Тут подробно объяснено что и как работает.
Andrey
11.01.2018
08:58:59
помоему не совсем верно, т.к. при REGISTER/INVITE запросах, именно Freeswitch передает в радиус, набор аттрибутов для Digest авторизации
более того замечено, если через mod_xml_radius пришел reject на авторизацию то fs потом лезет в xml_directory и там пытается уже по файлам найти
Konstantin
11.01.2018
14:20:54
Замечено на твоей инсталляции, которую отлаживаем?
mizantrop.HQ
11.01.2018
14:34:34
ой как знакомо что нет документации по mod_xml_radius - мне по наследству достался fs завязанный через mod_xml с чудным ланбиллингом причем спец который строил эту связку закастомизировал сам модуль на сях ? я в сях как свиня в парасях (или как там говорится) сижу пытаюсь понять что да как там. у меня в логах при звонке пишетч что сначала он роется в ACLs а потом сваливается уже в дайжджест авторизацию.
Konstantin
11.01.2018
14:37:44
Всё верно пишет.
На ACL он ссылается потому, что указан параметр register-acl в sofia профиле.
Ivan
12.01.2018
09:35:52
Привет, в логах много варнингов.
[WARNING] switch_rtp.c:6553 Received an unsupported RTCP packet version 3
из-за чего может такое возникать или можно не обращать внимания?
Alexey
12.01.2018
10:21:20
особенно если вас процент доставки RTP мало волнует
Dmitriy
15.01.2018
05:28:03
А в России есть фирмы которых может этот процент волновать?)
Евгений
15.01.2018
05:59:52
Добрый день!
Такой вопрос интересует меня: Можно ли на FusionPBX сделать небольшой (агентов на 20) колл-центр с записью звонков и динамическими агентами?
только установил, в веб интерфейсе есть подобные опции. Надо потестировать. Надеюсь, оно работает так же круто, как выглядит))
Boris
15.01.2018
06:06:34
Какую версию установили?
Евгений
15.01.2018
06:08:03
вернее, установил давненько, а сейчас на работе вспомнил про неё, раскатал в виртуалке, смотрю, что тут есть
сейчас коллцентр есть и он работает, но звонки пишет.... кривенько.
либо клеить надо, либо с moh'ом. Проблема при переводе звонка из очереди в очередь -клиент ждёт, слушает мох и он пишется.
Коллцентр в Elastix ещё более странный -там оператор регистрируется и всегда на линии. Так не надо, наши операторы с ума сойдут, у них есть аппаратные grandstream и им лучше поднимать трубку, чем всегда быть на линии и слушать мелодию
Google
Евгений
15.01.2018
06:12:15
коллцентров много, но не устраивает на все 100. Астериск знаю пока не очень хорошо, изучаю в процессе, раньше только через web настраивал и этого было достаточно (иногда под капот приходилось залезть, но не сложные вещи сделать)
Требуется: агенту зарегистироваться в очереди, иногда ставить на паузу, отключаться из очереди. Записывать все входящие звонки. CDR. И при входящем звонке передавать номер в Zabbix.
Анатолий
15.01.2018
06:13:42
здесь неплохое описание простецкого коллцентра
Konstantin
15.01.2018
06:14:13
Евгений
15.01.2018
06:14:51
не слышал такое. Можно попробовать
Admin
Konstantin
15.01.2018
06:15:07
Евгений
15.01.2018
06:17:11
уже смотрю, спасибо!)
Igor
15.01.2018
06:22:44
Господа, а что есть vhlr и с чем его едят? Что-то документации никакой не могу найти совсем
Евгений
15.01.2018
06:26:40
предположу,
https://gsm.academic.ru/3924/virtual__HLR
Igor
15.01.2018
06:27:15
Да это уже нагуглено) вопрос как это выглядит на практике
Виталий
15.01.2018
07:05:21
Выглядит как поиск по базе клиентов и выявление ответстанного с последующим посылом звонка на него
енот
15.01.2018
08:13:45
здрасьте, а фрисвич умеет из базы диалплан брать? Не набор переменных как тут https://freeswitch.org/confluence/display/FREESWITCH/mod_odbc_query , а что-то типа mod_xml_curl
Alexandru
15.01.2018
08:14:36
эээ
ну так mod_xml_curl и есть о_О
енот
15.01.2018
08:14:54
так он через http же
Alexandru
15.01.2018
08:15:00
а тьфу
напрямую из базы
Google
Konstantin
15.01.2018
08:15:15
А как ты себе этот механизм представляешь?
енот
15.01.2018
08:15:19
с трудом
Konstantin
15.01.2018
08:15:49
Особенно, если учесть всю возможную логику XML dialplan
Alexandru
15.01.2018
08:16:18
енот
15.01.2018
08:16:56
не, эт бред и я спросил бред
Konstantin
15.01.2018
08:16:57
Для Asterisk это так и есть, по сути. Я думаю, что ноги задачи растут именно от этой информации.
енот
15.01.2018
08:17:06
вообще задача уехать с астериска
Константин как всегда проницателен и телепатичен
Alexandru
15.01.2018
08:17:21
так а чем xml_curl не угодил?
Konstantin
15.01.2018
08:17:48
енот
15.01.2018
08:18:09
там бэк на пхп, задача уехать от туевой хучи коннектов астериска в базу
у нас там стек омфг, ужасно лагает на 200 звонках одновременных
Alexandru
15.01.2018
08:18:50
ami/ari и xml_curl - разные вещи
во-первых ты вебсервер с xml_curl можешь посадить для каждого свича свой
во вторых он исполняется до обработки звонка
и нагрузку на ЦП дает уже сам фс
Konstantin
15.01.2018
08:19:44
БОльшую часть конфига можно генерировать в статику только при изменении.
Оптимальный вариант - это сочетание статики и скриптов.
енот
15.01.2018
08:20:45
я просто думаю будет ли смысл, я привык на ноде поднимать бэк для своих проектов, там соответственно один коннект в базу и всё.