Re: [asterisk-users] Forking AGI or GoSub

2019-04-23 Thread John Runyon
Glancing at the code, Asterisk appears to wait for the pipe between
Asterisk and the AGI to be closed before it considers it completed. So, the
problem is this pipe is duplicated into the child.

Try adding this after setsid:
fclose(STDIN);
fclose(STDOUT);
fclose(STDERR);
fopen('/dev/null', 'r'); // set fd/0
fopen('/dev/null', 'w'); // set fd/1
fopen('php://stdout', 'w'); // a hack to duplicate fd/1 to 2

(from
https://andytson.com/blog/2010/05/daemonising-a-php-cli-script-on-a-posix-system/
 )

On Mon, 22 Apr 2019 at 12:28, Dovid Bender  wrote:

> Eric,
>
> As I mentioned before that does not seem to work with PHP
>
>   == Using SIP RTP CoS mark 5
> -- Executing [my_test_test@from-external:1]
> NoOp("SIP/fpp--09ca", "") in new stack
> -- Executing [my_test_test@from-external:2]
> AGI("SIP/fpp--09ca",
> "fast_agi_wrapper,my_test,cnum=1009&cname=Dovid Bender") in new stack
> -- Launched AGI Script /opt/dovid/fastagi/fast_agi_wrapper
>  fast_agi_wrapper,my_test,cnum=1009&cname=Dovid Bender: We are the
> parent. Let's die!
>  fast_agi_wrapper,my_test,cnum=1009&cname=Dovid Bender: We are child
> here. Taking a nap !
>  fast_agi_wrapper,my_test,cnum=1009&cname=Dovid Bender: That nap was
> god!
> -- AGI Script
> /opt/dovid/fastagi/fast_agi_wrapper completed, returning 0
> -- Executing [my_test_test@from-external:3]
> Playback("SIP/fpp--09ca", "tt-monkeys") in new stack
> --  Playing 'tt-monkeys.slin' (language
> 'en')
> -- Remote UNIX connection
> -- Remote UNIX connection disconnected
>
>
> My code:
> 
>
> $pid = pcntl_fork();
> if ($pid != 0) {
>  // we are the parent
>  // do parent stuff
> $fastagi->verbose("We are the parent. Let's die!");
>  exit;
> }
>
> // we are the child, detatch from terminal
> $sid = posix_setsid();
> if ($sid < 0) {
>  die;
> }
> // do child stuff
>
> $fastagi->verbose("We are child here. Taking a nap !");
> sleep(5);
> $fastagi->verbose("That nap was god!");
>
> ?>
>
>
>
>
> On Fri, Apr 19, 2019 at 2:16 PM Eric Wieling  wrote:
>
>> In PHP something like:
>>
>> $pid = pcntl_fork();
>> if ($pid != 0) {
>>  // we are the parent
>>  // do parent stuff
>>  exit;
>> }
>>
>> // we are the child, detatch from terminal
>> $sid = posix_setsid();
>> if ($sid < 0) {
>>  die;
>> }
>> // do child stuff
>>
>> On 04/19/2019 02:00 PM, Mark Wiater wrote:
>> > On 4/19/2019 1:49 PM, Dovid Bender wrote:
>> >> Mark,
>> >>
>> >> I am using PHP agi and when forking the call does not continue util
>> >> the forked process is done. Am I doing it wrong?
>> >>
>> >>
>> >> On Wed, Apr 10, 2019 at 4:27 PM Mark Wiater > >> > wrote:
>> >>
>> >> On 4/10/2019 3:54 PM, Dovid Bender wrote:
>> >>> I have an AGI that can sometimes take time complete. I don't want
>> >>> the dialplan to be held up by the agi. Is there any way to call
>> >>> it and have Asterisk continue with the dialplan?
>> >>>
>> >>
>> >> Is there a reason you can't fork in the AGI and just return to the
>> >> dialplan in the parent?
>> >>
>> > Dovid,
>> >
>> > I'm not much of a PHP person, but in perl, i check the process id
>> that's
>> > returned from fork() and exit if it's 1 (parent) and keep processing if
>> > it's the child (greater than 1).
>> >
>> > I think php uses pcntl_fork().
>> >
>> > Is that how you're doing it?
>> >
>> >
>> >
>>
>> --
>> http://help.nyigc.net/
>>
>> --
>> _
>> -- Bandwidth and Colocation Provided by http://www.api-digital.com --
>>
>> Check out the new Asterisk community forum at:
>> https://community.asterisk.org/
>>
>> New to Asterisk? Start here:
>>   https://wiki.asterisk.org/wiki/display/AST/Getting+Started
>>
>> asterisk-users mailing list
>> To UNSUBSCRIBE or update options visit:
>>http://lists.digium.com/mailman/listinfo/asterisk-users
>
> --
> _
> -- Bandwidth and Colocation Provided by http://www.api-digital.com --
>
> Check out the new Asterisk community forum at:
> https://community.asterisk.org/
>
> New to Asterisk? Start here:
>   https://wiki.asterisk.org/wiki/display/AST/Getting+Started
>
> asterisk-users mailing list
> To UNSUBSCRIBE or update options visit:
>http://lists.digium.com/mailman/listinfo/asterisk-users



-- 
Regards,
John Runyon
Simply NUC
512-766-0401 x1110
495 Round Rock West Dr, Round Rock, TX 78681
-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

Check out the new Asterisk community forum at: https://community.asterisk.org/

New to Asterisk? Start here:
  https://wiki.asterisk.org/wiki/display/AST/Getting+Started

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/aste

Re: [asterisk-users] Forking AGI or GoSub

2019-04-22 Thread Dovid Bender
Eric,

As I mentioned before that does not seem to work with PHP

  == Using SIP RTP CoS mark 5
-- Executing [my_test_test@from-external:1]
NoOp("SIP/fpp--09ca", "") in new stack
-- Executing [my_test_test@from-external:2]
AGI("SIP/fpp--09ca",
"fast_agi_wrapper,my_test,cnum=1009&cname=Dovid Bender") in new stack
-- Launched AGI Script /opt/dovid/fastagi/fast_agi_wrapper
 fast_agi_wrapper,my_test,cnum=1009&cname=Dovid Bender: We are the
parent. Let's die!
 fast_agi_wrapper,my_test,cnum=1009&cname=Dovid Bender: We are child
here. Taking a nap !
 fast_agi_wrapper,my_test,cnum=1009&cname=Dovid Bender: That nap was
god!
-- AGI Script
/opt/dovid/fastagi/fast_agi_wrapper completed, returning 0
-- Executing [my_test_test@from-external:3]
Playback("SIP/fpp--09ca", "tt-monkeys") in new stack
--  Playing 'tt-monkeys.slin' (language 'en')
-- Remote UNIX connection
-- Remote UNIX connection disconnected


My code:
verbose("We are the parent. Let's die!");
 exit;
}

// we are the child, detatch from terminal
$sid = posix_setsid();
if ($sid < 0) {
 die;
}
// do child stuff

$fastagi->verbose("We are child here. Taking a nap !");
sleep(5);
$fastagi->verbose("That nap was god!");

?>




On Fri, Apr 19, 2019 at 2:16 PM Eric Wieling  wrote:

> In PHP something like:
>
> $pid = pcntl_fork();
> if ($pid != 0) {
>  // we are the parent
>  // do parent stuff
>  exit;
> }
>
> // we are the child, detatch from terminal
> $sid = posix_setsid();
> if ($sid < 0) {
>  die;
> }
> // do child stuff
>
> On 04/19/2019 02:00 PM, Mark Wiater wrote:
> > On 4/19/2019 1:49 PM, Dovid Bender wrote:
> >> Mark,
> >>
> >> I am using PHP agi and when forking the call does not continue util
> >> the forked process is done. Am I doing it wrong?
> >>
> >>
> >> On Wed, Apr 10, 2019 at 4:27 PM Mark Wiater  >> > wrote:
> >>
> >> On 4/10/2019 3:54 PM, Dovid Bender wrote:
> >>> I have an AGI that can sometimes take time complete. I don't want
> >>> the dialplan to be held up by the agi. Is there any way to call
> >>> it and have Asterisk continue with the dialplan?
> >>>
> >>
> >> Is there a reason you can't fork in the AGI and just return to the
> >> dialplan in the parent?
> >>
> > Dovid,
> >
> > I'm not much of a PHP person, but in perl, i check the process id that's
> > returned from fork() and exit if it's 1 (parent) and keep processing if
> > it's the child (greater than 1).
> >
> > I think php uses pcntl_fork().
> >
> > Is that how you're doing it?
> >
> >
> >
>
> --
> http://help.nyigc.net/
>
> --
> _
> -- Bandwidth and Colocation Provided by http://www.api-digital.com --
>
> Check out the new Asterisk community forum at:
> https://community.asterisk.org/
>
> New to Asterisk? Start here:
>   https://wiki.asterisk.org/wiki/display/AST/Getting+Started
>
> asterisk-users mailing list
> To UNSUBSCRIBE or update options visit:
>http://lists.digium.com/mailman/listinfo/asterisk-users
-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

Check out the new Asterisk community forum at: https://community.asterisk.org/

New to Asterisk? Start here:
  https://wiki.asterisk.org/wiki/display/AST/Getting+Started

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users

Re: [asterisk-users] Forking AGI or GoSub

2019-04-19 Thread Eric Wieling

In PHP something like:

$pid = pcntl_fork();
if ($pid != 0) {
// we are the parent
// do parent stuff
exit;
}

// we are the child, detatch from terminal
$sid = posix_setsid();
if ($sid < 0) {
die;
}
// do child stuff

On 04/19/2019 02:00 PM, Mark Wiater wrote:

On 4/19/2019 1:49 PM, Dovid Bender wrote:

Mark,

I am using PHP agi and when forking the call does not continue util 
the forked process is done. Am I doing it wrong?



On Wed, Apr 10, 2019 at 4:27 PM Mark Wiater > wrote:


On 4/10/2019 3:54 PM, Dovid Bender wrote:

I have an AGI that can sometimes take time complete. I don't want
the dialplan to be held up by the agi. Is there any way to call
it and have Asterisk continue with the dialplan?



Is there a reason you can't fork in the AGI and just return to the
dialplan in the parent?


Dovid,

I'm not much of a PHP person, but in perl, i check the process id that's 
returned from fork() and exit if it's 1 (parent) and keep processing if 
it's the child (greater than 1).


I think php uses pcntl_fork().

Is that how you're doing it?





--
http://help.nyigc.net/

--
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

Check out the new Asterisk community forum at: https://community.asterisk.org/

New to Asterisk? Start here:
 https://wiki.asterisk.org/wiki/display/AST/Getting+Started

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
  http://lists.digium.com/mailman/listinfo/asterisk-users

Re: [asterisk-users] Forking AGI or GoSub

2019-04-19 Thread Michael Munger
I am very much a PHP person. PHP doesn't really have an elegant way to handle 
forking / threading, which can make it non-trivial to implement and can be 
unreliable if the implementation is not exact. PHP must also be compiled to be 
thread safe in order to do this properly.

Granted, the last time I looked into this with PHP was under PHP 5.6, and tests 
at that time did not yield the results we wanted. We ultimately moved to Python 
when we needed multi-threading, which is extremely elegant and reliable for 
this application.


[cid:image001.png@01D4F6B9.8C1499D0]

Michael J. Munger, dCAP, MCPS, MCNPS, MBSS

Microsoft Certified Professional

Microsoft Certified Small Business Specialist

Digium Certified Asterisk Professional

High Powered Help, Inc.

p:

678-905-8569

w:

hph.io<https://hph.io>  e: m...@hph.io<mailto:m...@hph.io>




From: asterisk-users  On Behalf Of 
Mark Wiater
Sent: Friday, April 19, 2019 2:00 PM
To: asterisk-users@lists.digium.com
Subject: Re: [asterisk-users] Forking AGI or GoSub

On 4/19/2019 1:49 PM, Dovid Bender wrote:

Mark,

I am using PHP agi and when forking the call does not continue util the forked 
process is done. Am I doing it wrong?


On Wed, Apr 10, 2019 at 4:27 PM Mark Wiater 
mailto:mark.wia...@greybeam.com>> wrote:
On 4/10/2019 3:54 PM, Dovid Bender wrote:

I have an AGI that can sometimes take time complete. I don't want the dialplan 
to be held up by the agi. Is there any way to call it and have Asterisk 
continue with the dialplan?


Is there a reason you can't fork in the AGI and just return to the dialplan in 
the parent?

Dovid,

I'm not much of a PHP person, but in perl, i check the process id that's 
returned from fork() and exit if it's 1 (parent) and keep processing if it's 
the child (greater than 1).

I think php uses pcntl_fork().

Is that how you're doing it?
-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

Check out the new Asterisk community forum at: https://community.asterisk.org/

New to Asterisk? Start here:
  https://wiki.asterisk.org/wiki/display/AST/Getting+Started

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users

Re: [asterisk-users] Forking AGI or GoSub

2019-04-19 Thread Michael Munger
What’s the purpose of the URL? Does it assist operators who handle the 
emergency services call?

Off the top of my head, I am not sure you can fork an AGI call from asterisk. 
Seems it would defeat the purpose of AGI, which should handle the call flow 
when it has control of the call. Have you considered have the AGI write to a 
socket of a secondary application, which will then perform the web call from 
its own process?

Seems relatively simple to write the call information to a socket as it’s 
getting processed, and then the AGI will complete in milliseconds and the call 
can continue. The secondary application can then do the URL POST. (You can 
probably whip this up in python very easily).

Not sure this solve the delay issue, however. If the secondary application 
stops running, you’d have to see if / how the AGI fails. I think it would just 
fail and the dialplan would just continue. Would need testing so it fails 
gracefully.


[cid:image001.png@01D4F6B8.F3CEF8F0]

Michael J. Munger, dCAP, MCPS, MCNPS, MBSS

Microsoft Certified Professional

Microsoft Certified Small Business Specialist

Digium Certified Asterisk Professional

High Powered Help, Inc.

p:

678-905-8569

w:

hph.io<https://hph.io>  e: m...@hph.io<mailto:m...@hph.io>




From: asterisk-users  On Behalf Of 
Dovid Bender
Sent: Friday, April 19, 2019 1:49 PM
To: Asterisk Users Mailing List - Non-Commercial Discussion 

Subject: Re: [asterisk-users] Forking AGI or GoSub

Steve,

In my case this is for emergency services. The AGI calls a web URL with the 
callers information. The call passes through Asterisk and we don't want to 
delay the call at all if the API takes 1-2 extra seconds.


On Wed, Apr 10, 2019 at 10:01 PM Steve Edwards 
mailto:asterisk@sedwards.com>> wrote:
On Wed, 10 Apr 2019, Dovid Bender wrote:

> I have an AGI that can sometimes take time complete. I don't want the
> dialplan to be held up by the agi. Is there any way to call it and have
> Asterisk continue with the dialplan?

On Wed, 10 Apr 2019, Dovid Bender wrote:

> I have an AGI that can sometimes take time complete. I don't want the
> dialplan to be held up by the agi. Is there any way to call it and have
> Asterisk continue with the dialplan?

I had a situation that required this functionality -- processing a credit
card could take a second or two and we didn't want 'dead air' for our user
experience.

I created a pthread to play 'Please hold on while we process your card and
get ready for a good time...' while the main program continued with the
card authorization.

Most of the time the auth completed before the audio finished so it
appeared to be instantaneous to the caller.

The only caveat is to not interact (stdin/stdout) with Asterisk until
'stream file' in the thread completed.

--
Thanks in advance,
-
Steve Edwards   sedwa...@sedwards.com<mailto:sedwa...@sedwards.com>  
Voice: +1-760-468-3867 PST
 https://www.linkedin.com/in/steve-edwards-4244281

--
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

Check out the new Asterisk community forum at: https://community.asterisk.org/

New to Asterisk? Start here:
  https://wiki.asterisk.org/wiki/display/AST/Getting+Started

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users
-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

Check out the new Asterisk community forum at: https://community.asterisk.org/

New to Asterisk? Start here:
  https://wiki.asterisk.org/wiki/display/AST/Getting+Started

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users

Re: [asterisk-users] Forking AGI or GoSub

2019-04-19 Thread Mark Wiater
On 4/19/2019 1:49 PM, Dovid Bender wrote:
> Mark,
>
> I am using PHP agi and when forking the call does not continue util
> the forked process is done. Am I doing it wrong?
>
>
> On Wed, Apr 10, 2019 at 4:27 PM Mark Wiater  > wrote:
>
> On 4/10/2019 3:54 PM, Dovid Bender wrote:
>> I have an AGI that can sometimes take time complete. I don't want
>> the dialplan to be held up by the agi. Is there any way to call
>> it and have Asterisk continue with the dialplan?
>>
>
> Is there a reason you can't fork in the AGI and just return to the
> dialplan in the parent?
>
Dovid,

I'm not much of a PHP person, but in perl, i check the process id that's
returned from fork() and exit if it's 1 (parent) and keep processing if
it's the child (greater than 1).

I think php uses pcntl_fork().

Is that how you're doing it?

-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

Check out the new Asterisk community forum at: https://community.asterisk.org/

New to Asterisk? Start here:
  https://wiki.asterisk.org/wiki/display/AST/Getting+Started

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users

Re: [asterisk-users] Forking AGI or GoSub

2019-04-19 Thread Dovid Bender
Mark,

I am using PHP agi and when forking the call does not continue util the
forked process is done. Am I doing it wrong?


On Wed, Apr 10, 2019 at 4:27 PM Mark Wiater 
wrote:

> On 4/10/2019 3:54 PM, Dovid Bender wrote:
>
> I have an AGI that can sometimes take time complete. I don't want the
> dialplan to be held up by the agi. Is there any way to call it and have
> Asterisk continue with the dialplan?
>
>
> Is there a reason you can't fork in the AGI and just return to the
> dialplan in the parent?
> --
> _
> -- Bandwidth and Colocation Provided by http://www.api-digital.com --
>
> Check out the new Asterisk community forum at:
> https://community.asterisk.org/
>
> New to Asterisk? Start here:
>   https://wiki.asterisk.org/wiki/display/AST/Getting+Started
>
> asterisk-users mailing list
> To UNSUBSCRIBE or update options visit:
>http://lists.digium.com/mailman/listinfo/asterisk-users
-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

Check out the new Asterisk community forum at: https://community.asterisk.org/

New to Asterisk? Start here:
  https://wiki.asterisk.org/wiki/display/AST/Getting+Started

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users

Re: [asterisk-users] Forking AGI or GoSub

2019-04-19 Thread Dovid Bender
Steve,

In my case this is for emergency services. The AGI calls a web URL with the
callers information. The call passes through Asterisk and we don't want to
delay the call at all if the API takes 1-2 extra seconds.


On Wed, Apr 10, 2019 at 10:01 PM Steve Edwards 
wrote:

> On Wed, 10 Apr 2019, Dovid Bender wrote:
>
> > I have an AGI that can sometimes take time complete. I don't want the
> > dialplan to be held up by the agi. Is there any way to call it and have
> > Asterisk continue with the dialplan?
>
> On Wed, 10 Apr 2019, Dovid Bender wrote:
>
> > I have an AGI that can sometimes take time complete. I don't want the
> > dialplan to be held up by the agi. Is there any way to call it and have
> > Asterisk continue with the dialplan?
>
> I had a situation that required this functionality -- processing a credit
> card could take a second or two and we didn't want 'dead air' for our user
> experience.
>
> I created a pthread to play 'Please hold on while we process your card and
> get ready for a good time...' while the main program continued with the
> card authorization.
>
> Most of the time the auth completed before the audio finished so it
> appeared to be instantaneous to the caller.
>
> The only caveat is to not interact (stdin/stdout) with Asterisk until
> 'stream file' in the thread completed.
>
> --
> Thanks in advance,
> -
> Steve Edwards   sedwa...@sedwards.com  Voice: +1-760-468-3867 PST
>  https://www.linkedin.com/in/steve-edwards-4244281
>
> --
> _
> -- Bandwidth and Colocation Provided by http://www.api-digital.com --
>
> Check out the new Asterisk community forum at:
> https://community.asterisk.org/
>
> New to Asterisk? Start here:
>   https://wiki.asterisk.org/wiki/display/AST/Getting+Started
>
> asterisk-users mailing list
> To UNSUBSCRIBE or update options visit:
>http://lists.digium.com/mailman/listinfo/asterisk-users
-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

Check out the new Asterisk community forum at: https://community.asterisk.org/

New to Asterisk? Start here:
  https://wiki.asterisk.org/wiki/display/AST/Getting+Started

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users

Re: [asterisk-users] Forking AGI or GoSub

2019-04-10 Thread Steve Edwards

On Wed, 10 Apr 2019, Dovid Bender wrote:

I have an AGI that can sometimes take time complete. I don't want the 
dialplan to be held up by the agi. Is there any way to call it and have 
Asterisk continue with the dialplan?


On Wed, 10 Apr 2019, Dovid Bender wrote:

I have an AGI that can sometimes take time complete. I don't want the 
dialplan to be held up by the agi. Is there any way to call it and have 
Asterisk continue with the dialplan?


I had a situation that required this functionality -- processing a credit 
card could take a second or two and we didn't want 'dead air' for our user 
experience.


I created a pthread to play 'Please hold on while we process your card and 
get ready for a good time...' while the main program continued with the 
card authorization.


Most of the time the auth completed before the audio finished so it 
appeared to be instantaneous to the caller.


The only caveat is to not interact (stdin/stdout) with Asterisk until 
'stream file' in the thread completed.


--
Thanks in advance,
-
Steve Edwards   sedwa...@sedwards.com  Voice: +1-760-468-3867 PST
https://www.linkedin.com/in/steve-edwards-4244281

--
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

Check out the new Asterisk community forum at: https://community.asterisk.org/

New to Asterisk? Start here:
 https://wiki.asterisk.org/wiki/display/AST/Getting+Started

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
  http://lists.digium.com/mailman/listinfo/asterisk-users

Re: [asterisk-users] Forking AGI or GoSub

2019-04-10 Thread Mark Wiater
On 4/10/2019 3:54 PM, Dovid Bender wrote:
> I have an AGI that can sometimes take time complete. I don't want the 
> dialplan to be held up by the agi. Is there any way to call it and have 
> Asterisk continue with the dialplan?
>

Is there a reason you can't fork in the AGI and just return to the dialplan in 
the parent?
-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

Check out the new Asterisk community forum at: https://community.asterisk.org/

New to Asterisk? Start here:
  https://wiki.asterisk.org/wiki/display/AST/Getting+Started

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users

[asterisk-users] Forking AGI or GoSub

2019-04-10 Thread Dovid Bender
I have an AGI that can sometimes take time complete. I don't want the
dialplan to be held up by the agi. Is there any way to call it and have
Asterisk continue with the dialplan?
-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

Check out the new Asterisk community forum at: https://community.asterisk.org/

New to Asterisk? Start here:
  https://wiki.asterisk.org/wiki/display/AST/Getting+Started

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users