Hello, On 14/10/15 15:32, Asgaroth wrote: > Hi Daniel, > > Thanks for the info, I'm not familiar with $mf. > > Is "$mf = $mf | (1 << $sht(core_setid=>$var(ds_setid)) );" > functionally equivilent to "setflag( $sht(core_setid=>$var(ds_setid)));"?
yes -- $mf is the value representing (all) the flags, so the line above is more or less what happens in the c code of setflag(). Be sure that the sht value is an integer between 0 and 31. > > Can I still use the isflagset function to check if certain flags are > set when using your alternative approach? yes. Cheers, Daniel > > > > On 14/10/2015 14:20, Daniel-Constantin Mierla wrote: >> Hello, >> >> the function might not accept pseudo-variables, perhaps we should >> update it. For now you can use script bitwise operations with $mf: >> >> $mf = $mf | (1 << $sht(core_setid=>$var(ds_setid)) ); >> >> Cheers, >> Daniel >> >> On 14/10/15 14:35, Asgaroth wrote: >>> I originally sent this to sr-dev in error, I am resending to >>> sr-users instead, thanks >>> >>> Hi All, >>> >>> Quick question, is it possible to use variables in the setflag >>> function, I am trying to set a flag that is stored in a hash table >>> using the setflag function, but I keep getting syntax errors. I am >>> using kamailio 4.3.3. >>> >>> Here's what I am trying to do: >>> >>> htable core_setid defines a dispatcher setid key and its value is >>> associated with a flag as follows: >>> >>> id:key:key_type:value_type:value:expires >>> 1:102:0:1:7:0 >>> >>> so, simple hash table type with an integer key of value 7 and no expiry >>> >>> In dispatcher I have the following modparams set, so that >>> ds_is_from_list() will set them if found: >>> >>> modparam("dispatcher", "setid_pvname", "$var(ds_setid)") >>> modparam("dispatcher", "attrs_pvname", "$var(ds_setid_attrs)") >>> >>> Then in my routing logic I have the following code block: >>> >>> if ( ds_is_from_list() ) { >>> if ( $sht(core_setid=>$var(ds_setid)) != $null ) { >>> setflag( $sht(core_setid=>$var(ds_setid)) ); >>> return; >>> } else { >>> send_reply("403", "No flag set for source"); >>> exit; >>> } >>> } >>> >>> When I test this using kamailio -c -f <filename> I get the following >>> error: >>> >>> 0(20629) : <core> [cfg.y:3432]: yyerror_at(): parse error in config >>> file /shared/kamailio/etc/routing_logic.cfg, line 175, column 21-52: >>> syntax error >>> 0(20629) : <core> [cfg.y:3432]: yyerror_at(): parse error in config >>> file /shared/kamailio/etc/routing_logic.cfg, line 175, column 21-52: >>> missing '(' or ')'? >>> 0(20629) : <core> [cfg.y:3432]: yyerror_at(): parse error in config >>> file /shared/kamailio/etc/routing_logic.cfg, line 175, column 21-52: >>> bad command: missing ';'? >>> 0(20629) : <core> [cfg.y:3435]: yyerror_at(): parse error in config >>> file /shared/kamailio/etc/routing_logic.cfg, line 175, column 53: >>> bad command >>> ERROR: bad config file (4 errors) >>> >>> If I change the setflag line to setflag(7), then I dont get the error. >>> >>> I was wondering if its possible to have hashtable variables as >>> parameters to the setflag function, or am I going about this in the >>> wron way. >>> >>> Any thoughts would be appreciated. >>> >>> Thanks >>> >>> >>> _______________________________________________ >>> SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list >>> sr-users@lists.sip-router.org >>> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users >> >> -- >> Daniel-Constantin Mierla >> http://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda >> Book: SIP Routing With Kamailio - http://www.asipto.com >> >> >> _______________________________________________ >> SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list >> sr-users@lists.sip-router.org >> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users > > > > _______________________________________________ > SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list > sr-users@lists.sip-router.org > http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users -- Daniel-Constantin Mierla http://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda Book: SIP Routing With Kamailio - http://www.asipto.com
_______________________________________________ SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list sr-users@lists.sip-router.org http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users