Hi!
append_rpid_hf() was removed from CVS in 2005 with the following note: "Rpid support dropped, it will be implemented using AVPs."
Is there a standard way of implementing this? OpenSER utilizes avp_printf() for this which isn't part of SER: http://www.mail-archive.com/devel@openser.org/msg02248.html
What is the Best Current Practice to add the Rpid header?
If there is none I'd help implementing something new since I'm already tackling some Rpid to P-Asserted-Identity transformation things. It would also be handy to add the privacy tag according to another AVP (although I'm not using it).
Cheers, Hendrik
Hi Hendrik,
thanks for pointing this out -- I think it is rather lacking documentation.
This feature has been actually in SER since quite a while ago (and I would guess much longer ago than in any SER derivates too) -- alas I guess rather roughly documented. I hope the following example (even though certainly one cannot call it documentation) explains the feature.
if ($asserted_id) { if ($remote_party_id_param) { xlset_attr("rpidheader", "sip:%$asserted_id@%@ruri.host;%$remote_party_id_param"); } else {
xlset_attr("rpidheader", "sip:%$asserted_id@%@ruri.host;screen=yes"); } replace_avp_hf("Remote-Party-ID","rpidheader"); }
Additional flexibility can be achieved by use of the select operator: http://www.iptel.org/attribute_value_pairs_and_selects
With xlset_attr (which takes same %s like xlog) and select, textual SIP processing is fairly general and we no longer need modules for every new feature.
-jiri
At 15:20 25/09/2006, Hendrik Scholz wrote:
Hi!
append_rpid_hf() was removed from CVS in 2005 with the following note: "Rpid support dropped, it will be implemented using AVPs."
Is there a standard way of implementing this? OpenSER utilizes avp_printf() for this which isn't part of SER: http://www.mail-archive.com/devel@openser.org/msg02248.html
What is the Best Current Practice to add the Rpid header?
If there is none I'd help implementing something new since I'm already tackling some Rpid to P-Asserted-Identity transformation things. It would also be handy to add the privacy tag according to another AVP (although I'm not using it).
Cheers, Hendrik
-- freenet Cityline GmbH, Hamburger Chaussee 2-4, 24114 Kiel, Germany Phone: +49 (0)431 9020552, Fax: +49 (0)431 9020559 Internet: http://www.freenet.de, eMail: hendrik.scholz@freenet-ag.de _______________________________________________ Serusers mailing list Serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers
-- Jiri Kuthan http://iptel.org/~jiri/
Hi!
No offence - but the function names and parameters changed again ;) Just to document how it could be implemented as of Ottendorf:
if (avp_check("s:privacy", "eq/1/g")) { xlset_attr("$paidheader", "sip:%$callerid@domain.tld"); xlset_attr("$privacyheader", "id"); } else { xlset_attr("$paidheader", "sip:%$callerid@domain.tld"); xlset_attr("$privacyheader", "none"); } replace_attr_hf("P-Asserted-Identity", "$paidheader"); replace_attr_hf("Privacy", "$privacyheader");
This is based on RFC3323/3325 rather than Remote-Party-ID but you should get the idea.
- replace_avp_hf() got renamed to replace_attr_hf() - xlset_attr() needs a $ for the first argument/attr
Cheers, Hendrik