freeswitchforum.com

Форум поддержки FreeSWITCH

FreeSWITCH is a registered trademark of Anthony Minessale. Official FreeSWITCH site.

Текущее время: 16 апр 2024 15:15

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 4 ] 
Автор Сообщение
 Заголовок сообщения: Action и Anti-action по коду Radius.
СообщениеДобавлено: 08 июн 2017 09:25 

Зарегистрирован: 06 июн 2017 15:45
Сообщения: 21
Здравствуйте господа. Прикрутил авторизацию исходящих маршрутов в FusionPBX 4.2.2 с radius сервером через модуль mod_rad_auth. Код от сервера radius возвращается и модуль успешно его считывает в пакете, отчитываясь об этом в логе.
Код:
58    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:523 set variable return_code := 1
59    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:522 attribute (RADIUS_RETURN_CODE) found in radius packet
60    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:519 Handle attribute: RADIUS_RETURN_CODE


Список всех исходящих направлений в домене выглядит так:

    Name Number Context Order Enabled
    RADIUS c1.sip.telezon.ru 1 True
    RADIUS_REJECT c1.sip.telezon.ru 99 True
    To_provider_2197827.11d c1.sip.telezon.ru 100 True
    To_provider_2197827.7d c1.sip.telezon.ru 100 True
    To_provider_2197827.MN c1.sip.telezon.ru 100 True

Теперь я пытаюсь выполнить задачу по разрешению/запрету вызова в зависимости от полученного кода.
В направление RADIUS_REJECT добавил две строки:

    Tag Type Data Break Inline Group Order
    condition ${return_code} ^1$ 0 5
    action hangup CALL_REJECTED 0 15

Но видимо это правило срабатывает еще до получения кода от Radius, т.к. вызов успешно проходит.
После этого я попытался добавить условия непосредственно в направление To_provider_2197827.7d:

    Tag Type Data Break Inline Group Order
    condition destination_number ^(\d{7})$ 1 7
    condition regex any never 1 8
    regex ${return_code} ^0$ 1 9
    action set sip_h_X-accountcode=${accountcode} 1 14
    action set redirectnumber=${h323-redirect-number} 1 15
    action set call_direction=outbound 1 20
    action set hangup_after_bridge=true 1 25
    action set effective_caller_id_name=${outbound_caller_id_name} 1 30
    action set effective_caller_id_number=${outbound_caller_id_number} 1 35
    action set inherit_codec=true 1 40
    action set ignore_display_updates=true 1 42
    action set callee_id_number=$1 1 43
    action set continue_on_fail=true 1 45
    action bridge sofia/gateway/To_provider_2197827/$1 1 70
    anti-action hangup CALL_REJECTED 1 80

