[Asterisk-Dev] Dynamic IAX connections

Steve Rodgers hwstar at rodgers.sdcoxmail.com
Mon Dec 15 21:26:14 MST 2003


So, would one way to implement this as a standalone AGI be to store the 
destinations as entries in the database along with the permitted dial 
locations and pass the switch URL out of an AGI as a variable to a switch 
statement in extensions.conf??

I could then write another program as a server operating on another unrelated 
port which would add and remove destinations from the database on-the-fly as 
they become available/unavialable correct??

Finally, I would write a client to be used by the termination points which 
wish to provide or stop providing service and they would talk to the server 
program to add or remove thier entries from the database.

Obviously, there are still a few loose ends such as knowing when a particular
termination point is at capacity, and cannot take any more calls so that a 
different termination point can be tried, as well as ways to synchronize 
databases across backup servers.








On Monday 15 December 2003 18:19, Steven Critchfield wrote:
> On Mon, 2003-12-15 at 13:17, Steve Rodgers wrote:
> > Strangers, no. Private club, maybe....
> >
> >
> > I have a further question about the second part of your answer
> > below. What exactly does the switch statement do in extensions.conf?
> > Route the call through the pbx, or refer the the caller to another PBX?
> > If it refers, this would be a good start. The only things left as
> > unresolved issues would be way to have redundancy capabilities on this
> > "switch only" asterisk box, and a way to dynamically add/and remove to
> > the dialplan termination points as they become avalable/unavailable.
>
> switch basically consults the other side as to the ability to complete a
> call in the context used with the switch. In the context you distribute
> the switch statement, you place all the possible matches, and or the agi
> app that attempts to do the matching.
>
> The normal use of switch is to route the call via the machine you have
> asked to switch your call. The trick here is that IAX is really good
> with being able to hand off the call and get out of the way of the audio
> traffic. So once the switch made the dial, it should be able to get out
> of the way as you wish.
>
> If you wish to keep this data in a database and query it from an agi
> script, you can match everything, and then decide where to dial the call
> off to. Plus you can use whatever your favorite db replication tool you
> want to.
>
> > On Monday 15 December 2003 00:05, Steven Critchfield wrote:
> > > There is such a thing as a guest IAX account. With a guest account you
> > > can place incoming guest accounts into a specific context that can
> > > appropriately limit the callers abilities(lock down toll calls, and
> > > limit number of lines used). Since your willing to accept calls from
> > > strangers and route them to the PSTN, then there is no need to lock out
> > > users. This eliminates one part of your problem below.
> > >
> > > As for the other part, it doesn't require any difficult work. Basically
> > > it will require a minimum of coordination to keep the list of gateways
> > > up to date. Then it only requires a dialplan on the central machine
> > > that can be used as a switch for other asterisk machines.  Basically
> > > either there will be a match and be able to dial out, or it won't and
> > > the local asterisk machine needs to finish the dial via a local line.
> > >
> > > Of course I think this is what is intended to be done with IAXTEL at
> > > some point.
> > >
> > > On Sun, 2003-12-14 at 22:41, Steve Rodgers wrote:
> > > > What are the snags and obstacles to add dynamic IAX origination to
> > > > Asterisk. I posted the following in the VOIP forum over at dslreports
> > > > under FWD/IAX nexthop because it is such an interesting idea:
> > > >
> > > > ---
> > > >
> > > > I've been doing some thinking about this, and I think it would be
> > > > possible to refine this to the next level by setting up something
> > > > like the following:
> > > >
> > > > A "virtual tandem" server whose job is to know which asterisk boxes
> > > > are on line and can accept calls for certain rate centers. The
> > > > virtual tandem server would listen to registration requests from the
> > > > asterisk servers which are available to complete calls in certain
> > > > areas of the world and would receive requests from callers and point
> > > > them to those servers which were able to complete the call. These
> > > > would be known as public termination points.
> > > >
> > > > There would be 2 pieces of software to write, the virtual tandem
> > > > server, and an add on to asterisk to allow it to set up dynamic IAX
> > > > trunks to the public termination points from information received
> > > > from the virtual tandem server. The asterisk side would also need
> > > > some code added to facilitate the registration of public termination
> > > > points, and usage restrictions.
> > > >
> > > > There are other issues to work out such as failure of the virtual
> > > > tandem servers. Some kind of system like slave name servers would
> > > > have to be employed to make the system reliable.
> > > >
> > > > This setup would be cool as it would revive the spirit of
> > > > old time "phone phreaking" but in a legal manner.
> > > >
> > > > ---
> > > >
> > > > Steve
> > > >
> > > >
> > > > _______________________________________________
> > > > Asterisk-Dev mailing list
> > > > Asterisk-Dev at lists.digium.com
> > > > http://lists.digium.com/mailman/listinfo/asterisk-dev
> >
> > _______________________________________________
> > Asterisk-Dev mailing list
> > Asterisk-Dev at lists.digium.com
> > http://lists.digium.com/mailman/listinfo/asterisk-dev




More information about the asterisk-dev mailing list