[OpenSER-Users-ES] Enrutamiento por el campo From
Iñaki Baz Castillo
ibc at aliax.net
Mon Aug 20 23:16:56 CEST 2007
El 20/08/07, Ramona Modroiu <ramona at openser.org> escribió:
> Un ejemplo de codigo seria lo siguiente:
>
> if(avp_check("$fU", "eq/xxx9/i")) {
> ...
> } else if(avp_check("$fU", "re/^xxx[0-8]$/i")) {
> ...
> }
>
> En openser 1.2.x:
>
> if($fU == "xxx9")) {
> ...
> } else if($fU =~ "^xxx[0-8]$") {
> ...
> }
Vaya, no había caído yo en la cuenta de que también se pueden aplicar
expresiones regulares sin AVP's.
Por cierto, de cara a la eficiencia ¿existe alguna diferencia entre
usar AVPs de texto y variables? Quiero decir, ¿qué es más costoso
computacionalmente?:
a)
$avp(s:texto) = "XXXXXXXX";
if ( avp_check("$avp(s:texto)", "re/^xxx[0-8]$/i") ) { ...
b)
$var(texto) = "XXXXXXXX";
if ( $var(texto) =~" ^XXX") { ...
¿O tal vez sean igual de eficientes?
En caso de que sean igualmente costosas: ¿qué sentido tienen entonces
los AVP's de texto existiendo variables (las cuáles son más
"digestibles")?
Y ya puestos: sé que los AVP numéricos en plan $avp(i:12) son más
eficientes que los AVP de texto en plan $var(s:cadena), ya que cuesta
menos referirse a un entero que a una cadena de texto. Pero, ¿no
tendría sentido que en tiempo de compilación se convirtiesen los AVP
de texto a AVP numéricos sin más? ya sé que existen los alias, pero
sigue siendo una solución un poco "fea".
En fin, cosillas que tenía previstas preguntar algún día y
aprovechando la conversación lo saco ahora... XD
Saludos.
--
Iñaki Baz Castillo
<ibc at aliax.net>
More information about the Users-es
mailing list