Hi Martin,

Martin Kjeldsen wrote:

Hi Bogdan

Thanks for the reply, and I'm sorry for first writing back now, but I've just come home from my easter holiday ;-).

I've been looking over what you've written, and there's some parts I'm not sure how to comprehend!

You tell me not to use the from uri as a string uuid, but as a key?

see http://www.voice-system.ro/docs/avpops/ar01s04.html


How would I do this?

an AVP may be identify via an UUID (string) or via a SIP URI (username and/or domain)



I'm using the OpenSER 1.0.0, and are using this format now:

avp_db_load("$from","s:pai/$scheme0");

$from stands for FROM SIP URI - it loads the avps based on the username and/or domain.


to load the username from the alias table into memory, via the scheme below:

modparam("avpops", "db_scheme", "scheme0:uuid_col=contact;value_col=username;
 value_type=string;table=aliases")

But still I'm not able to pull out the username from the aliases table.


Am I misunderstanding what you say?


Cause as I see it my usage of the avp_db_load, is exactly the same as yours!

And when you talk about populating the username and domain fields instead of the uuid in DB!

What do you mean by that?

As I understand, all I need is to use the from part to index the aliases table, in order to get the alias (username), which is connected to the from address (contact). And then push it to the P-Asserted-Header field! So I cant see where the need to populate any username and domain fields in the DB!


I see what you are trying to do - in this case, indeed you have to identify the records by using the contact field as UUID. The scheme definition look ok to me.

     avp_write("$from", "$fromuri");
     avp_db_load("$fromuri","s:pai/$scheme0");

this should be also ok - can you enable mysql text logging and see what;s the pushed query?

regards,
bogdan


Can you help me to understand this :-).


Thank you in advance.


Kind regards
Martin



Hi Martin,

do not use the from uri as a string uuid to perform loading, but use it
as key (username, domain):
    avp_db_load("$from","s:pai/$scheme0");   in 1.0.x
or
    avp_db_load("$fu","s:pai/$scheme0");   in 1.1.x

in DB you will have to populate the username and domain fields instead
of uuid.

regards,
bogdan

Martin Kjeldsen wrote:

> > Hi all
> >
> > I am in the need for a little assistance on how to best use some data
> > taken from a invite request, and then create an appropriate AVP.
> >
> > My idea was to take the from header field,
> >
> >         avp_write("$from", "$fromuri");
> >
> > Then use it to extract the alias which belongs to this user, and
> > create the AVP,
> >
> >         avp_db_load("$fromuri","s:pai/$scheme0");
> >
> > And then incorperate it into another AVP, in order to add a callerid,
> > via P-Asserted-Identity,
> >
> >        avp_printf("i:10","<sip:$avp(s:pai)@sip.domain.com>");
> >        remove_hf("P-Asserted-Identity"); #remove org. hdr
> > avp_pushto("$P-Asserted-Identity/request","i:10"); # set new hdr
> >
> > My question is, how do I best remove the port (eg. :5060) indication
> > at the end of the from header field?
> > Because the clients on a private IP range and my alias table does not
> > carry the port numbers (eg. [EMAIL PROTECTED] ).
> >
> > So I need to manipulate the $fromuri, by removing the port indication,
> > before i do the avp_db_load!
> >
> > I was thinking of using the avp_subst function, but cant quite seem to
> > get it to work.
> >
> >
> > Can anyone help me with a smart way to solve this problem?
> >
> >
> > All help greatly appreciated.
> >
> >
> > Kind regards
> > Martin Kjeldsen



_______________________________________________
Users mailing list
[email protected]
http://openser.org/cgi-bin/mailman/listinfo/users

Reply via email to