[Asterisk-Dev] realtime extensions db friendliness

Brian West brian.west at mac.com
Thu Apr 7 21:05:14 MST 2005


Its not just realtime .. every single switch from iax to dundi does 
this.

/b

On Apr 7, 2005, at 9:35 PM, Terry Wilson wrote:

> On Apr 7, 2005 8:15 PM, Brian West <brian.west at mac.com> wrote:
>> Actually its not realtime problem.  The switch API does this ... thats
>> all that needs to be fixed.  I have bitched about this... we have
>> brought this up to mark before and nobody has even come up with a fix.
>
>
> Maybe something like:
>
> extensions.conf
> [general]
> ;if you primarily use Realtime switches as opposed to IAX based 
> switches
> ;you might want to set this to no.  Default is yes.
> switchparanoia = no
>
> Details left for homework.  :-)
>
> Seriously though, there are worse problems than this with using the
> switch infrastructure for RealTime extensions.  If you are dynamically
> adding/creating users who require their own context (overlapping
> extensions with other people on the box or something else) with a web
> front-end and want to get away from having to do reloads , you still
> can't use Realtime as it sits because you have to have the context
> exist before you can put a switch statement in it.  So you have to
> either 1)modify the extensions.conf file to include the context and
> switch => Realtime statement and reload 2)use the static db config
> engine to add the context and switch => Realtime statement and reload
> or 3) forget using realtime at all and use res_perl.
>
> Aside from the fact that this keeps me from using Realtime in real
> time, is the database query issue.  If it would be accepted to do
> realtime "Some Other(Better) Way(tm)" and get it into CVS, then maybe
> someone could work on it.  If it would never be accepted, then of
> course no one should waste their time.
>
> It seems to me that from the db side, you should pull ALL priorities
> for an extension with a single query.  Generally if step 3 changes in
> the middle of your call, it is going to screw something up.  Better to
> have a more atomic solution so that each call has a better chance of
> having a coherent list of steps.  If you don't find the specific
> extension, query again for the patterns (although you could probably
> do one query including the patterns with a handy ORDER BY clause that
> allowed you hit the ones first that weren't pattern matched).  Query
> again for hangup/timeout/invalid (or pull them with the first query
> again) and your are done.  It seems that the fewer queries the better
> the overall performance.
>
> Supporting caller-id fields would be handy/not particularly difficult
> as would handling includes (though they are less of a concern if you
> are using automated scripts to store your dialplan info).
>
> Anyway, just my $0.02.
>
> Terry
> _______________________________________________
> Asterisk-Dev mailing list
> Asterisk-Dev at lists.digium.com
> http://lists.digium.com/mailman/listinfo/asterisk-dev
> To UNSUBSCRIBE or update options visit:
>    http://lists.digium.com/mailman/listinfo/asterisk-dev




More information about the asterisk-dev mailing list