RemoveQueueMember And Realtime Queues

Home » Asterisk Users » RemoveQueueMember And Realtime Queues
Asterisk Users 1 Comment

Hello,

using asterisk 1.8.11.1
using realtime Queues

When trying to remove a queue member, I get the following :

— Executing [122@from-TESTCORP:2]
RemoveQueueMember(“SIP/testcorp5-0000000c”, “testcorpq1,SIP/testcorp7”)
in new stack WARNING[18788]: app_queue.c:5653 rqm_exec: Unable to remove interface from queue ‘testcorpq1’: ‘SIP/testcorp7’ is not a dynamic member

How can one remove a queue member when using realtime queues ?

Extra question : adding a queue member to a queue, will AddQueueMember work ?

— Executing [122@from-TESTCORP:5]
AddQueueMember(“SIP/testcorp5-0000000c”, “testcorpq1,SIP/testcorp7”) in new stack WARNING[18788]: app_queue.c:5708 aqm_exec: Unable to add interface
‘SIP/testcorp7’ to queue ‘testcorpq1’: Already there
— Executing [122@from-TESTCORP:6] NoOp(“SIP/testcorp5-0000000c”,
“AQMSTATUS = MEMBERALREADY”) in new stack

Kind regards, Jonas.

One thought on - RemoveQueueMember And Realtime Queues

  • The answer is right there: you can’t remove the member because it’s not a dynamic member. A dynamic member is one that was added with AddQueueMember. If you want to remove a static member (that is, one that was defined in queues.conf, or in your realtime database) then you have to remove it by removing it from that configuration. RemoveQueueMember can’t do it.

    You can verify that a member is dynamic by observing “(dynamic)” next to the agent’s name in “queue show”.

    Perhaps you can set persistentmembers=yes in queues.conf [general]
    section (or your realtime database, if you like), and then dynamic members will persist across asterisk restarts. Then get rid of your static members. Then implement extensions that agents can call to log in and out, that call AddQueueMember and RemoveQueueMember.