<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">No problem Xing,<br>
      <br>
      Callcenter is not an easy task, it is a worl itself.<br>
      <br>
      As your "agents" are IVR apps, and if you like mod_callcenter, you
      could just create a GUI to "control/set" the pseudo-status of your
      IVR apps. Also, if the agent is busy with a call, mod_callcenter
      just distribute calls to free agents.<br>
      <br>
      Good luck with your project.<br>
      <br>
      Regards, <br>
      Dario<br>
      <br>
      On 8/21/2012 1:00 PM, x.liu wrote:<br>
    </div>
    <blockquote cite="mid:5033C5B1.3070509@hw.ac.uk" type="cite">
      <pre wrap="">Hi g &amp; Dario,

Many thanks for your suggestions and explanations! Very helpful!

I should have made my scenarios clearer in the first place:
My agents are IVR apps which have registered to FS and are always 
available unless they are answering calls.


Cheers,
Xing


On 08/20/2012 05:32 PM, g wrote:
</pre>
      <blockquote type="cite">
        <pre wrap="">Thanks Dario. You gave the answer I would like to do.
Liu, You can avoid agents dialing extensions to login/logout/pause, but at
least they have to click on some web app to let the system knows they are
available.
Another option is to let the system considerthem always available even when
the softphones are'nt registered. If you set a correct distribution criteria,
the unregistered softphones are skipped in a round robin distribution, as the
agents were not logged in. But in this case, forget about statistics on drops,
presence, waiting time on queue etc.
g

On Monday 20 August 2012 09:06:42 Saugort Dario Garcia Tovar wrote:
</pre>
        <blockquote type="cite">
          <pre wrap="">mmm,

You think that the agent is dialing an extension. It is not what is
happening. The agent is dialing a number that invoke a mod_callcenter
function: login/logout/not ready. As FS is like a pbx (and more than a
pbx), it seems like an extension.

Just, registrer to FS is not enough. What happen when the agent need to
go the restroom, take coffee, couching, or take a break? Then, you will
need to reproduce in the agent gui the funcion of login, logout and
break... but again, what happen if your agent gui fail? your callcenter
service will stop because your gui fail? Also, if you just use register
signaling, you could face a wide sort of operational issues like, what
happen if the agent left the position and left the their seats: then
calls will be routed to empty seats!

If you want to get the agent login/logout without the agent dial
nothing... if I am not wrong, mod_callcenter offer functions to log and
logout agent from fs console, so I think you can invoke them using
execute() from lua or your script.

On 8/20/2012 7:30 AM, x.liu wrote:
</pre>
          <blockquote type="cite">
            <pre wrap="">Hi g,

Thanks for your response!

My situation is that I don't want the agent to dial the extension to be
able to accept calls.
The agents (e.g. a FS softphone client, or a Java application) just need
to register to FS as SIP clients.

And I've not figured out what commands I should send if I use extension
"^agent-login$" and FS socket.

So I guess I may be better not to use mod_callcenter for routing calls
to different extensions.
just to use FS ESL and my own logics to bridge the calls.

I was curious about the reply "You don't need agent to dial anything to
get the call from queue... "
and I thought my question is relevant to the thread, so I asked
questions in this thread.
Apologies for that. I could have opened a different thread for the
questions :-)

Cheers,
Xing

On 08/20/2012 11:53 AM, g wrote:
</pre>
            <blockquote type="cite">
              <pre wrap="">You can log an agent into a queue by a web application in which a
button click handles commands via the FS socket, or just let the
agent dial an extension (i.e. 999+itssoftphonenumber) where dialplan
sets that agent in the correct state.
ie (replace agent_login regex into something like 999201 if your agent
is 201)&lt;extension name="agent_login"&gt;

     &lt;condition field="destination_number"
     expression="^agent-login$"&gt;

       &lt;action application="set"
       data="res=${callcenter_config(agent set status&gt;&gt;
${caller_id_number}@${domain_name} 'Available')}" /&gt;

       &lt;action application="answer" data=""/&gt;
       &lt;action application="sleep" data="500"/&gt;
       &lt;action application="playback"
       data="ivr/ivr-you_are_now_logged_in.wav"/&gt;  &lt;action
       application="hangup" data=""/&gt;

     &lt;/condition&gt;

&lt;/extension&gt;

&lt;extension name="agent_logoff"&gt;

     &lt;condition field="destination_number"
     expression="^agent-logoff$"&gt;

       &lt;action application="set"
       data="res=${callcenter_config(agent set status&gt;&gt;
