AF
Asterisk Forum
обсуждения телефонии, VoIP и IP-PBX
12разделов
5 423тем
34 385сообщений
← К списку тем

Расновмерное распределение звонков по сип-аккаунтам

Asterisk IP PBX 9 сообщений -
#1

Есть например 10 сип-аккаунтов, с разным лимитом от 10 до 20 одновременных звонков на каждый.
Есть сип-аккаунт источник звонков. Задача распределить равномерно звонки от него по этим 10 сип-аккаунтам.
Сейчас реализвано через таблицу в mysql и перебор по ней. Т.е каждый звонок создает sql запрос и выбирается следующее сип-направление для него.
Вообщем отвратительно реализованно! MySQL здесь видится вообще лишней составляющей.


Есть более простое решение?
Например через группы реализовать можно?
#2

Осмелюсь спросить - а как вы собираетесь реализовывать "разные ограничения в 10 или 20 звонков"? Так что на вскидку лучше чем AGI-скрипт ничего нет (при условии правильно реализованной логики).
_________________
P4 3.0 + 1Gb CentOS 5.8 Aster 1.8.16
Не люблю gui-сборки: натуральный продукт вкуснее.
И еще: я ПРОФИ так как НЕ ЛЕНЮСЬ читать литературу.
#3

Ну сейчас просто лимиты на сип-аккаунты стоят.

А нельзя группу создать, запихнуть в нее все сип-аккаунты и сделать просто Dial в эту группу?
Для каналов DAHDI же это возможно....
#4

Код:
Ну сейчас просто лимиты на сип-аккаунты стоят.


Ну дык при чем тут "равномерность" и искусственные ограничения. Энто вообще разные вещи

_________________
P4 3.0 + 1Gb CentOS 5.8 Aster 1.8.16
Не люблю gui-сборки: натуральный продукт вкуснее.
И еще: я ПРОФИ так как НЕ ЛЕНЮСЬ читать литературу.
#5

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

да, хорошо будет переписать логику через AGI, исключим запросы mysql
а через группы никак?
#6

Слушайте. Можно сделать счетчик через DB и наращивать его при каждом следующем вызове с проверкой условий. При граничных условия - сброс счетчика в исходное состояния.
_________________
P4 3.0 + 1Gb CentOS 5.8 Aster 1.8.16
Не люблю gui-сборки: натуральный продукт вкуснее.
И еще: я ПРОФИ так как НЕ ЛЕНЮСЬ читать литературу.
#7

db = база данных?
Ну так и сделанно, только через mysql

Смущает лишняя нагрузка на mysql, через agi будет шустрее наверно?! Не грузит mysql - это уже хорошо...
Переделать такой же счетчик через AGI не проблема, едиственное вызовов много...
Ну например 50-100 вызовов этого AGI скрипта в секунду нормально будет? Сейчас тоже работает через mysql.
Сервер не загрузим под завязку?!
#8

Не нравится MySQL -- используйте AstDB
#9

у меня крутится на мускуле, который вызывает agi скрипт, куда более тяжелые запросы, и не по одному в базу, плюс еще различные условия проверяются.
и на средненькой тачки по 100 одновременных тянет, правда CPS не высокий, порядка 5 звонков в сек.