Задать вопрос
Ответы пользователя по тегу Asterisk
  • Железо для своего сервера?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Asterisk совсем не требователен к ресурсам, его запускают на роутерах, NAS'ax, малинах и т.д. Нагрузка на CPU несколько возрастает, если соединяемые каналы используют разные кодеки или при кодировании/воспроизведении mp3. Но любой процессор 10-летней давности справится с этим без проблем.
    Памяти должно хватить, если на машине будет работать только Asterisk. У меня на ~100 пользователей сейчас съедает ~3Gb оперативки.
    Ответ написан
  • Можно ли держать звонящего в очереди до тех пор пока ему не ответят?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Чтобы убрать звонок из очереди, оператор должен его принять. Пока никто не принял звонок, он будет висеть в очереди до таймаута.
    Ответ написан
    Комментировать
  • Как звонить через разные транки?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Добавить в Dial опцию 'g' и анализировать DIALSTATUS.
    Ответ написан
    Комментировать
  • Как получить информацию о входящем звонке Asterisk ARI?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Что такое канал и мост?
    Канал - это соединение между Asterisk и конечной точкой (телефоном). Мост - внутреннее соединение между несколькими каналами в Asterisk.
    Например есть статья, но по всей видимости, она устарела
    В этой статье используют AMI, а не ARI.

    По ARI простейший разговор выглядит так:
    spoiler
    ChannelCreated - создан канал с вызывающим абонентом
    DeviceStateChanged, INUSE - вызывающее устройство сменило статус
    ChannelVarset, SIPURI - установка значения переменной
    ChannelVarset, SIPDOMAIN
    ChannelVarset, SIPCALLID
    ChannelStateChange, Ring - изменение статуса канала
    ChannelDialplan, Dial - сработала команда Dial в диалплане
    ChannelVarset, DIALSTATUS
    ChannelVarset, DIALEDPEERNUMBER
    ChannelVarset, DIALEDPEERNAME
    ChannelVarset, ANSWEREDTIME
    ChannelVarset, DIALEDTIME
    DeviceStateChanged, RINGING - звонок у вызываемого абонента
    ChannelCreated - создан канал до вызываемого абонента
    ChannelVarset, SIPCALLID
    ChannelVarset, DIALEDPEERNUMBER
    ChannelDialplan, AppDial - команда Dial в канале вызываемого абонента
    ChannelConnectedLine - изменилась информация о каналах
    Dial - производится вызов абонента
    ChannelConnectedLine
    ChannelStateChange, Ringing - изменение статуса канала
    Dial, RINGING - звонок на вызываемой линии
    DeviceStateChanged, BUSY - поднята трубка у вызываемого абонента
    ChannelStateChange, Up - изменение статуса канала вызываемого абонента
    ChannelVarset, DIALSTATUS
    ChannelVarset, DIALEDPEERNAME
    ChannelVarset, DIALEDPEERNUMBER
    Dial, ANSWER - ответ на вызываемой линии
    ChannelStateChange, Up - изменение статуса канала вызывающего абонента
    BridgeCreated - создан мост
    ChannelDialplan, AppDial - команда Dial в канале вызываемого абонента
    DeviceStateChanged, INUSE - у вызывающего абонента
    ChannelEnteredBridge - вызываемый канал подключился к мосту
    ChannelEnteredBridge - вызывающий канал подключился к мосту
    ChannelVarset, BRIDGEPEER
    ChannelVarset, BRIDGEPVTCALLID
    ChannelVarset, BRIDGEPEER
    ChannelVarset, BRIDGEPVTCALLID
    ChannelVarset, RTPAUDIOQOS
    ChannelVarset, RTPAUDIOQOSBRIDGED
    ChannelVarset, RTPAUDIOQOSJITTER
    ChannelVarset, RTPAUDIOQOSJITTERBRIDGED
    ChannelVarset, RTPAUDIOQOSLOSS
    ChannelVarset, RTPAUDIOQOSLOSSBRIDGED
    ChannelVarset, RTPAUDIOQOSRTT
    ChannelVarset, RTPAUDIOQOSRTTBRIDGED
    ChannelVarset, RTPAUDIOQOSBRIDGED
    ChannelVarset, RTPAUDIOQOS
    ChannelVarset, RTPAUDIOQOSBRIDGED
    ChannelVarset, RTPAUDIOQOSJITTER
    ChannelVarset, RTPAUDIOQOSJITTERBRIDGED
    ChannelVarset, RTPAUDIOQOSLOSS
    ChannelVarset, RTPAUDIOQOSLOSSBRIDGED
    ChannelVarset, RTPAUDIOQOSRTT
    ChannelVarset, RTPAUDIOQOSRTTBRIDGED
    ChannelVarset, RTPTEXTQOS
    DeviceStateChanged, NOT_INUSE - вызываемый абонент положил трубку
    ChannelHangupRequest - завершение канала вызывающего абонента
    ChannelVarset, BRIDGEPEER
    ChannelVarset, BRIDGEPVTCALLID
    ChannelVarset, BRIDGEPEER
    ChannelVarset, BRIDGEPVTCALLID
    ChannelLeftBridge - вызывающий канал вышел из моста
    ChannelLeftBridge - вызываемый канал вышел из моста
    ChannelVarset, ANSWEREDTIME
    ChannelVarset, DIALEDTIME
    ChannelVarset, DIALSTATUS
    ChannelHangupRequest - завершение канала вызывающего абонента
    ChannelVarset, RTPAUDIOQOS
    ChannelVarset, RTPAUDIOQOSJITTER
    ChannelVarset, RTPAUDIOQOSLOSS
    ChannelVarset, RTPAUDIOQOSRTT
    ChannelDestroyed - вызывающий канал уничтожен
    ChannelDestroyed - вызываемый канал уничтожен
    DeviceStateChanged, NOT_INUSE - вызывающий абонент положил трубку
    Ответ написан
    3 комментария
  • Почему в asterisk частично не работает MYSQL из плана набора?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    UNION - одно из ключевых слов MySQL. Для использования в качестве имени таблицы или поля его надо брать в обратные апострофы (`).
    Ответ написан
    1 комментарий
  • Как можно подключиться в астериск через odbc к сторонней mysql?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Астериску разницы никакой нет. А вот MySQL может быть просто не настроен принимать соединения с внешних адресов.
    Ответ написан
  • Переадресация на динамические внешние номера?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Каждая переадресация внешнего звонка на внешний телефон будет занимать два канала.
    И неважно, будут это физические пары, каналы в потоке E1 или в IP-транке.
    Ответ написан
    3 комментария
  • Почему на Asterisk одно правило с разными телефонами вызывает различное поведение?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Во-первых, логи не соответствуют приведённому диалплану.
    Во-вторых, читайте внимательно логи, по ним понятно, что происходит
    Hint:
    Got SIP response 302 "Moved Temporarily" back from 192.168.199.122:5060
    Ответ написан
  • Как сделать выборку с asterisk на Laravel?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Каких данных и откуда? Asterisk, сам по себе, ничего, кроме минимального лога не сохраняет. Запись CDR или CEL надо настраивать самостоятельно.
    Ответ написан
    Комментировать
  • Из за чего обычно возникает ошибка 603?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Последний раз ловил такую ошибку на E1-канале, когда перед вызовом не был указан исходящий номер CALLERID(num).
    Ответ написан
  • Как создать внутреннюю связь на базе IP телефонов Avaya 1608-i?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    ЕМНИП, сии телефоны умеют работать только со станциями Avaya.
    Ответ написан
    Комментировать
  • Есть ли способ получить номерзвонящего до завершения звонка?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    CALLERID(num) в диалплане
    Ответ написан
    1 комментарий
  • Asterisk. Перевод звонка на группы. Как проще реализовать?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    [globals]
    G100=SIP/101&SIP/102&SIP/103&SIP/104
    ...
    exten => _XXX,1,Dial(SIP/${EXTEN}, 15, ...)
    same => n,Dial(SIP/G${EXTEN:1:2}0, ...)
    Ответ написан
    6 комментариев
  • Voip нет голоса в одну сторону, как настроить sip?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Как правило, такая проблема - это либо криво настроенная маршрутизация, либо где-то на маршруте стоит nat.
    В результате SIP-трафик ходит нормально, а RTP теряется.
    Ответ написан
    Комментировать
  • Как сделать звонок сразу на несколько номеров в Asterisk?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Dial(SIP/101&SIP/102&SIP/103)
    Ответ написан
    Комментировать
  • Можно ли из роутера сделать sip шлюз для аналогового телефона?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Не имеет смысла. У роутера нет FXS/FXO-порта, а его самодельная реализация обойдётся дороже, чем приобретение стандартного FXS/FXO-шлюза.
    Ответ написан
    Комментировать
  • Как сделать приоритет звонка в очереди?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Queue(queuename[,options[,URL[,announceoverride[,timeout[,AGI[,macro[,gosub[,rule[,position]]]]]]]]])

    Последний параметр - позиция при помещении в очередь.
    Ответ написан
    1 комментарий
  • Как посчитать количество одновременных разговоров для отчета?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Делал я когда-то такой анализ. Понадобится время начала и время завершения разговора.
    Делаем таблицу (я пользовался LibreOffice), первая колонка - время, вторая - +1 для начала разговора, -1 для завершения. Для удобства анализа добавляем время с пятиминутными интервалами и 0 во второй колонке. Сортируем всё по времени.
    В третьей колонке делаем накопительную сумму по второй колонке - это и будет количество одновременных разговоров, которые были с данного момента времени.
    Потом уже по этим данным можно составлять всякие сводные таблицы.
    На примере:
    Разговор 1: 10:02:17 - 3:10
    Разговор 2: 10:03:05 - 1:18
    Разговор 3: 10:07:34 - 2:47
    Разговор 4: 10:08:19 - 2:05

    Записываем таблицу:
    10:02:17; +1
    10:05:17; -1
    10:03:05; +1
    10:04:23; -1
    10:07:34; +1
    10:10:21; -1
    10:08:19; +1
    10:10:24; -1
    10:00:00; 0
    10:05:00; 0
    10:10:00; 0
    10:15:00; 0

    Сортируем, считаем промежуточные суммы и длительность интервалов в секундах:
    10:00:00; 0; 0; 137
    10:02:17; +1; 1; 48
    10:03:05; +1; 2; 78
    10:04:23; -1; 1; 37
    10:05:00; 0; 1; 17
    10:05:17; -1; 0; 137
    10:07:34; +1; 1; 45
    10:08:19; +1; 2; 101
    10:10:00; 0; 2; 21
    10:10:21; -1; 1; 3
    10:10:24; -1; 0; 276
    10:15:00; 0; 0; 0

    Получаем:
    10:00 до 10:05: 1 разговор - 85 секунд, 2 разговора - 78 секунд
    10:05 до 10:10: 1 разговор - 62 секунды, 2 разговора - 101 секунда
    10:10 до 10:15: 1 разговор - 3 секунды, 2 разговора - 21 секунда
    Ответ написан
    3 комментария
  • Какие IP-телефоны использовать в гостинице?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Может лучше не WiFi, а DECT?
    Например, к базе телефона KX-TGP600 можно подключить до 7 стационарных DECT-телефонов KX-TPA65
    Ответ написан
    3 комментария
  • Звонки из WebCRM?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Стандартное решение - обратный вызов. Можно организовать через call-файлы, AMI Originate или ARI channels.
    Как правило, сначала идёт вызов сотрудника, а когда он поднимает трубку, то начинается набор клиента.
    Ответ написан
    Комментировать