В этом случае всегда отрабатывает anti-action, вне зависимости от пришедшего кода.
Логи:
Код:
25    484e7249-5d5a-4943-a239-169fef8b2c91 2017-06-08 11:55:36.332789 [NOTICE] mod_dptools.c:1286 Hangup sofia/internal/434@c1.sip.telezon.ru [CS_EXECUTE] [CALL_REJECTED]
26    484e7249-5d5a-4943-a239-169fef8b2c91 EXECUTE sofia/internal/434@c1.sip.telezon.ru hangup(CALL_REJECTED)
27    484e7249-5d5a-4943-a239-169fef8b2c91 EXECUTE sofia/internal/434@c1.sip.telezon.ru hash(insert/c1.sip.telezon.ru-last_dial/434/2141101)
28    484e7249-5d5a-4943-a239-169fef8b2c91 2017-06-08 11:55:36.332789 [DEBUG] switch_channel.c:1296 EXPORT (export_vars) (REMOTE ONLY) [api_on_answer]=[uuid_record 484e7249-5d5a-4943-a239-169fef8b2c91 start /var/lib/freeswitch/recordings/c1.sip.telezon.ru/archive/2017/Jun/08/484e7249-5d5a-4943-a239-169fef8b2c91.wav]
29    484e7249-5d5a-4943-a239-169fef8b2c91 EXECUTE sofia/internal/434@c1.sip.telezon.ru export(nolocal:api_on_answer=uuid_record 484e7249-5d5a-4943-a239-169fef8b2c91 start /var/lib/freeswitch/recordings/c1.sip.telezon.ru/archive/2017/Jun/08/484e7249-5d5a-4943-a239-169fef8b2c91.wav)
30    484e7249-5d5a-4943-a239-169fef8b2c91 2017-06-08 11:55:36.332789 [DEBUG] switch_cpp.cpp:1112 sofia/internal/434@c1.sip.telezon.ru destroy/unlink session from object
31    2017-06-08 11:55:36.332789 [DEBUG] freeswitch_lua.cpp:382 DBH handle 0x7fdc2c24f260 released.
32    2017-06-08 11:55:36.332789 [DEBUG] freeswitch_lua.cpp:365 DBH handle 0x7fdc2c24f260 Connected.
33    484e7249-5d5a-4943-a239-169fef8b2c91 2017-06-08 11:55:36.332789 [DEBUG] switch_cpp.cpp:745 CoreSession::setVariable(call_block, )
34    484e7249-5d5a-4943-a239-169fef8b2c91 EXECUTE sofia/internal/434@c1.sip.telezon.ru lua(app.lua call_block)
35    484e7249-5d5a-4943-a239-169fef8b2c91 2017-06-08 11:55:36.332789 [DEBUG] mod_dptools.c:1530 SET sofia/internal/434@c1.sip.telezon.ru [RFC2822_DATE]=[Thu, 08 Jun 2017 11:55:36 +0700]
36    484e7249-5d5a-4943-a239-169fef8b2c91 EXECUTE sofia/internal/434@c1.sip.telezon.ru set(RFC2822_DATE=Thu, 08 Jun 2017 11:55:36 +0700)
37    484e7249-5d5a-4943-a239-169fef8b2c91 2017-06-08 11:55:36.332789 [DEBUG] switch_channel.c:1296 EXPORT (export_vars) [origination_callee_id_name]=[2141101]
38    484e7249-5d5a-4943-a239-169fef8b2c91 EXECUTE sofia/internal/434@c1.sip.telezon.ru export(origination_callee_id_name=2141101)
39    484e7249-5d5a-4943-a239-169fef8b2c91 2017-06-08 11:55:36.332789 [DEBUG] mod_dptools.c:1530 SET sofia/internal/434@c1.sip.telezon.ru [call_direction]=[local]
40    484e7249-5d5a-4943-a239-169fef8b2c91 EXECUTE sofia/internal/434@c1.sip.telezon.ru set(call_direction=local)
41    484e7249-5d5a-4943-a239-169fef8b2c91 2017-06-08 11:55:36.332789 [INFO] mod_dptools.c:1724 currency=
42    484e7249-5d5a-4943-a239-169fef8b2c91 EXECUTE sofia/internal/434@c1.sip.telezon.ru log(INFO currency=)
43    484e7249-5d5a-4943-a239-169fef8b2c91 2017-06-08 11:55:36.332789 [INFO] mod_dptools.c:1724 credit_time=
44    484e7249-5d5a-4943-a239-169fef8b2c91 EXECUTE sofia/internal/434@c1.sip.telezon.ru log(INFO credit_time=)
45    484e7249-5d5a-4943-a239-169fef8b2c91 2017-06-08 11:55:36.332789 [INFO] mod_dptools.c:1724 preffered_lang=
46    484e7249-5d5a-4943-a239-169fef8b2c91 EXECUTE sofia/internal/434@c1.sip.telezon.ru log(INFO preffered_lang=)
47    484e7249-5d5a-4943-a239-169fef8b2c91 2017-06-08 11:55:36.332789 [INFO] mod_dptools.c:1724 h323_ivr_duration=
48    484e7249-5d5a-4943-a239-169fef8b2c91 EXECUTE sofia/internal/434@c1.sip.telezon.ru log(INFO h323_ivr_duration=)
49    484e7249-5d5a-4943-a239-169fef8b2c91 2017-06-08 11:55:36.332789 [INFO] mod_dptools.c:1724 credit_amount=
50    484e7249-5d5a-4943-a239-169fef8b2c91 EXECUTE sofia/internal/434@c1.sip.telezon.ru log(INFO credit_amount=)
51    484e7249-5d5a-4943-a239-169fef8b2c91 2017-06-08 11:55:36.332789 [INFO] mod_dptools.c:1724 billing_model=
52    484e7249-5d5a-4943-a239-169fef8b2c91 EXECUTE sofia/internal/434@c1.sip.telezon.ru log(INFO billing_model=)
53    484e7249-5d5a-4943-a239-169fef8b2c91 2017-06-08 11:55:36.332789 [INFO] mod_dptools.c:1724 return_code=0
54    484e7249-5d5a-4943-a239-169fef8b2c91 EXECUTE sofia/internal/434@c1.sip.telezon.ru log(INFO return_code=0)
55    484e7249-5d5a-4943-a239-169fef8b2c91 2017-06-08 11:55:36.332789 [INFO] mod_dptools.c:1724 AUTH_RESULT=NOK
56    484e7249-5d5a-4943-a239-169fef8b2c91 EXECUTE sofia/internal/434@c1.sip.telezon.ru log(INFO AUTH_RESULT=NOK)
57    2017-06-08 11:55:36.332789 [ERR] mod_rad_auth.c:702 An error occured during radius authorization.
58    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:523 set variable return_code := 0
59    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:522 attribute (RADIUS_RETURN_CODE) found in radius packet
60    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:519 Handle attribute: RADIUS_RETURN_CODE
61    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:529 No found out attribute id: 1, pec:9, (H323-IVR-IN:DIRATION)
62    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:519 Handle attribute: H323-IVR-IN:DIRATION
63    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:529 No found out attribute id: 102, pec:9, (CREDIT_TIME)
64    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:519 Handle attribute: CREDIT_TIME
65    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:529 No found out attribute id: 107, pec:9, (PREFFERED_LANG)
66    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:519 Handle attribute: PREFFERED_LANG
67    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:529 No found out attribute id: 110, pec:9, (CURRENCY)
68    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:519 Handle attribute: CURRENCY
69    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:529 No found out attribute id: 101, pec:9, (CREDIT_AMOUNT)
70    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:519 Handle attribute: CREDIT_AMOUNT
71    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:529 No found out attribute id: 109, pec:9, (BILING_MODEL)
72    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:519 Handle attribute: BILING_MODEL
73    2017-06-08 11:55:36.332789 [ERR] mod_rad_auth.c:504 RADIUS Authentication failure (RC=-2)
74    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:491 sending radius packet ...
75    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:444 ... radius: key:Login-User, value:sip_from_user (sip_from_user) as string
76    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:439 ... dictionary data: id:1, vendor id:0, attr type:0, attr name:User-Name (1)
77    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:413 Handle attribute: Login-User
78    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:444 ... radius: key:NAS-Port-Id, value:ISDN 3/0:D:14 (ISDN 3/0:D:14) as string
79    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:439 ... dictionary data: id:87, vendor id:0, attr type:0, attr name:NAS-Port-Id (87)
80    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:413 Handle attribute: NAS-Port-Id
81    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:456 ... radius: key:NAS-Port-Type, value:0 (0) as integer
82    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:439 ... dictionary data: id:61, vendor id:0, attr type:1, attr name:NAS-Port-Type (61)
83    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:413 Handle attribute: NAS-Port-Type
84    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:444 ... radius: key:Calling-Station-Id, value:sip_from_user (434) as string
85    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:439 ... dictionary data: id:31, vendor id:0, attr type:0, attr name:Calling-Station-Id (31)
86    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:413 Handle attribute: Calling-Station-Id
87    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:444 ... radius: key:Cisco-AVPair, value:uuid (484e7249-5d5a-4943-a239-169fef8b2c91) as string
88    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:439 ... dictionary data: id:1, vendor id:9, attr type:0, attr name:Cisco-AVPair (589825)
89    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:413 Handle attribute: Cisco-AVPair
90    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:444 ... radius: key:h323-prompt-id, value:12345 (12345) as string
91    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:439 ... dictionary data: id:104, vendor id:9, attr type:0, attr name:h323-prompt-id (589928)
92    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:413 Handle attribute: h323-prompt-id
93    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:444 ... radius: key:h323-conf-id, value:uuid (484e7249-5d5a-4943-a239-169fef8b2c91) as string
94    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:439 ... dictionary data: id:24, vendor id:9, attr type:0, attr name:h323-conf-id (589848)
95    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:413 Handle attribute: h323-conf-id
96    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:396 ... radius: Called-station-Id: 2141101
97    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:380 ... radius: User-Password: 434
98    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:371 ... radius: User-Name: 434
99    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:318 set bindaddr := *.
100    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:318 set radius_deadtime := 0.
101    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:318 set radius_retries := 2.
102    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:318 set radius_timeout := 3.
103    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:318 set default_realm := .
104    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:318 set seqfile := /var/run/radius.seq.
105    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:318 set dictionary := /etc/radiusclient/dictionary.
106    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:318 set authserver := 10.248.0.244:1812:12341234.
107    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:313 initialzed configuration.
108    2017-06-08 11:55:36.332789 [DEBUG] mod_rad_auth.c:301 allocate initial structure.
109    484e7249-5d5a-4943-a239-169fef8b2c91 EXECUTE sofia/internal/434@c1.sip.telezon.ru auth_function(in 2141101, in 434, in 434, out AUTH_RESULT)
110    484e7249-5d5a-4943-a239-169fef8b2c91 2017-06-08 11:55:36.332789 [DEBUG] mod_dptools.c:1530 SET sofia/internal/434@c1.sip.telezon.ru [DIALED_NUMBER]=[2141101]
111    484e7249-5d5a-4943-a239-169fef8b2c91 EXECUTE sofia/internal/434@c1.sip.telezon.ru set(DIALED_NUMBER=2141101)
112    484e7249-5d5a-4943-a239-169fef8b2c91 2017-06-08 11:55:36.332789 [DEBUG] mod_dptools.c:1530 SET sofia/internal/434@c1.sip.telezon.ru [PASSWD]=[434]
113    484e7249-5d5a-4943-a239-169fef8b2c91 EXECUTE sofia/internal/434@c1.sip.telezon.ru set(PASSWD=434)
114    484e7249-5d5a-4943-a239-169fef8b2c91 2017-06-08 11:55:36.312784 [DEBUG] mod_dptools.c:1530 SET sofia/internal/434@c1.sip.telezon.ru [USERNAME]=[434]
115    484e7249-5d5a-4943-a239-169fef8b2c91 EXECUTE sofia/internal/434@c1.sip.telezon.ru set(USERNAME=434)
116    484e7249-5d5a-4943-a239-169fef8b2c91 2017-06-08 11:55:36.312784 [INFO] mod_dptools.c:1724 Before Auth
117    484e7249-5d5a-4943-a239-169fef8b2c91 EXECUTE sofia/internal/434@c1.sip.telezon.ru log(INFO Before Auth)
118    484e7249-5d5a-4943-a239-169fef8b2c91 2017-06-08 11:55:36.312784 [DEBUG] switch_core_state_machine.c:328 sofia/internal/434@c1.sip.telezon.ru Standard EXECUTE
119    484e7249-5d5a-4943-a239-169fef8b2c91 2017-06-08 11:55:36.312784 [DEBUG] mod_sofia.c:198 sofia/internal/434@c1.sip.telezon.ru SOFIA EXECUTE
120    484e7249-5d5a-4943-a239-169fef8b2c91 2017-06-08 11:55:36.312784 [DEBUG] switch_core_state_machine.c:650 (sofia/internal/434@c1.sip.telezon.ru) State EXECUTE
121    484e7249-5d5a-4943-a239-169fef8b2c91 2017-06-08 11:55:36.312784 [DEBUG] switch_core_state_machine.c:584 (sofia/internal/434@c1.sip.telezon.ru) Running State Change CS_EXECUTE (Cur 1 Tot 16223)
122    484e7249-5d5a-4943-a239-169fef8b2c91 2017-06-08 11:55:36.312784 [DEBUG] switch_core_state_machine.c:643 (sofia/internal/434@c1.sip.telezon.ru) State ROUTING going to sleep
123    484e7249-5d5a-4943-a239-169fef8b2c91 2017-06-08 11:55:36.312784 [DEBUG] switch_core_state_machine.c:286 (sofia/internal/434@c1.sip.telezon.ru) State Change CS_ROUTING -> CS_EXECUTE
124    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru ANTI-Action hangup(CALL_REJECTED)
125    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Regex (FAIL) [To_provider_2197827.7d] regex() =~ /any/ break=never
126    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Regex (PASS) [To_provider_2197827.7d] destination_number(2141101) =~ /^(\d{7})$/ break=on-false
127    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru parsing [c1.sip.telezon.ru->To_provider_2197827.7d] continue=false
128    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Regex (FAIL) [To_provider_2197827.11d] destination_number(2141101) =~ /^(\d{11})$/ break=on-false
129    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru parsing [c1.sip.telezon.ru->To_provider_2197827.11d] continue=false
130    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Regex (FAIL) [RADIUS_REJECT] ${return_code}() =~ /^0$/ break=on-false
131    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru parsing [c1.sip.telezon.ru->RADIUS_REJECT] continue=false
132    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Regex (FAIL) [speed_dial] destination_number(2141101) =~ /^\*0(.*)$/ break=on-false
133    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru parsing [c1.sip.telezon.ru->speed_dial] continue=false
134    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Action hash(insert/${domain_name}-last_dial/${caller_id_number}/${destination_number})
135    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Regex (PASS) [redial] () =~ // break=never
136    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Regex (FAIL) [redial] destination_number(2141101) =~ /^(redial|\*870)$/ break=on-true
137    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru parsing [c1.sip.telezon.ru->redial] continue=true
138    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Action export(nolocal:api_on_answer=uuid_record ${uuid} start ${recordings_dir}/${domain_name}/archive/${strftime(%Y)}/${strftime(%b)}/${strftime(%d)}/${uuid}.${record_ext})
139    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Regex (PASS) [user_record] ${record_session}(true) =~ /^true$/ break=on-false
140    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Regex (FAIL) [user_record] ${from_user_record}(all) =~ /^local$/ break=never
141    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Regex (FAIL) [user_record] ${call_direction}() =~ /^local$/ break=never
142    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Regex (PASS) [user_record] ${from_user_exists}(true) =~ /^true$/ break=never
143    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Regex (FAIL) [user_record] ${from_user_record}(all) =~ /^outbound$/ break=never
144    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Regex (FAIL) [user_record] ${call_direction}() =~ /^outbound$/ break=never
145    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Regex (PASS) [user_record] ${from_user_exists}(true) =~ /^true$/ break=never
146    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Regex (FAIL) [user_record] ${from_user_record}(all) =~ /^inbound$/ break=never
147    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Regex (FAIL) [user_record] ${call_direction}() =~ /^inbound$/ break=never
148    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Regex (PASS) [user_record] ${from_user_exists}(true) =~ /^true$/ break=never
149    484e7249-5d5a-4943-a239-169fef8b2c91 2017-06-08 11:55:36.312784 [DEBUG] mod_dptools.c:1530 SET sofia/internal/434@c1.sip.telezon.ru [record_session]=[true]
150    484e7249-5d5a-4943-a239-169fef8b2c91 EXECUTE sofia/internal/434@c1.sip.telezon.ru set(record_session=true)
151    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Action set(record_session=true) INLINE
152    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Regex (PASS) [user_record] ${from_user_record}(all) =~ /^all$/ break=never
153    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Regex (PASS) [user_record] ${from_user_exists}(true) =~ /^true$/ break=never
154    484e7249-5d5a-4943-a239-169fef8b2c91 2017-06-08 11:55:36.312784 [DEBUG] mod_dptools.c:1530 SET sofia/internal/434@c1.sip.telezon.ru [from_user_record]=[all]
155    484e7249-5d5a-4943-a239-169fef8b2c91 EXECUTE sofia/internal/434@c1.sip.telezon.ru set(from_user_record=all)
156    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Action set(from_user_record=${user_data ${sip_from_user}@${sip_from_host} var user_record}) INLINE
157    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Regex (PASS) [user_record] ${from_user_exists}(true) =~ /^true$/ break=never
158    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Regex (FAIL) [user_record] ${user_record}() =~ /^local$/ break=never
159    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Regex (FAIL) [user_record] ${call_direction}() =~ /^local$/ break=never
160    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Regex (FAIL) [user_record] ${user_exists}(false) =~ /^true$/ break=never
161    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Regex (FAIL) [user_record] ${user_record}() =~ /^outbound$/ break=never
162    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Regex (FAIL) [user_record] ${call_direction}() =~ /^outbound$/ break=never
163    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Regex (FAIL) [user_record] ${user_exists}(false) =~ /^true$/ break=never
164    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Regex (FAIL) [user_record] ${user_record}() =~ /^inbound$/ break=never
165    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Regex (FAIL) [user_record] ${call_direction}() =~ /^inbound$/ break=never
166    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Regex (FAIL) [user_record] ${user_exists}(false) =~ /^true$/ break=never
167    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Regex (FAIL) [user_record] ${user_record}() =~ /^all$/ break=never
168    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Regex (FAIL) [user_record] ${user_exists}(false) =~ /^true$/ break=never
169    484e7249-5d5a-4943-a239-169fef8b2c91 2017-06-08 11:55:36.312784 [DEBUG] mod_dptools.c:1530 SET sofia/internal/434@c1.sip.telezon.ru [from_user_exists]=[true]
170    484e7249-5d5a-4943-a239-169fef8b2c91 EXECUTE sofia/internal/434@c1.sip.telezon.ru set(from_user_exists=true)
171    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Action set(from_user_exists=${user_exists id ${sip_from_user} ${sip_from_host}}) INLINE
172    484e7249-5d5a-4943-a239-169fef8b2c91 2017-06-08 11:55:36.312784 [DEBUG] mod_dptools.c:1530 SET sofia/internal/434@c1.sip.telezon.ru [user_record]=[UNDEF]
173    484e7249-5d5a-4943-a239-169fef8b2c91 EXECUTE sofia/internal/434@c1.sip.telezon.ru set(user_record=)
174    2017-06-08 11:55:36.312784 [DEBUG] freeswitch_lua.cpp:382 DBH handle 0x7fdc2c24f260 released.
175    2017-06-08 11:55:36.312784 [DEBUG] freeswitch_lua.cpp:365 DBH handle 0x7fdc2c24f260 Connected.
176    2017-06-08 11:55:36.312784 [DEBUG] freeswitch_lua.cpp:382 DBH handle 0x7fdc2c24f260 released.
177    2017-06-08 11:55:36.312784 [DEBUG] freeswitch_lua.cpp:365 DBH handle 0x7fdc2c24f260 Connected.
178    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Action set(user_record=${user_data ${destination_number}@${domain_name} var user_record}) INLINE
179    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Regex (PASS) [user_record] () =~ // break=on-false
180    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru parsing [c1.sip.telezon.ru->user_record] continue=true
181    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru ANTI-Action lua(app.lua call_block)
182    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Regex (FAIL) [call_block] ${call_blocked}() =~ /^true$/ break=on-false
183    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru parsing [c1.sip.telezon.ru->call_block] continue=true
184    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Action set(RFC2822_DATE=${strftime(%a, %d %b %Y %T %z)})
185    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Action export(origination_callee_id_name=${destination_number})
186    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Regex (PASS) [variables] () =~ // break=on-false
187    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru parsing [c1.sip.telezon.ru->variables] continue=true
188    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru ANTI-Action set(call_direction=local)
189    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Regex (FAIL) [call-direction] ${call_direction}() =~ /^(inbound|outbound|local)$/ break=never
190    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru parsing [c1.sip.telezon.ru->call-direction] continue=true
191    484e7249-5d5a-4943-a239-169fef8b2c91 Dialplan: sofia/internal/434@c1.sip.telezon.ru Regex (FAIL) [user_exists] ${user_exists}(false) =~ /^true$/ break=on-false
192    484e7249-5d5a-4943-a239-169fef8b2c91 2017-06-08 11:55:36.312784 [DEBUG] mod_dptools.c:1530 SET sofia/internal/434@c1.sip.telezon.ru [user_exists]=[false]
193    484e7249-5d5a-4943-a239-169fef8b2c91 EXECUTE sofia/internal/434@c1.sip.telezon.ru set(user_exists=false)
194    2017-06-08 11:55:36.312784 [DEBUG] freeswitch_lua.cpp:382 DBH handle 0x7fdc2c24f260 released.


