diff --git a/kamailio/auth.cfg b/kamailio/auth.cfg index 2c37518..6c45c2e 100644 --- a/kamailio/auth.cfg +++ b/kamailio/auth.cfg @@ -67,7 +67,11 @@ route[SETUP_AUTH_HEADERS] if (registered("location","$fu", 2, 1) == 1) { $avp(is_registered) = "true"; $avp(auth_allowed) = "true"; + #!ifdef WITH_AUTH_TOKEN route(AUTH_TOKEN); + #!else + route(AUTH_CCVS) + #!endif return; } #!endif @@ -98,4 +102,41 @@ route[AUTH_TOKEN] } } +route[AUTH_CCVS] +{ + if($(xavp(ulattrs=>custom_channel_vars){kz.json,Account-ID}{s.len}) > 0) + $xavp(hf[0]=>X-ecallmgr_Account-ID) = $(xavp(ulattrs=>custom_channel_vars){kz.json,Account-ID}); + + if($(xavp(ulattrs=>custom_channel_vars){kz.json,Authorizing-Type}{s.len}) > 0) + $xavp(hf[0]=>X-ecallmgr_Authorizing-Type) = $(xavp(ulattrs=>custom_channel_vars){kz.json,Authorizing-Type}); + + if($(xavp(ulattrs=>custom_channel_vars){kz.json,Account-ID}{s.len}) > 0 && $(xavp(ulattrs=>custom_channel_vars){kz.json,Authorizing-Type}{s.len}) > 0) + $xavp(hf[0]=>X-AUTH-Token) = $_s($(xavp(ulattrs=>custom_channel_vars){kz.json,Authorizing-ID})@$(xavp(ulattrs=>custom_channel_vars){kz.json,Account-ID})); + + if($(xavp(ulattrs=>custom_channel_vars){kz.json,Authorizing-ID}{s.len}) > 0) + $xavp(hf[0]=>X-ecallmgr_Authorizing-ID) = $(xavp(ulattrs=>custom_channel_vars){kz.json,Authorizing-ID}); + + if($(xavp(ulattrs=>custom_channel_vars){kz.json,Username}{s.len}) > 0) + $xavp(hf[0]=>X-ecallmgr_Username) = $(xavp(ulattrs=>custom_channel_vars){kz.json,Username}); + + if($(xavp(ulattrs=>custom_channel_vars){kz.json,Realm}{s.len}) > 0) + $xavp(hf[0]=>X-ecallmgr_Realm) = $(xavp(ulattrs=>custom_channel_vars){kz.json,Realm}); + + if($(xavp(ulattrs=>custom_channel_vars){kz.json,Account-Realm}{s.len}) > 0) + $xavp(hf[0]=>X-ecallmgr_Account-Realm) = $(xavp(ulattrs=>custom_channel_vars){kz.json,Account-Realm}); + + if($(xavp(ulattrs=>custom_channel_vars){kz.json,Account-Name}{s.len}) > 0) + $xavp(hf[0]=>X-ecallmgr_Account-Name) = $(xavp(ulattrs=>custom_channel_vars){kz.json,Account-Name}{s.escape.param}); + + if($(xavp(ulattrs=>custom_channel_vars){kz.json,Presence-ID}{s.len}) > 0) + $xavp(hf[0]=>X-ecallmgr_Presence-ID) = $(xavp(ulattrs=>custom_channel_vars){kz.json,Presence-ID}); + + if($(xavp(ulattrs=>custom_channel_vars){kz.json,Owner-ID}{s.len}) > 0) + $xavp(hf[0]=>X-ecallmgr_Owner-ID) = $(xavp(ulattrs=>custom_channel_vars){kz.json,Owner-ID}); + + if($(xavp(ulattrs=>custom_channel_vars){kz.json,Hotdesk-Current-ID}{s.len}) > 0) + $xavp(hf[0]=>X-ecallmgr_Hotdesk-Current-ID) = $(xavp(ulattrs=>custom_channel_vars){kz.json,Hotdesk-Current-ID}); + +} + #!endif