${caller_id_number}@${domain_name} 'Logged Out')}" /&gt;

       &lt;action application="answer" data=""/&gt;
       &lt;action application="sleep" data="500"/&gt;
       &lt;action application="playback"
       data="ivr/ivr-you_are_now_logged_out.wav"/&gt;  &lt;action
       application="hangup" data=""/&gt;

     &lt;/condition&gt;

&lt;/extension&gt;

The important thing is tha the agent is, somehow, putted in
"available"
status. You can also do it via fs_cli, but now I can't remeber the
exact
syntax for that. Help from cli should clarify.

At this point, the agent should result in "waiting" state
Of course, you should before declared that agent as member of a tier
or, at least, of a queue.

Hope it helps
g

On Friday 17 August 2012 14:48:04 x.liu wrote:
</pre>
              <blockquote type="cite">
                <pre wrap="">I am also trying the mod_callcenter. What I want is to route a call
to
one agent ( a registered FS client, e.g. a SIP softphone)
of a list of agents by a Random or RoundRobin policy.

When I dial the extension which calls the callcenter app, I only
have
hold-on music. It does not route a call to a agent.
You said " You don't need agent to dial anything to get the call
from
queue. ",
I am wondering how I could let an agent log into the queue?

Thanks!

Xing

On 08/17/2012 01:56 PM, g wrote:
</pre>
                <blockquote type="cite">
                  <pre wrap="">Me too, I'm often dealing with callcenters (inbound+outbound). I
found
in
Freeswitch the easyest solution to manage queue and agents. I'm
not a
programmer, but I have experience with Asterisk, Freeswitch and
the
whole
workflow of complex callcenters.
My suggestion too is to use mod_callcenter. Easy, fast, powerful.
You
don't need agent to dial anything to get the call from queue.
In my opinion, you can use that module or, for more complex things
(ie. outbound predictive) you can use the socket manager to
perform  call placement, call transfer, conference with
thirdy-part recording  IVR etc.
I feel the best solution, also if it will require some effort for
a Java programmer, is to do all that in php, which is light and
fast also for older PC, able to run also with thin-client low
memory low-cpu machines. If you can plan to turn to php and you
don't have too short time, I can consider to help for the
Freeswitch part.
giuliano

On Thursday 16 August 2012 17:10:33 Nitin Tomer wrote:
</pre>
                  <blockquote type="cite">
                    <pre wrap="">Hi,



I am working on a Contact Center solution. It will support mail,
chat
and call queries.

The requirements are:

1. An end-customer calls, the call is handled by FreeSWITCH Auto
Attendant. 2. Customer is presented with a menu and makes
selection.
His call is put on hold and an entry is made in my system's
database
for incoming queries. 3. These queries are shown to agents
handling
calls.
4. And agent clicks on a query, he is shown an extension where
call is parked. He dials that and is connected to the customer.

5. He talks to the customer and resolve his queries.

Please guide me on how can do it. The application will be
written in
Java.

I am an experienced programmers in Java/J2EE; but doesn't have
much
knowledge of VoIP/FreeSWITCH. I've configured FreeSWITCH on
Ubuntu
12.04; and have installed X-Lite Softphones on two Windows
machines.
I configured these phones to work with FreeSWITCH and they are
working fine.



I think that I'd have to use Valet Parking to park customer's
call on
an
extension, then pass that extension to agent who will dial it
and will be connected to the customer.



Please tell me whether this approach will work? And how should I
go
about it.



All help would be much appreciated.



Regards



Nitin
</pre>
                  </blockquote>
                  <pre wrap="">__________________________________________________________________
______ _
Professional FreeSWITCH Consulting Services:
<a class="moz-txt-link-abbreviated" href="mailto:consulting@freeswitch.org">consulting@freeswitch.org</a>
<a class="moz-txt-link-freetext" href="http://www.freeswitchsolutions.com">http://www.freeswitchsolutions.com</a>

FreeSWITCH-powered IP PBX: The CudaTel Communication Server
<a class="moz-txt-link-freetext" href="http://www.cudatel.com">http://www.cudatel.com</a>

Official FreeSWITCH Sites
<a class="moz-txt-link-freetext" href="http://www.freeswitch.org">http://www.freeswitch.org</a>
<a class="moz-txt-link-freetext" href="http://wiki.freeswitch.org">http://wiki.freeswitch.org</a>
<a class="moz-txt-link-freetext" href="http://www.cluecon.com">http://www.cluecon.com</a>

