{"id":12195,"date":"2022-03-20T17:09:18","date_gmt":"2022-03-20T12:09:18","guid":{"rendered":"https:\/\/alexeyka.zantsev.com\/?p=12195"},"modified":"2022-06-04T10:09:20","modified_gmt":"2022-06-04T05:09:20","slug":"asterisk-removing-all-queue-dynamic-members","status":"publish","type":"post","link":"https:\/\/alexeyka.zantsev.com\/?p=12195","title":{"rendered":"Asterisk: removing all queue dynamic members"},"content":{"rendered":"\n<p>Users add themselves as queue members by dialing some short number (<kbd>AddQueueMember<\/kbd> dialplan app is used). The queue may contain several dynamic members.<\/p>\n\n\n\n<p>The task is to remove all queue members by dialing some number, no matter how much members are in this queue. Queue name is &#8216;superQueue&#8217; (example for AEL, Asterisk 13):<\/p>\n\n\n\n<pre class=\"wp-block-preformatted has-vivid-red-color has-text-color\">\/\/ remove all dynamic queue members\n0000 =>\n{\n    NoOp(superQueue member  list: ${QUEUE_MEMBER_LIST(superQueue)});\n\n    \/\/ count members of a queue\n    count=${QUEUE_MEMBER(superQueue,count)};\n\n    \/\/ and remove all, one by one\n    while (${count} >= 1) {\n        Set(QMLsuperQueue=${QUEUE_MEMBER_LIST(superQueue)});\n        Set(kicked=${CUT(QMLsuperQueue,\\,,1)});\n        Log(NOTICE, removing dynamic member: ${kicked});\n        RemoveQueueMember(superQueue,${kicked});\n        count=${count}-1;\n    }\n\n    Hangup();\n};<\/pre>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Users add themselves as queue members by dialing some short number (AddQueueMember dialplan app is used). The queue may contain several dynamic members. The task is to remove all queue members by dialing some number, no matter how much members are in this queue. Queue name is &#8216;superQueue&#8217; (example for AEL, Asterisk 13): \/\/ remove [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[157,43,142],"class_list":["post-12195","post","type-post","status-publish","format-standard","hentry","category-uncategorized","tag-ael","tag-asterisk","tag-queues"],"_links":{"self":[{"href":"https:\/\/alexeyka.zantsev.com\/index.php?rest_route=\/wp\/v2\/posts\/12195","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/alexeyka.zantsev.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/alexeyka.zantsev.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/alexeyka.zantsev.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/alexeyka.zantsev.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=12195"}],"version-history":[{"count":5,"href":"https:\/\/alexeyka.zantsev.com\/index.php?rest_route=\/wp\/v2\/posts\/12195\/revisions"}],"predecessor-version":[{"id":12290,"href":"https:\/\/alexeyka.zantsev.com\/index.php?rest_route=\/wp\/v2\/posts\/12195\/revisions\/12290"}],"wp:attachment":[{"href":"https:\/\/alexeyka.zantsev.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=12195"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/alexeyka.zantsev.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=12195"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/alexeyka.zantsev.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=12195"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}