freeswitch@internal> originate {fail_on_single_reject=CALL_REJECTED:NO_ANSWER}error/NO_ANSWER|error/USER_BUSY|error/CALL_REJECTED 999
-ERR NO_ANSWER
<extension name="outbound">
<condition field="destination_number" expression="^\d{7}$">
<action application="set" data="bridge_answer_timeout=120"/>
<action application="set" data="continue_on_fail=NORMAL_TEMPORARY_FAILURE:NO_ROUTE_DESTINATION:CALL_REJECTED"/>
<action application="set" data="fail_on_single_reject=USER_BUSY:NO_ANSWER:NO_USER_RESPONSE:RECOVERY_ON_TIMER_EXPIRE:ORIGINATOR_CANCEL"/>
<action application="set" data="bridge_early_media=true"/>
<action application="set" data="hangup_after_bridge=true"/>
<action application="odbc_query" inline="true" data="route_out"/>
<action application="bridge" data="${bridge_to}"/>
<action application="hangup" data="${last_bridge_hangup_cause}"/>
<anti-action application="hangup" data="INVALID_NUMBER_FORMAT"/>
</condition>
</extension>
or when included in bridge dialstring:
<action application="bridge" data="{fail_on_single_reject=USER_BUSY:NO_ANSWER}${bridge_to}"/>
i.e. it tries *all* gateways in the dialstring and ignores returning codes completely.
I tried the same test when remote gateways were just hanging up with USER_BUSY code on receiving calls, but it did not affect the same negative result - all remote peers were tried in order and return code were ignored.
I had the same experience with ver 1.2, but that time set continue_on_single_reject=err1,err2,err3 in dialplan worked for me flawlessly. However the same approach does not work for 1.5 and 1.4. Has anyone succeded in getting it to work as expected?
Thanks / Mike