[Freeswitch-users] How to configure for FS playing voice prompt in case the called extension is in a call.

Steven Ayre steveayre at gmail.com
Mon Jul 11 12:13:10 MSD 2011


There are two ways....

Most phones will return a USER_BUSY release code if you bridge to a phone
that's busy. If the phone does then you can continue_on_fail so that you
(pre-)answer the call and play that message after the bridge. Something
like:

<extension name="Local_Extension">
    <condition field="destination_number" expression="^(1\d{3})$">
        <action application="set" data="dialed_extension=$1"/>
        <action application="export" data="dialed_extension=$1"/>
        <action application="set" data="call_timeout=30"/>
        <action application="set" data="hangup_after_bridge=true"/> <!--
Hangup on successful call -->
        <action application="set" data="continue_on_fail=true"/> <!-- Don't
hangup on failed call, continue to IVR prompt -->
        <action application="hash"
data="insert/${domain_name}-last_dial_ext/${dialed_extension}/${uuid}"/>
        <action application="hash"
data="insert/${domain_name}-last_dial_ext/global/${uuid}"/>
        <action application="bridge"
data="user/${dialed_extension}%${domain_name}"/>
        <!-- Put the IVR prompt here, see
http://wiki.freeswitch.org/wiki/Misc._Dialplan_Tools_play_and_get_digits -->
    </condition>
</extension>

The 2nd option is that you use Limit to determine if another person is
already on a call to the phone. That only really works if you run the the
only servers that call the phone since it requires tracking all calls to the
phone. It will sometimes work better though - especially if the phone has
multiple lines. http://wiki.freeswitch.org/wiki/Limit

-Steve


On 11 July 2011 03:25, fieldpeak <fieldpeak at gmail.com> wrote:

> Hi Gurus,
>
> Could anyone advise how to realize have FS to play a voice prompt e.g. 'the
> extension you dialed is busy now, please dial the other exsention' to
> replacing busy tone when the called extension is in a call...
>
> the details is below,
>
> When calling to FS, the FS will play IVR "welcome to call us, please input
> the extension number, for operator please press 0",
> then the caller input the extension number, in case the extension is in a
> call, the caller will hear busy tone...
> it needs the system play "the extension you dailed is busy, please dial the
> other extension", currently my dial plan as following, could anyone advise
> how to change based on below dial plan or any other new dail plan can
> realize it...
>
> Thanks a lot!
>
>     <extension name="Local_Extension">
>       <condition field="destination_number" expression="^(1\d{3})$">
>     <action application="set" data="dialed_extension=$1"/>
>     <action application="export" data="dialed_extension=$1"/>
>     <action application="set" data="ringback=${us-ring}"/>
>     <action application="set" data="transfer_ringback=$${hold_music}"/>
>     <action application="set" data="call_timeout=30"/>
>     <action application="set" data="hangup_after_bridge=true"/>
>
>     <!-- to enable voice mail, set continue_on_fail=true below -->
>     <action application="set" data="continue_on_fail=false"/>
>     <action application="hash"
> data="insert/${domain_name}-last_dial_ext/${dialed_extension}/${uuid}"/>
>     <action application="hash"
> data="insert/${domain_name}-last_dial_ext/global/${uuid}"/>
>     <action application="bridge"
> data="sofia/internal/${dialed_extension}%${domain_name}"/>
>     <action application="answer"/>
>
>     <action application="sleep" data="1000"/>
>     <action application="bridge" data="loopback/app=voicemail:default
> ${domain_name} ${dialed_extension}"/>
>       </condition>
>     </extension>
>
>
>     <extension name="IVR" >
>        <condition field="destination_number" expression="^888$">
>            <action application="answer"/>
>            <action application="sleep" data="2000"/>
>            <action application="ivr" data="IVR"/>
>        </condition>
>     </extension>
>
>         <!--  -->
>     <menu name="IVR"
>         greet-long="C:/VSWITCH/recordings/greeting_tts.wav"
>         greet-short="C:/VSWITCH/recordings/greeting_tts.wav"
>         invalid-sound="ivr/ivr-that_was_an_invalid_entry.wav"
>         exit-sound="voicemail/vm-goodbye.wav"
>         confirm-macro=""
>         confirm-key=""
>         tts-engine="flite"
>         tts-voice="rms"
>         confirm-attempts="3"
>         timeout="10000"
>         inter-digit-timeout="2000"
>         max-failures="3"
>         max-timeouts="3"
>         digit-len="5">
>         <entry action="menu-exec-app" digits="/(^\*\d{3,5}$|^\d{3,5}$)/"
> param="transfer $1 XML default"/>
>     </menu>
>
> Regards,
> Charles
>
> _______________________________________________
> Join us at ClueCon 2011, Aug 9-11, Chicago
> http://www.cluecon.com 877-7-4ACLUE
>
> FreeSWITCH-users mailing list
> FreeSWITCH-users at lists.freeswitch.org
> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
> http://www.freeswitch.org
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20110711/c1ca709b/attachment-0001.html 


More information about the FreeSWITCH-users mailing list