RADIUS authorization

Hi there.
I want to try YETI with an external RADIUS server for authorization of calls (based on caller ID number). No need for authentication or accounting.
At this stage I faced the following issue: in RADIUS Auth profile in Attributes section as Value I put $src_number_radius$ and expect to send to RADIUS server caller’s number (format is string). But on radius server side log I see “$src_number_radius$” instead its value (caller’s number). If I put there the exact number authorization is working.
At the same time, the Routing Simulation Log shows the right value for src_number_radius. Issue connected by sending it to RADIUS server.
Please advise what I did wrong.
Thanks in advance.

Have you tried other placeholders ?

Of course Dmitry. None of them is not working.
On RADIUS server I see the following log: User-Name = “$src_number_radius$”

looks like bug then. Provide sems logs with loglevel=3 from start to sending RADIUS packet.

In general better to check CLI using built in functionality - Numberlists, it is possible to populate data using REST API Routing NumberlistItems API

I think you need this…

[2601207/2601213] [yeti:radius_hooks.h:33] DEBUG: post auth event to the radius module with profile id: 2
[2601207/2601213] [AmSession.cpp:458] DEBUG: ^^ S [3bbe2642076e856b2fb4fee529acf71d@10.2.3.151:5060|1-51EFDDA1-64662D2500092149-55E1B700] Trying, running, 0 UACTransPending, 0 usages ^^
[2601207/2601213] [AmSessionProcessor.cpp:139] DEBUG: running processing loop
[2601207/2601252] [radius_client:RadiusClient.cpp:236] DEBUG: process radius auth request from session 1-51EFDDA1-64662D2500092149-55E1B700
[2601207/2601252] [radius_client:RadiusConnection.cpp:218] WARNING: uknown variable name ‘src_number_radius’ in placeholder. leave it as is
[2601207/2601252] [radius_client:RadiusConnection.cpp:251] DEBUG: add avp: 1:request:string with value $src_number_radius$
[2601207/2601252] [radius_client:RadiusPacket.cpp:198] DEBUG: send radius packet with code 1 for session 1-51EFDDA1-64662D2500092149-55E1B700
[2601207/2601252] [radius_client:RadiusPacket.cpp:198] DEBUG: send radius packet with code 1 for session 1-51EFDDA1-64662D2500092149-55E1B700
[2601207/2601213] [AmSessionProcessor.cpp:178] DEBUG: processing events for up to 1 sessions
[2601207/2601213] [AmSession.cpp:440] DEBUG: vv S [3bbe2642076e856b2fb4fee529acf71d@10.2.3.151:5060|1-51EFDDA1-64662D2500092149-55E1B700] Trying, running, 0 UACTransPending, 0 usages vv
[2601207/2601213] [yeti:SBCCallLeg.cpp:2279] DEBUG: process(0x7f8538008c40|1-51EFDDA1-64662D2500092149-55E1B700,legA)
[2601207/2601213] [yeti:SBCCallLeg.cpp:750] DEBUG: got radius reply for 1-51EFDDA1-64662D2500092149-55E1B700
[2601207/2601213] [yeti:SBCCallLeg.cpp:766] ERROR: [1-51EFDDA1-64662D2500092149-55E1B700] radius error 2001. reject
[2601207/2601213] [yeti:CodesTranslator.cpp:350] DEBUG: translate_db_code: 2001, override_id: 0
[2601207/2601213] [yeti:CodesTranslator.cpp:336] DEBUG: translation result: internal = <503:‘Radius response timeout’>, response = <503:‘Radius response timeout’>, silently_drop = 0, store_cdr = 1
[2601207/2601213] [yeti:SBCCallLeg.cpp:3210] DEBUG: onStop(0x7f8538008c40,legA)
[2601207/2601213] [yeti:SBCCallLeg.cpp:3007] DEBUG: onInviteException(0x7f8538008c40,legA) 503:‘Radius response timeout’ no_reply = 0
[2601207/2601213] [AmOfferAnswer.cpp:434] DEBUG: after 503 reply to INVITE: resetting OA state
[2601207/2601213] [AmOfferAnswer.cpp:70] DEBUG: setting SIP dialog O/A status: OfferRecved->None
[2601207/2601213] [AmBasicSipDialog.cpp:125] DEBUG: setting SIP dialog status: Trying->Disconnected
[2601207/2601213] [sip/trans_layer.cpp:456] DEBUG: reply_len = 353
[2601207/2601213] [sip/trans_layer.cpp:628] DEBUG: Sending to 10.2.3.151:5060 <SIP/2.0 503 Radius response timeout
Via: SIP/2.0/…>
[2601207/2601213] [sip/udp_trsp.cpp:284] DEBUG: send msg via UDP from 10.0.6.251:5060 to 10.2.3.151:5060

this is not enough. I need also initial radius profiles loading when sems started, so better to provide log from start.

yeti_src_number_radius.yml (128.7 KB)
@dmitry.s hope here you can find necessary information. attaching log from beginning from “sems -E -D3” till call drop (because not radius authorized call)

session-1_11_src_number_radius.yml (157.4 KB)
@dmitry.s I tried the same scenario with the YETI 1.11 version and it seems there that the bug is not present Attached log from 1.11 version.
With version 1.12 we have the following:
[2608067/2608112] [radius_client:RadiusConnection.cpp:218] WARNING: uknown variable name ‘src_number_radius’ in placeholder. leave it as is
[2608067/2608112] [radius_client:RadiusConnection.cpp:251] DEBUG: add avp: 1:request:string with value $src_number_radius$
Same with 1.11 seems OK:
[1249/1295] [apps/radius_client/RadiusConnection.cpp:252] DEBUG: add avp: 1:access:string with value 123

try upgrade sems-modules-yeti to 1.12.46core102

It’s working! Thank you very much for the quick solution.