[Freeswitch-users] mod_fifo && limit usage

Борисов, Дмитрий / Dmitriy Borisov bordmi at rarus.ru
Tue Feb 7 13:28:11 MSK 2017


Hi, All!

I have a problem with limiting number of calls to fifo consumer. I have
next dialplan to apply limits:

 <extension name="call-limit" continue="true">
     <condition field="${caller_id_number}" expression="^(\d{3})$">
         <action application="set" data="auto_hunt=true"/>
         <action application="limit" data="hash 192.168.1.44-lines $1 1"/>
      </condition>
  </extension>

 <extension name="call-limit" continue="true">
     <condition field="destination_number" expression="^(\d{3})$">
         <action application="set" data="auto_hunt=true"/>
         <action application="limit" data="hash 192.168.1.44-lines $1 1"/>
      </condition>
  </extension>

  <extension name="limit_exceeded">
      <condition field="destination_number" expression="^limit_exceeded$">
          <action application="hangup" data="USER_BUSY"/>
      </condition>
  </extension>

and next dialplan to register in fifo queue:

 <extension name="Agent Login">
      <condition field="destination_number" expression="^551$">
          <action application="answer"/>
          <action application="set" data="result=${fifo_member(add
operators
{fifo_member_wait=nowait,fifo_consumer_exit_key=none}loopback/${user_name}
1 10)}"/>
          <action application="log" data="INFO Add FIFO agent result:
${result}"/>
          <action application="log" data="INFO User Login:${user_name}"/>
          <action application="sleep" data="1000"/>
          <action application="hangup"/>
      </condition>
  </extension>

In this situation limit is zeroed when loopback channel is hangup (after
successful bridge). I trying next variant:

 <extension name="Agent Login">
      <condition field="destination_number" expression="^551$">
          <action application="answer"/>
          <action application="set" data="result=${fifo_member(add
operators
{fifo_member_wait=nowait,fifo_consumer_exit_key=none}user/${user_name} 1
10)}"/>
          <action application="log" data="INFO Add FIFO agent result:
${result}"/>
          <action application="log" data="INFO User Login:${user_name}"/>
          <action application="sleep" data="1000"/>
          <action application="hangup"/>
      </condition>
  </extension>

But in this variant limit is not checked and if operator make a outbound
call, he received incoming call when talking.

How can I limit number of calls on fifo operator line?
-- 
--
С уважением,
Борисов Дмитрий
Отдел облачных технологий 1С-Рарус
Тел. +7 (495) 231-20-02 доб.: 15-94
--
with best regards,
Dmitriy Borisov
1C-Rarus Cloud Services
tel.: +7 (495) 231-20-02 add.: 15-94
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20170207/2767535e/attachment.html 


Join us at ClueCon 2016 Aug 8-12, 2016
More information about the FreeSWITCH-users mailing list