Hello Daniel! Thank you for the responce. It has "sip:" in the front. Here is how it gets created: $var(user_uri) = "sip:" + $var(user) + "@127.0.0.1" and here is debug log:
*DEBUG: <script>: == TRACE. websocket:closed* *DEBUG: <script>: == TRACE. websocket:closed. WebSocket connection from 127.0.0.1:48640 <http://127.0.0.1:48640> has closed. User: 100-test* *DEBUG: <script>: == TRACE. websocket:closed. user_uri: sip:[email protected] <sip%[email protected]>* *DEBUG: registrar [lookup.c:256]: lookup_helper(): contact for [100-test] found by address **<== lookup("location", "$var(user_uri)");* *DEBUG: <core> [core/parser/parse_addr_spec.c:864]: parse_addr_spec(): end of header reached, state=10* *DEBUG: <core> [core/parser/msg_parser.c:171]: get_hdr_field(): <To> [20]; uri=[[email protected] <[email protected]>]* *DEBUG: <core> [core/parser/msg_parser.c:172]: get_hdr_field(): to body [<[email protected] <[email protected]>>* *DEBUG: <core> [core/parser/parse_uri.c:1282]: parse_uri(): bad uri, state 0 parsed: <you@> (4) / <[email protected] <[email protected]>> (16)* *ERROR: <core> [core/parser/parse_to.c:81]: parse_to_uri(): failed to parse To uri* *ERROR: registrar [save.c:1040]: unregister(): failed to extract Address Of Record* чт, 18 жовт. 2018 о 18:29 Daniel-Constantin Mierla <[email protected]> пише: > Hello, > > On 18.10.18 15:23, Володимир Іванець wrote: > > Hello all! > > I have *event_route[websocket:closed]* configured. By using *$si*, *$sp* > variables and data from special hash table I can figure out information > about account that was disconnected. I'm trying to use *unregister* > function against but with no luck. > > 1. I'm creating variable which contains (as an example): " > sip:[email protected]" string, where "100-test" is username. > 2. lookup("location", "$var(user_uri)") - runs fine. I'm getting a match > and lots of useful variables including *$ruid* are being set: > */usr/sbin/kamailio[27169]: DEBUG: registrar [lookup.c:256]: > lookup_helper(): contact for [100-test] found by address* > > 3. But unfortenately *unregister* with same variable does not > work. unregister("location", "$var(user_uri)"): > *DEBUG: <core> [core/parser/parse_uri.c:1282]: parse_uri(): bad uri, > state 0 parsed: <you@> (4) / <[email protected] <[email protected]>> (16)* > > > the variable seems to have only username@domain, not sip:username@domain > (which is a valid sip uri). Try with: > > unregister("location", "sip:$var(user_uri)") > > Cheers, > Daniel > > *ERROR: <core> [core/parser/parse_to.c:81]: parse_to_uri(): failed to > parse To uri* > *ERROR: registrar [save.c:1040]: unregister(): failed to extract Address > Of Record* > > > > I was trying to manipulate *$var(user_uri)* variable's content but could > not make it work. > > It's interesting that variant with *$ruid* - *unregister("location", "", > "$ruid")* will work but unfortenately it works only with *modparam("usrloc", > "db_mode", 1)*: > *ERROR: usrloc [urecord.c:655]: delete_urecord_by_ruid(): > delete_urecord_by_ruid currently available only in db_mode=3* > > I was wonderring if someone could tell me if I'm just using *unregister* > function > with uri parameter in wrong format or there might be some other problem. > > Thanks a lot! > > > _______________________________________________ > Kamailio (SER) - Users Mailing > [email protected]https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users > > > -- > Daniel-Constantin Mierla -- www.asipto.comwww.twitter.com/miconda -- > www.linkedin.com/in/miconda > Kamailio World Conference -- www.kamailioworld.com > Kamailio Advanced Training, Nov 12-14, 2018, in Berlin -- www.asipto.com > >
_______________________________________________ Kamailio (SER) - Users Mailing List [email protected] https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