FreeSWITCH-users mailing list
<a class="moz-txt-link-abbreviated" href="mailto:FreeSWITCH-users@lists.freeswitch.org">FreeSWITCH-users@lists.freeswitch.org</a>
<a class="moz-txt-link-freetext" href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a>
UNSUBSCRIBE:<a class="moz-txt-link-freetext" href="http://lists.freeswitch.org/mailman/options/freeswitch">http://lists.freeswitch.org/mailman/options/freeswitch</a>
-users <a class="moz-txt-link-freetext" href="http://www.freeswitch.org">http://www.freeswitch.org</a>
</pre>
                </blockquote>
              </blockquote>
              <pre wrap="">______________________________________________________________________
___ Professional FreeSWITCH Consulting Services:
<a class="moz-txt-link-abbreviated" href="mailto:consulting@freeswitch.org">consulting@freeswitch.org</a>
<a class="moz-txt-link-freetext" href="http://www.freeswitchsolutions.com">http://www.freeswitchsolutions.com</a>

FreeSWITCH-powered IP PBX: The CudaTel Communication Server
<a class="moz-txt-link-freetext" href="http://www.cudatel.com">http://www.cudatel.com</a>

Official FreeSWITCH Sites
<a class="moz-txt-link-freetext" href="http://www.freeswitch.org">http://www.freeswitch.org</a>
<a class="moz-txt-link-freetext" href="http://wiki.freeswitch.org">http://wiki.freeswitch.org</a>
<a class="moz-txt-link-freetext" href="http://www.cluecon.com">http://www.cluecon.com</a>

FreeSWITCH-users mailing list
<a class="moz-txt-link-abbreviated" href="mailto:FreeSWITCH-users@lists.freeswitch.org">FreeSWITCH-users@lists.freeswitch.org</a>
<a class="moz-txt-link-freetext" href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a>
UNSUBSCRIBE:<a class="moz-txt-link-freetext" href="http://lists.freeswitch.org/mailman/options/freeswitch-use">http://lists.freeswitch.org/mailman/options/freeswitch-use</a>
rs
<a class="moz-txt-link-freetext" href="http://www.freeswitch.org">http://www.freeswitch.org</a>
</pre>
            </blockquote>
          </blockquote>
        </blockquote>
        <pre wrap="">_________________________________________________________________________
Professional FreeSWITCH Consulting Services:
<a class="moz-txt-link-abbreviated" href="mailto:consulting@freeswitch.org">consulting@freeswitch.org</a>
<a class="moz-txt-link-freetext" href="http://www.freeswitchsolutions.com">http://www.freeswitchsolutions.com</a>

FreeSWITCH-powered IP PBX: The CudaTel Communication Server
<a class="moz-txt-link-freetext" href="http://www.cudatel.com">http://www.cudatel.com</a>

Official FreeSWITCH Sites
<a class="moz-txt-link-freetext" href="http://www.freeswitch.org">http://www.freeswitch.org</a>
<a class="moz-txt-link-freetext" href="http://wiki.freeswitch.org">http://wiki.freeswitch.org</a>
<a class="moz-txt-link-freetext" href="http://www.cluecon.com">http://www.cluecon.com</a>

FreeSWITCH-users mailing list
<a class="moz-txt-link-abbreviated" href="mailto:FreeSWITCH-users@lists.freeswitch.org">FreeSWITCH-users@lists.freeswitch.org</a>
<a class="moz-txt-link-freetext" href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a>
UNSUBSCRIBE:<a class="moz-txt-link-freetext" href="http://lists.freeswitch.org/mailman/options/freeswitch-users">http://lists.freeswitch.org/mailman/options/freeswitch-users</a>
<a class="moz-txt-link-freetext" href="http://www.freeswitch.org">http://www.freeswitch.org</a>
</pre>
      </blockquote>
      <pre wrap="">


</pre>
    </blockquote>
    <br>
    <br>
    <div class="moz-signature">-- <br>
      Atentamente,
      <br>
      <b>Dario Garc&iacute;a</b>
      <br>
      Consultor.
      <br>
      <br>
      CCCT, Nivel C2, Sector Yarey, Mz, <br>
      Ofc. MZ03a. <br>
      Caracas-Venezuela.
      <br>
      Tel&eacute;fono: +58 212 9081842
      <br>
      Cel: +58 412 2221515
      <br>
      <a class="moz-txt-link-abbreviated" href="mailto:dgarcia@anew.com.ve">dgarcia@anew.com.ve</a>
      <br>
      <a class="moz-txt-link-freetext" href="http://www.anew.com.ve">http://www.anew.com.ve</a></div>
  </body>
</html>