Check out monitor_early_media_fail:<br><a href="http://wiki.freeswitch.org/wiki/Channel_Variables#monitor_early_media_fail">http://wiki.freeswitch.org/wiki/Channel_Variables#monitor_early_media_fail</a><br><br>It is a hybrid of ignoring early media and listening to early media for various conditions. In your case you'll need to play around with it. In your case you need to figure out which early media scenarios count as a "fail" and will cause processing to move on as if the call really did fail. <br>
<br>Roll up your sleeves, you have some work to do. :)<br><br>-MC<br><br><div class="gmail_quote">On Sat, Oct 9, 2010 at 9:24 PM, Jeroen C. van Gelderen <span dir="ltr"><<a href="mailto:slim@thegreek.com">slim@thegreek.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">Hi Guys,<br>
<br>
I have a legacy Panasonic PBX which does not support CPC/Disconnect<br>
Supervision. Calls from this PBX are sent to Freeswitch by way of<br>
DAHDI/FreeTDM FXO ports (on a Xorcom Astribank). I use tone_detect to deal<br>
with far-end hang-ups. This works fine:<br>
<br>
<!-- Detect busy tone from Panasonic --><br>
<action application="tone_detect" data="busy 350,440 r 0 hangup 4"/><br>
<br>
Some calls from the Panasonic PBX are put in a FIFO and from there they are<br>
sent to a SIP-to-GSM bridge (GoIP) to be terminated on one of 3 GSM phones<br>
in a round-robin fashion.<br>
<br>
The GSM bridge requires me to use "ignore_early_media=true" otherwise the<br>
caller will receive messages like "the number you are calling does not<br>
answer". When I set "ignore_early_media=true" the FIFO correctly keeps<br>
hunting for a GSM phone that is actually answered and will ignore phones<br>
that are busy, no-answer or turned off. This too works fine.<br>
<br>
The problem occurs when the two are combined as follows:<br>
<br>
Panasonic PBX --FXO--> Freeswitch --SIP--> GSM-bridge<br>
<br>
If I enable ignore_early_media then tone_detect doesn't work UNTIL one of<br>
the GSMs is answered. This is a problem when none of the GSMs are answered<br>
and the Panasonic PBX hangs up. The FXO port will stay "up" and the FIFO<br>
will keep hunting until it times out.<br>
<br>
If I don't use "ignore_early_media=true" then tone_detect works fine but<br>
then every telco message gets mistaken for an answered call and the hunting<br>
stops early.<br>
<br>
I tried changing this example line from my fifo.conf:<br>
<br>
<member timeout="30" simo="1" lag="5"><br>
{member_wait=nowait,ignore_early_media=true}sofia/internal/1??????7701@192.1<br>
68.3.11:5060<br>
</member><br>
<br>
to<br>
<br>
<member timeout="30" simo="1" lag="5"><br>
{member_wait=nowait}[ignore_early_media=true]sofia/internal/1??????7701@192.<br>
168.3.11:5060<br>
</member><br>
<br>
in a vain attempt to ignore early media on the SIP leg only. This doesn't<br>
seem to do anything however.<br>
<br>
Can anyone clue me in on what I'm missing? I've snipped the relevant<br>
configuration bits below. I have the feeling I'm missing something obvious.<br>
<br>
Cheers,<br>
-Slim<br>
<br>
----8<----8<----8<----8<----8<----<br>
<br>
<configuration name="fifo.conf" description="FIFO Configuration"><br>
<settings><br>
<param name="delete-all-outbound-member-on-startup" value="false"/><br>
</settings><br>
<fifos><br>
<fifo name="cool_fifo@$${domain}" importance="0"><br>
<br>
<member timeout="30" simo="1" lag="5"><br>
{member_wait=nowait,ignore_early_media=true}sofia/internal/1??????7701@192.1<br>
68.3.11:5060</member><br>
<br>
<member timeout="30" simo="1" lag="5"><br>
{member_wait=nowait,ignore_early_media=true}sofia/internal/1??????7693@192.1<br>
68.3.11:5060</member><br>
<br>
<member timeout="30" simo="1" lag="5"><br>
{member_wait=nowait,ignore_early_media=true}sofia/internal/1??????7698@192.1<br>
68.3.11:5060</member><br>
<br>
</fifo><br>
</fifos><br>
</configuration><br>
<br>
----8<----8<----8<----8<----8<----<br>
<br>
<include><br>
<context name="pbx_test"><br>
<br>
<extension name="test1"><br>
<condition field="${freetdm_span_name}" expression="^span_fxo_test$"><br>
<action application="answer"/><br>
<br>
<!-- Detect busy tone from Panasonic --><br>
<action application="tone_detect" data="busy 350,440 r 0 hangup 4"/><br>
<br>
<action application="playback"<br>
data="ivr/ivr-hold_connect_call.wav"/><br>
<br>
<action application="fifo" data="cool_fifo@$${domain} in"/><br>
<br>
</condition><br>
</extension><br>
</context><br>
</include><br>
<br>
----8<----8<----8<----8<----8<----<br>
<br>
Cheers,<br>
-Slim<br>
--<br>
Jeroen C. "Slim" van Gelderen<br>
<br>
<br>
<br>
_______________________________________________<br>
FreeSWITCH-users mailing list<br>
<a href="mailto:FreeSWITCH-users@lists.freeswitch.org">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
</blockquote></div><br>