function 'GROUP_COUNT'
Функция диалплана Asterisk GROUP_COUNT.
Считать кол-во вызовов в заданной группе.
Описание
Подсчитывает кол-во вызовов в заданной группе или, если группа не назначена, в текущей
синтаксис
GROUP_COUNT([groupname][@category])
аргументы
- groupname - имя группы.
- category - название категории.
пример
Ограничение количества одновременных вызовов по набранному номеру (call limit).
Контекст
- Набирается номер 810ХХХХХХХ, в консоль выводится сообщение: набираем 810ХХХХХХХ
- функция GROUP() назначает вызовы в группу long
- В консоль выводится сообщение: кол-во одновременных вызовов - ${GROUP_COUNT(long)}, где ${GROUP_COUNT(long) = порядковый номер вызова.
- Проверяется условие, если количество одновременных вызовов больше 1, вызов направляется в екстеншен over и разъединяется с выводом в консоль:
лимит превышен на - […] вызова.
- Если вызов первый, номер набирается через SIP транк provider.
exten => _810.,1,Verbose(*** набираем - ${EXTEN} ***) same => n,Set(GROUP()=long) same => n,Verbose(*** кол-во одновременных вызовов - ${GROUP_COUNT(long)} ***) same => n,GotoIf($[${GROUP_COUNT(long)} > 1]?over) same => n,Dial(PJSIP/${EXTEN}@siptrunk,,) same => n(over),Verbose(*** лимит превышен на - ${MATH(${GROUP_COUNT(long)}-1)} вызова ***) same => n,Set(DIALSTATUS=CHANUNAVAIL)
см. также