On 12/2/10 4:57 PM, Pan B. Christensen wrote:
Hello,
 
We are running Kamailio 1.5.
 
I'm trying to use the forward() function with a variable like this:
    forward($shv(voip1-edge1));
 
That fails to parse.
I then tried this, which I thought would fail:
    forward("$shv(voip1-edge1)");
 
That parsed correctly, but it then failed to resolve the domain '$shv(voip1-edge1)' as expected. Why can this function not use variables?
 
I tried to make a workaround by doing this:
    $du=$ru;
    $dd=$shv(voip1-edge1);
    forward();
That also failed. Why is $du writable but $dd is not?
 
I then made a fourth attempt, which seems to work:
    $du="sip:" + $shv(voip1-edge1);
    forward();
indeed, the last version is the one that works.

forward() does not take dynamic parameters, only static string values. $dd is not writable because is just part of $du which you can set like you did. $du refers to outbound proxy address (destination uri) and there matters only host, port and transport, all the other attributes in $du have no relevance.

Cheers,
Daniel
-- 
Daniel-Constantin Mierla
Kamailio (OpenSER) Advanced Training
Jan 24-26, 2011, Irvine, CA, USA
http://www.asipto.com