[Asterisk-Users] functional difference: canreinvite=yes, no, or update

Freddi Hansen fh at danovation.dk
Fri Feb 18 15:24:43 MST 2005


<snip>

> I don't think it would be logical (or efficient) have this run in a 
> dialplan macro at all; that would require creating a channel, copying 
> variables into it, etc.
>
> I have been thinking about extending the Asterisk expression evaluator 
> to allow it to call out to res modules to do the evaluation (passing 
> in the channel variables as entities or something)... this would allow 
> you to use res_perl or a future res_python or something to do more 
> complex data manipulation.
>
> However, even that is only a small part of the solution, since 
> chan_sip treats all this information as static right now, and 
> extending it to support a dynamic result would take some work.

Kevin,
You're right about the dialplan macro, being able to use res_perl would 
be a much better solution. I think that one the most important thing 
here is to realize that we can't build (hardcode) a safe logic into 
asterisk that automagically handles all nat/re-invite issues, so there 
should be some way that users under some script control dynamically can 
decide if its safe to re-invite. If you look at this list over the that 
year then there has been an almost countless number of attempts to 
describe a safe scenario to use re-invite (like: if both users behind 
same public ip then allow reinvite), and then someone else is pointing 
out that it won't work in this or that scenario. So I think that it show 
that this logic should be controllable by users who might have 
additional knowledge about their network and therefore being able to 
decisions that might not work in other scenarios. We could have some 
'default rules' which experienced user can modify (without going to the 
c-code).
Freddi



-- 
No virus found in this outgoing message.
Checked by AVG Anti-Virus.
Version: 7.0.300 / Virus Database: 265.8.8 - Release Date: 14-02-2005




More information about the asterisk-users mailing list