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