← All posts tagged Asterisk

Где спросить — не знаю. В очередной раз понадеюсь, что мне тут помогут с астериском. Вопрос достаточно простой, но никак не ходящий решения у меня уже пару недель. Как ограничить количество входящих вызовов на один номер одним? call-limit=1 отключает такую интересную вещь, как перевод звонка, а этого нельзя допустить. Наткнулся на это, но не понял как оно работает voip-info.org Задача для использования этого функционала нужна в call-центр. Чтобы ОП не принимал на свою линию по 2 вызова одновременно. А то получается приходит 2 звонка, отвечает на один и пока разговаривает второй вызов отправляется на другого ОПа, у которого свободной оказывается тоже вторая линия, а по первой он разговаривает. Так вот кидает звонящего от ОПа к ОПу. А параллельно звонящий выходит из очереди и не слышит прекрасной музыки, а слушает длинные гудки в ожидании ответа.

Поставили простую задачу. Начал решать и не могу найти решения. Необходимо организовать callback. То есть позвонил я на номер 100, меня сразу же скинули и через 10 секунд перезвонили мне на номер. Это легко. Но дальше ситуация такая, что этого мало(!), надо потом этот вызов поместить в общую очередь, которая на номере 900 организована. Я подозреваю, что это можно организовать с помощью трёхсторонней связи, когда номер 100 перезвонит на номер А и на номер 900, как только произойдёт ответ с двух сторон, то он отключается от разговора и они остаются на "едине". То есть номер А попал в очередь на номере 900. Я хз как это организовать. Есть какие-либо готовые решения? Гугл молчит, но видимо я не так спрашиваю у него. Надеюсь на твою помощь, жуйк.

Каким способом можно организовать авторизацию в asterisk через radius? pam_radius.so не устраивает. Необходимо прикрутить asterisk к abilling. Интсрукция на их сайте результата не даёт.

Что-то asterisk перестал отрабатывать экстены из БД правильно. Макросы прописаны в файле, сами экстены в БД. И он временами не может их совместить. Уже не в первый раз глючит в этом плане. Даже хз что делать с этим.

Есть приинтереснейшая плюшка в астериске 1.6. Если в sip.conf прописать несколько sip номеров, которые у нас будут использоваться в качестве транков, то астерсик будет брать на любой входящий вздумавшийся ему номер. То есть, если у нас идут 2 строки подряд, в которых происходит регистрация sip номера на другом sip сервере: register=111:pass@server/111 register=222:pass@server/222, то при звноке на 222 скорее всего присвоится в консоли номер 111. Это никак не отражается на работе самого астериска, а просто сбивает с толку при попытках понять что происходит сейчас на сервере. Был у клиента сегодня, у него таким образом регистрируется 8 номеров. Всем входящим (которые я в консоли наблюдаю) присваивается первый по порядку номер. Вещь ни разу не опасная, но очень не приятная. Как ни странно, но вылечилось легко. Надо просто вставить по пустой строке в sip.conf между регистрируемыми номерами.

Что-то не попёрло. GoIP4 шлюз через месяц работы отказался звонить в asterisk. В чем проблема вообще не понятно. Звонить через asterisk в шлюз и дальше — можно, а наоборот уже нельзя. Сломалось. Где и что и как пока совсем не ясно.

Передо мной стала нетривиальная задача. С какой стороны подступиться даже не подозреваю. Есть два сервера asterisk. Один является sip сервером регистрации, другой sip клиентом. На том сервере, который "клиент" есть чуть больше 10 номеров клиентских. Так вот необходимо организовать регистрацию каждого номера на определенном порту "клиента". То есть, чтобы номер 123 давал свои координаты как ip:5060, а номер 345 — ip:5061. Есть опция в sip.conf:
register => 123:password@host:port/123
Но это значит зарегаться на определенном порту сервера регистрации ( это если по политикам безопасности или еще каким стандартный порт 5060 не может быть использован и назначается отличный от него). С "клиента" же все необходимые номера регистрируются с одного и того же порта, а нужно от этого избавиться.
Жуйк, надеюсь на твою компетентную помощь.

ыыы. офисный астериск полностью со всех сторон обслуживает скриптами на python. а я сегодня в продакшн загнал кусок на перле. пусть потом разбираются :D

Что-то часто я этот тег начинаю употреблять. Но астериск очень интересное поделие, со своими заморочками. Очень интересно и увлекательно :) Буду изучать его дальше и глубже.

Жуйк. Я уже не знаю как правильно организовать работу этого тупого AGI скрипта. Суть в чем: есть очень много разных телефонов, которые ни разу не идут по порядку, чтобы применить к ним обычные экстены. Написал регулярку, сунул в астериск, ни одина из версий астериска не смогла обработать регулярку с advanced вариантами. [выглядело примерно так ^950310(1212|1313|5555)$]. Подсказали использовать AGI. Так вот не получается с помощью этого AGI сделать возврат 1 или 0. Если выполняется все верно и проходит через условие регулярки, то print "SUCCESS\n", если нет, то print "FAILURE\n" (на voip-info.org так советуют) Так вот. Сам астериск если все хорошо, говорит, что скрипт completed, returned 0. А вот если все плохо, то вообще молчит. Подскажи как правильно это все сделать? Может можно какую-то переменную взять, присвоить значение и потом вернуть ее скриптом?