Simple Example Call Center use mod_fifo
This example illustrates on-hook agents waiting customers in a call centre.
Add members in fifo.conf.xml
<extension name="sales_fifo_1"> <condition field="destination_number" expression="^sales_fifo_1$"> <action application="answer"/> <!-- <action application="sleep" data="2000"/> --> <action application="set" data="fifo_chime_list=sales/2001.wav"/> <action application="set" data="fifo_chime_freq=15"/> <action application="set" data="fifo_orbit_exten=1009:45"/> <action application="set" data="fifo_orbit_dialplan=XML"/> <action application="set" data="fifo_orbit_context=default"/> <action application="set" data="fifo_orbit_announce=digits/6.wav"/> <action application="set" data="fifo_caller_exit_key=2"/> <action application="set" data="fifo_caller_exit_to_orbit=true"/> <action application="set" data="fifo_override_announce=sales/3001.wav"/> <action application="fifo" data="sales_fifo_1@$${domain} in undef $${base_dir}/sounds/music/8000/hood_loop_music.wav"/> </condition> </extension> |
Note: the members can also dynamically add/remove by using the fifo_member comma
Dialplan
<extension name="sales_fifo_1"> <condition field="destination_number" expression="^sales_fifo_1$"> <action application="answer"/> <!-- <action application="sleep" data="2000"/> --> <action application="set" data="fifo_chime_list=sales/2001.wav"/> <action application="set" data="fifo_chime_freq=15"/> <action application="set" data="fifo_orbit_exten=1009:45"/> <action application="set" data="fifo_orbit_dialplan=XML"/> <action application="set" data="fifo_orbit_context=default"/> <action application="set" data="fifo_orbit_announce=digits/6.wav"/> <action application="set" data="fifo_caller_exit_key=2"/> <action application="set" data="fifo_caller_exit_to_orbit=true"/> <action application="set" data="fifo_override_announce=sales/3001.wav"/> <action application="fifo" data="sales_fifo_1@$${domain} in undef $${base_dir}/sounds/music/8000/hood_loop_music.wav"/> </condition> </extension>
Summary
Transfer your customers call to extension sales_fifo_1, the caller then waiting in the queue listening MOH, FS then originate a call to an available agent and pop out the caller and bridge to the answered agent. The caller will hear 6.wav and agent hear 3001.wav before they can hear each other.
If there are no available agents, it will play 2001.wav every 15 seconds, impatient callers can press a key (2 in this example) to transfer the call to exten 1009, or waiting 45 seconds to transfer to call to exten 1009 on timeout