Прошу указать, где я неверно действую.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Action и Anti-action по коду Radius.
СообщениеДобавлено: 09 июн 2017 14:31 

Зарегистрирован: 22 окт 2015 20:31
Сообщения: 156
Откуда: Киев
1. Попробуйте при установке этой переменной сделать inline
2. После получения кода от radius делайте transfer на контекст, где его обрабатывать будете. Тогда переменная на канале уже будет установлена.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Action и Anti-action по коду Radius.
СообщениеДобавлено: 13 июн 2017 14:05 

Зарегистрирован: 06 июн 2017 15:45
Сообщения: 21
Спасибо за советы и указание на поиск в правильном направлении.

Inline способ не поддерживается для операции auth_function. Пришлось идти по второму варианту.
На данный момент проблему решил так:
В домене, экстеншн с авторизацией на radius сервере, имеет контекст по умолчанию (название домена). В конце этого экстеншна добавил трансфер на новый контекст:
Код:
action    transfer    $1 XML okc1.sip.telezon.ru          0    170

Все остальные экстеншны - обитают в контексте okc1.sip.telezon.ru. В таком случае переменная ${return_code} доступна для манипуляций.

Вот так выглядят сейчас исходящие направления в домене:
Код:
   Name   Number   Context   Order   Enabled   Description   
   RADIUS           c1.sip.telezon.ru    1    True         
   To_provider_2197827.11d           okc1.sip.telezon.ru    100    True         
   To_provider_2197827.7d           okc1.sip.telezon.ru    100    True         
   To_provider_2197827.MN           okc1.sip.telezon.ru    100    True         
   RADIUS_REJECT           okc1.sip.telezon.ru    110    True    


Прошу профессионалов дать оценку такой реализации.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Action и Anti-action по коду Radius.
СообщениеДобавлено: 15 июн 2017 14:39 

Зарегистрирован: 22 окт 2015 20:31
Сообщения: 156
Откуда: Киев
Работает - хорошо :) Вам нравится - еще лучше :)


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 4 ] 

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

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


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB