Команда AddQueueMember()


Назначение:

Динамическое добавление интерфейса для обработки очереди вызовов

Описание:

AddQueueMember(queuename[|interface[|penalty]]): (в версиях 1.0)
AddQueueMember(queuename[|interface[|penalty[|options]]]): (в версиях 1.2)
AddQueueMember(queuename[|interface[|penalty[|options[|membername]]]]): (в версиях 1.4)
AddQueueMember(queuename[[,interface[[,penalty[[,options[[,membername[[,stateinterface]]]]])): (в версиях 1.6+)

Команда динамически добавляет интерфейс в существующую очередь вызовов, для обработки поступающих в нее вызовов (интерфейс как бы регистрируется в очереди вызовов, так же как агент, с использованием команды AgentCallbackLogin).


Аргументы


  • queuename - имя очереди вызовов, в которую необходимо добавить интерфейс.
  • interface - Название интерфейса для добавления в очередь, если не указано, используется текущий интерфейс.
  • penalty - Целое число большее или равное нулю, доступные участники, обрабатывающие очередь, с меньшим значением пенальти получают вызовы в первую очередь.
  • options: (версии 1.2+)
    • j - Если заданный интерфейс уже обрабатывает поступающие вызовы данной очереди и существует команда с приоритетом n+101, тогда с нее продолжиться выполнение команд плана набора. Иначе, команда выйдет с кодом ошибки.
    • В версии 1.6+ нет значений для поля "options", т.к. параметр "j" был удален, но, если необходимо указать остальные параметры, то этот аргумент должен быть указан как пустой параметр: ,,
  • membername - имя для участника обработки очереди, под которым он будет добавлен (версии 1.4+).
  • stateinterface - альтернативный интерфейс, который будет использоваться для определения состояния участника обработки очереди (версии 1.6+).

arrowЗамечание: Функция AddQueueMember не вносит никаких записей в queue_log. Для решения этой задачи, обратите внимание на эту ссылку: http://lists.digium.com/pipermail/asterisk-dev/2005-February/009615.html. Более полное решение, протестированное с анализатором лога QueueMetrics, можно найти тут: http://www.oinko.net/astrecipes/index.php?n=100.

Коды возврата:

При возникновении ошибки возвращает -1.

По завершению выполнения, команда также установит переменную AQMSTATUS в одно из значений:
  • ADDED
  • MEMBERALREADY
  • NOSUCHQUEUE


Пример:

AddQueueMember(techsupport|SIP/3000)

Используя вариант этой команды: AddQueueMember(), вы добавите интерфейс, который совершает вызов, в список участников, которые обрабатывают очередь.
- это имя очереди вызовов, описанной в файле queues.conf


Ссылки по теме: