Although probably not what you want to hear, I don't think there is any way that Asterisk will detect answering supervision on an analog POTS line (I believe that there used to be an option with some Telcos to get a polarity reversal upon answering, but I don't think that is possible any more.)  If you were willing to make the calls using a VOIP provider like Voipjet you would not have this problem, but that might not meet your needs for other reasons.
<br><br><div><span class="gmail_quote">On 2/8/07, <b class="gmail_sendername">Alvin Austin</b> &lt;<a href="mailto:aan@crlogic.com">aan@crlogic.com</a>&gt; wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Hello Asteriskers, :-)<br><br>We&#39;re trying to set up an outbound notification calling for system<br>alerts with Asterisk 1.4.0.&nbsp;&nbsp;We generate a call file in<br>/var/spool/asterisk/outgoing and the outbound call is originated through
<br>Zap/1 (Sangoma A200D to a Canadian POTS line).&nbsp;&nbsp;The problem is that<br>Asterisk does not wait for the other side to answer before it starts<br>playing the message.&nbsp;&nbsp;So the person called answers the phone after the<br>
second or third ring and only hears the tail end of the message and the<br>&quot;goodbye&quot;.<br><br>Ideally, we want to deliver the message immediately after the person<br>answers, or if an answering machine picks up, right after the &quot;beep&quot;.
<br><br>Any suggestions?<br><br>(1) The call file generator script (works ok):<br>#!/bin/sh<br><br>TMPFILE=`mktemp /tmp/tmp.XXXXXXX` || exit 1<br>echo &quot;TMPFILE = $TMPFILE&quot;<br><br>cat &lt;&lt;EOT &gt; $TMPFILE<br>
Channel: Zap/g1/phone_number_here<br>Callerid: SYSTEM<br>MaxRetries: 2<br>RetryTime: 60<br>WaitTime: 30<br>Context: dialout<br>Extension: s<br>Priority: 1<br>EOT<br><br>mv -v $TMPFILE /var/spool/asterisk/outgoing<br><br>(2) The dialout context in 
extensions.conf (problem - starts playback<br>before call is answered)<br>[dialout]<br>exten =&gt; s,1,NoOp(Dialout)<br>exten =&gt; s,n,Set(TIMEOUT(digit)=5)<br>exten =&gt; s,n,Set(TIMEOUT(response)=8)<br>exten =&gt; s,n,Set(MACHINE=0)
<br>exten =&gt; s,n,Answer<br>exten =&gt; s,n,BackgroundDetect(silence/5,1000,50)<br>exten =&gt; s,n,NoOp(Ans Machine detected)<br>exten =&gt; s,n,Set(MACHINE=1)<br>exten =&gt; s,n,BackgroundDetect(silence/30,1000,50,30050)
<br>exten =&gt; s,n,NoOp(Ans Machine Message Too Long)<br>exten =&gt; s,n,Hangup<br><br>exten =&gt; talk,1,GotoIf($[${MACHINE}=1]?machine:human)<br>exten =&gt; talk,2(machine),Goto(dialout-machine,s,1)<br>exten =&gt; talk,3(human),Goto(dialout-human,s,1)
<br><br>[dialout-machine]<br>exten =&gt; s,1,NoOp(Dialout to Ans Machine)<br>exten =&gt; s,n,Playback(/tmp/asterisk-recording)<br>exten =&gt; s,n,Wait(1)<br>; we&#39;d like to do something to wait for the &quot;beep&quot; here...
<br>exten =&gt; s,n,Playback(vm-goodbye)<br>exten =&gt; s,n,Hangup<br><br>[dialout-human]<br>exten =&gt; s,1,NoOp(Dialout to Human)<br>exten =&gt; s,n,Playback(/tmp/asterisk-recording)<br>exten =&gt; s,n,Wait(1)<br>exten =&gt; s,n,Playback(vm-goodbye)
<br>exten =&gt; s,n,Hangup<br><br><br>(3) *CLI&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;-- Attempting call on Zap/1/1234567 for s@dialout:1 (Retry 1)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &gt; Channel Zap/1-1 was answered.<br>&nbsp;&nbsp;&nbsp;&nbsp;-- Executing [s@dialout:1] NoOp(&quot;Zap/1-1&quot;, &quot;Dialout&quot;) in new stack
<br>&nbsp;&nbsp;&nbsp;&nbsp;-- Executing [s@dialout:2] Set(&quot;Zap/1-1&quot;, &quot;TIMEOUT(digit)=5&quot;) in new<br>stack<br>&nbsp;&nbsp;&nbsp;&nbsp;-- Digit timeout set to 5<br>&nbsp;&nbsp;&nbsp;&nbsp;-- Executing [s@dialout:3] Set(&quot;Zap/1-1&quot;, &quot;TIMEOUT(response)=8&quot;) in
<br>new stack<br>&nbsp;&nbsp;&nbsp;&nbsp;-- Response timeout set to 8<br>&nbsp;&nbsp;&nbsp;&nbsp;-- Executing [s@dialout:4] Set(&quot;Zap/1-1&quot;, &quot;MACHINE=0&quot;) in new stack<br>&nbsp;&nbsp;&nbsp;&nbsp;-- Executing [s@dialout:5] Answer(&quot;Zap/1-1&quot;, &quot;&quot;) in new stack
<br>(Problem: Asterisk does not wait until the call is answered on the far end!)<br>&nbsp;&nbsp;&nbsp;&nbsp;-- Executing [s@dialout:6] BackgroundDetect(&quot;Zap/1-1&quot;,<br>&quot;silence/5|1000|50&quot;) in new stack<br>&nbsp;&nbsp;&nbsp;&nbsp;-- Playing &#39;silence/5&#39; (language &#39;en&#39;)
<br>&nbsp;&nbsp;&nbsp;&nbsp;-- Executing [talk@dialout:1] GotoIf(&quot;Zap/1-1&quot;, &quot;0?machine:human&quot;)<br>in new stack<br>&nbsp;&nbsp;&nbsp;&nbsp;-- Goto (dialout,talk,3)<br>&nbsp;&nbsp;&nbsp;&nbsp;-- Executing [talk@dialout:3] Goto(&quot;Zap/1-1&quot;, &quot;dialout-human|s|1&quot;)
<br>in new stack<br>&nbsp;&nbsp;&nbsp;&nbsp;-- Goto (dialout-human,s,1)<br>&nbsp;&nbsp;&nbsp;&nbsp;-- Executing [s@dialout-human:1] NoOp(&quot;Zap/1-1&quot;, &quot;Dialout to Human&quot;)<br>in new stack<br>&nbsp;&nbsp;&nbsp;&nbsp;-- Executing [s@dialout-human:2]<br>Playback(&quot;Zap/1-1&quot;,&quot;/tmp/asterisk-recording&quot;) in new stack
<br>&nbsp;&nbsp;&nbsp;&nbsp;-- Playing &#39;/tmp/asterisk-recording&#39; (language &#39;en&#39;)<br>&nbsp;&nbsp;&nbsp;&nbsp;-- Executing [s@dialout-human:3] Wait(&quot;Zap/1-1&quot;, &quot;1&quot;) in new stack<br>&nbsp;&nbsp;&nbsp;&nbsp;-- Executing [s@dialout-human:4] Playback(&quot;Zap/1-1&quot;, &quot;vm-goodbye&quot;)
<br>in new stack<br>&nbsp;&nbsp;&nbsp;&nbsp;-- Playing &#39;vm-goodbye&#39; (language &#39;en&#39;)<br>&nbsp;&nbsp;&nbsp;&nbsp;-- Executing [s@dialout-human:5] Hangup(&quot;Zap/1-1&quot;, &quot;&quot;) in new stack<br>&nbsp;&nbsp;== Spawn extension (dialout-human, s, 5) exited non-zero on &#39;Zap/1-1&#39;
<br>&nbsp;&nbsp;&nbsp;&nbsp;-- Hungup &#39;Zap/1-1&#39;<br>[Feb&nbsp;&nbsp;8 13:29:37] NOTICE[32512]: pbx_spool.c:351 attempt_thread: Call<br>completed to Zap/1/1234567<br><br>Thanks for any ideas on this!<br><br>Alvin<br><br>_______________________________________________
<br>--Bandwidth and Colocation provided by <a href="http://Easynews.com">Easynews.com</a> --<br><br>asterisk-users mailing list<br>To UNSUBSCRIBE or update options visit:<br>&nbsp;&nbsp; <a href="http://lists.digium.com/mailman/listinfo/asterisk-users">
http://lists.digium.com/mailman/listinfo/asterisk-users</a><br></blockquote></div><br>