If this is your exact configuration, it is simply not possible that the call gets routed back to same extension unless there is something configured in the dialplan.
From: freeswitch-users-bounces@lists.freeswitch.org [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of Nitin TomerSent: Wednesday, August 29, 2012 3:39 PM
To: 'FreeSWITCH Users Help'
Subject: [Freeswitch-users] mod_callcenter: Call being forwarded to caller itself
Hi,
I’ve configure mod_callcenter on Ubuntu 12.0.4. I’ve 5 extensions working on 6 soft phones – 1000 to 1005. 1000 is used to call the IVR number, rest 5 are agents.
The dial plan looks like –
<extension name="ivr_nitin">
<condition field="destination_number" expression="^5002$">
<action application="answer"/>
<action application="sleep" data="500"/>
<action application="ivr" data="nitin_ivr"/>
</condition>
</extension>
<!-- For Call Center -->
<!-- Newgen Support -->
<extension>
<condition field="destination_number" expression="^(450)$">
<action application="set" data="caller_id_name=Newgen Support" />
<action application="set" data="call_timeout=60" />
<action application="set" data="originate_timeout=60" />
<action application="callcenter" data="support@default"/>
</condition>
</extension>
<!-- Newgen Sales -->
<extension>
<condition field="destination_number" expression="^(451)$">
<action application="set" data="caller_id_name=Newgen Sales" />
<action application="set" data="call_timeout=60" />
<action application="set" data="originate_timeout=60" />
<action application="callcenter" data="sales@default"/>
</condition>
</extension>
<!-- Newgen Human Resources -->
<extension>
<condition field="destination_number" expression="^(452)$">
<action application="set" data="caller_id_name=Newgen Human Resources" />
<action application="set" data="call_timeout=60" />
<action application="set" data="originate_timeout=60" />
<action application="callcenter" data="hr@default"/>
</condition>
</extension>
IVR.xml –
<include>
<menu name="nitin_ivr"
greet-long="say:Welcome to Newgen Software Technologies Limited. Press 1 for support, 2 for sales or 3 for human resource"
greet-short="say:Welcome to Newgen. Press 1 for support, 2 for sales or 3 for human resources"
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="slt"
confirm-attempts="3"
timeout="3000"
inter-digit-timeout="2000"
max-failures="3"
max-timeouts="3"
digit-len="4">
<entry action="menu-exec-app" digits="1" param="transfer 450 XML default"/> <!-- Support -->
<entry action="menu-exec-app" digits="2" param="transfer 451 XML default"/> <!-- Sales -->
<entry action="menu-exec-app" digits="3" param="transfer 452 XML default"/> <!-- Human Resources -->
</menu>
</include>
And callcenter.conf.xml –
<configuration name="callcenter.conf" description="CallCenter">
<settings>
<!--<param name="odbc-dsn" value="dsn:user:pass"/>-->
<!--<param name="dbname" value="/dev/shm/callcenter.db"/>-->
</settings>
<queues>
<queue name="sales@default">
<param name="strategy" value="agent-with-least-talk-time"/>
<param name="moh-sound" value="$${hold_music}"/>
<!--<param name="record-template" value="$${base_dir}/recordings/sales/${strftime(%Y-%m-%d-%H-%M-%S)}.${destination_number}.${caller_id_number}.${uuid}.wav"/>-->
<param name="time-base-score" value="queue"/>
<param name="tier-rules-apply" value="false"/>
<param name="tier-rule-wait-second" value="300"/>
<param name="tier-rule-wait-multiply-level" value="true"/>
<param name="tier-rule-no-agent-no-wait" value="false"/>
<param name="discard-abandoned-after" value="14400"/>
<param name="max-wait-time" value="0"/>
<param name="max-wait-time-with-no-agent" value="120"/>
</queue>
<queue name="support@default">
<param name="strategy" value="agent-with-least-talk-time"/>
<param name="moh-sound" value="$${hold_music}"/>
<!--<param name="record-template" value="$${base_dir}/recordings/support/${strftime(%Y-%m-%d-%H-%M-%S)}.${destination_number}.${caller_id_number}.${uuid}.wav"/>-->
<param name="time-base-score" value="queue"/>
<param name="tier-rules-apply" value="false"/>
<param name="tier-rule-wait-second" value="300"/>
<param name="tier-rule-wait-multiply-level" value="true"/>
<param name="tier-rule-no-agent-no-wait" value="false"/>
<param name="discard-abandoned-after" value="60"/>
<param name="abandoned-resume-allowed" value="false"/>
<param name="max-wait-time" value="0"/>
<param name="max-wait-time-with-no-agent" value="120"/>
</queue>
<queue name="hr@default">
<param name="strategy" value="agent-with-least-talk-time"/>
<param name="moh-sound" value="$${hold_music}"/>
<!--<param name="record-template" value="$${base_dir}/recordings/support/${strftime(%Y-%m-%d-%H-%M-%S)}.${destination_number}.${caller_id_number}.${uuid}.wav"/>-->
<param name="time-base-score" value="queue"/>
<param name="tier-rules-apply" value="false"/>
<param name="tier-rule-wait-second" value="300"/>
<param name="tier-rule-wait-multiply-level" value="true"/>
<param name="tier-rule-no-agent-no-wait" value="false"/>
<param name="discard-abandoned-after" value="60"/>
<param name="abandoned-resume-allowed" value="false"/>
<param name="max-wait-time" value="0"/>
<param name="max-wait-time-with-no-agent" value="120"/>
</queue>
</queues>
<!-- WARNING: Configuration of XML Agents will be updated into the DB upon restart. -->
<!-- WARNING: Configuration of XML Tiers will reset the level and position if those were supplied. -->
<!-- WARNING: Agents and Tiers XML config shouldn't be used in a multi FS shared DB setup (Not currently supported anyway) -->
<agents>
<agent name="1001" type="callback" contact="[call_timeout=10]user/1001" status="Available" max-no-answer="3" wrap-up-time="10" reject-delay-time="10" busy-delay-time="60" />
<agent name="1002" type="callback" contact="[call_timeout=10]user/1002" status="Available" max-no-answer="3" wrap-up-time="10" reject-delay-time="10" busy-delay-time="60" />
<agent name="1003" type="callback" contact="[call_timeout=10]user/1003" status="Available" max-no-answer="3" wrap-up-time="10" reject-delay-time="10" busy-delay-time="60" />
<agent name="1004" type="callback" contact="[call_timeout=10]user/1004" status="Available" max-no-answer="3" wrap-up-time="10" reject-delay-time="10" busy-delay-time="60" />
<agent name="1005" type="callback" contact="[call_timeout=10]user/1005" status="Available" max-no-answer="3" wrap-up-time="10" reject-delay-time="10" busy-delay-time="60" />
</agents>
<tiers>
<!-- If no level or position is provided, they will default to 1. You should do this to keep db value on restart. -->
<!-- agent 1001 is in all three queues -->
<tier agent="1001" queue="sales@default" level="1" position="1"/>
<tier agent="1001" queue="support@default" level="1" position="1"/>
<tier agent="1001" queue="hr@default" level="1" position="1"/>
<tier agent="1002" queue="sales@default" level="1" position="1"/>
<tier agent="1003" queue="support@default" level="1" position="1"/>
<tier agent="1004" queue="sales@default" level="1" position="1"/>
<tier agent="1004" queue="support@default" level="1" position="1"/>
<tier agent="1005" queue="hr@default" level="1" position="1"/>
</tiers>
</configuration>
When I call from extension 1000 and press 2 for sales, call is routed back to extension 1000, which is not even in agents’ list. Why is it happening?
Regards
Nitin