[asterisk-dev] Realtime and call states in SIP

Curt Moore jcmoore at nuvio.com
Wed May 30 08:22:33 MST 2007


On Wed, 2007-05-30 at 09:20 +0200, Olle E Johansson wrote:
> This badly needs a redesign.  I've been asking before, but got almost  
> no answers. I don't want to support this hybrid function any more,  
> patching to a point where the code gets too confusing for anyone to  
> understand.

Agreed.

> 
> Seems like what people want is "load device from database into static  
> memory when it registers. Release when it expires. Reload from  
> database at re-registration."
> I would call this "SIP dynamic static peers" to confuse even more.  
> For Kevin: SIP-DSP :-)

Well, that's all well and good if you actually use Asterisk as the SIP
registrar. :-)

I believe that any redesign discussion should include Russell's
proposed/new event subsystem.  It would seem logical to have the core of
Asterisk handle event and status stuff and then use callbacks in each of
the technology drivers to either update the core with incoming events or
to send notifications back out to the endpoints.

If we solve this specifically for SIP now, what happens later when we
decide that IAX or SCCP or <insert new cool tech here> needs to do a
very similar thing?

I must confess that I'm somewhat ignorant as to the way technologies
other than SIP handle state notification but let's say that I had an
Asterisk server with both SIP and SCCP phones.  Would/should it be
possible to monitor the status of an extension using a different
technology through Asterisk?

Additionally, if this is done in the core it should be somewhat easier
to figure out a way to share all of this information between multiple
Asterisk servers.  We will need to be particularly careful here because
as the number of Asterisk servers increases, the amount of notification
traffic being sent would increase at an exponential rate if each server
were to update each of the other servers.  With this sort of
methodology, a situation could arise where a very large percentage of
traffic would be device state notification.  I believe at DevCon we
tossed around the idea of a centralized Asterisk server to be the master
"state server" to help with this.  The downside to this is that it adds
a SPOF into the network.

So, having said all of that, what are your thoughts?  If we're going to
spend the time and effort of redesigning the notification subsystem it
would be nice to look forward a little and allow for future expansion.

Cheers,
-Curt
-- 
Curt Moore
VP of Engineering
Nuvio Corporation


More information about the asterisk-dev mailing list