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

.call файлы и их использование в Asterisk с поставленным FreePBX

Asterisk GUI 8 сообщений -
#1

.call файлы и их использование в Asterisk с поставленным FreePBX


Я узнал о .call файлах и о том, что для них нужен pbx_spool.so. Но в modules.conf у себя я его не нашел, из чего делаю вывод что у меня эта система на данном этапе работать не будет. Еще - по обрывочным данным удалось немного узнать о синтаксисе .call файла и куда его кидать, но сомневаюсь насчет того, куда писать:
а) номер абонента (который мой бэкенд будет цапать с веб-страницы)
б) номер ринг-группы манагеров
Не знаю, какой писать context, что значит channel и только догадываюсь, что account и callerid есть одно и то же. В общем, под конец короткого дня у меня дикая каша в голове и чтоб хоть немного оправдать свое будущее безделье в течение следующих 3-4 часов я пишу сюда. Форумчане, огромное спасибо тому кто этот пост осилит и попытается помочь.

Хотя бы - ссылками на маны. eng/rus не имеет значения, читаю однаково хорошо. Лишь бы описано было внятно.

_________________
--------------------
... - города берет!


Последний раз редактировалось: FloeHetling (Ср Май 14, 2014 14:50)
#3

Цитата:
Я узнал о .call файлах и о том, что для них нужен pbx_spool.so. Но в modules.conf у себя я его не нашел


проверить собран ли модуль - /usr/lib(lib64)/asterisk/modules
проверить загружен ли модуль - cli> module show like pbx_spool.so
а modules.conf - для определения способа загрузки модулей, очередности и загрузка самих модулей

Решение:
1. Если платить:
- коммерческий модуль webcallback от FreePBX Distro.
2. Разбираться далее самому.

Если реализуете webcallback, как по мне лучше делать Originate из AMI интерфейса Asterisk.

Сылки для изучения:
https://wiki.asterisk.org/wiki/display/AST/Asterisk+Call+Files
http://voip.rus.net/tiki-index.php?page= ... o-dial+out
#4

Link @ Пт Май 09, 2014 01:29 писал(а):
Цитата:
Я узнал о .call файлах и о том, что для них нужен pbx_spool.so. Но в modules.conf у себя я его не нашел


проверить собран ли модуль - /usr/lib(lib64)/asterisk/modules
проверить загружен ли модуль - cli> module show like pbx_spool.so
а modules.conf - для определения способа загрузки модулей, очередности и загрузка самих модулей

Решение:
1. Если платить:
- коммерческий модуль webcallback от FreePBX Distro.
2. Разбираться далее самому.

Если реализуете webcallback, как по мне лучше делать Originate из AMI интерфейса Asterisk.

Сылки для изучения:
https://wiki.asterisk.org/wiki/display/AST/Asterisk+Call+Files
http://voip.rus.net/tiki-index.php?page= ... o-dial+out

И хоть я забив на форум нашел это практически сразу же - все равно огромное спасибо.
По крайней мере я не знал о том, что есть модуль webcallback. Деньги мне на него, возможно, дадут. Однако - хочу разобраться во всем самостоятельно, понять систему.
Originate прост, когда у тебя есть под рукой оболочка. Удобен для скриптов и cron. Но мне хочется все таки понять, как работают call файлы. На данный момент я разобрался практически во всем, кроме одного - что есть Channel (точнее - что он есть для системы, когда она читает этот файл), как его обозначают в подобных файлах (синтаксис-то), каким он будет если нужно соединить Ring Group 200 в FreePBX с нашим абонентом.

На данный момент предположительная структура файла такова:

Channel:
CallerID: 204 ;заменить имя и номер переменными - номер абонента. согласно системе воспримет даже 85551112233 если настроить паттерн
MaxRetries: 0 ;не нужно циклить звонок при неудаче. Пока.
WaitTime: 60 ;подождем минуту пока абонент не возьмет трубку
Context: from-internal ;контекст, включающий в себя субконтексты на миллион и один случай в FreePBX - собственно, обработчик вызова
Extension: 203 ;наш оператор. При успехе подставить ринг-группу
AlwaysDelete: No ;это для возможности реализации планировщика звонков
Archive: Yes ;для дебага будем складировать файлы в подпапку. Пока.

Все понятно. Кроме одного. Если не найду сам - очень надеюсь на указующий перст любого местного сиповода

_________________
--------------------
... - города берет!
#5

В Channel прописывается канал-источник.
Например, на вебформе вы просите ввести человека номер для обратного звонка, потом введеный номер пишите в Channel:SIP/вашпров/Введеныйномер
Тогда астер, сначала создать это канал, то есть позвонит через вашего SIP прова этому человеку, и когда тот поднимет трубку перекинет его в Context: from-internal, на Extension: 203.

Или, если для вашего примера написать такой кол-файл:
Код:
Channel: SIP/204
CallerID: 204 ;заменить имя и номер переменными - номер абонента. согласно системе воспримет даже 85551112233 если настроить паттерн
MaxRetries: 0 ;не нужно циклить звонок при неудаче. Пока.
WaitTime: 60 ;подождем минуту пока абонент не возьмет трубку
Context: from-internal ;контекст, включающий в себя субконтексты на миллион и один случай в FreePBX - собственно, обработчик вызова
Extension: 203 ;наш оператор. При успехе подставить ринг-группу
AlwaysDelete: No ;это для возможности реализации планировщика звонков
Archive: Yes ;для дебага будем складировать файлы в подпапку. Пока.


То сначала зазвонит ваш аппарат зарегистрированый на вашем астере под номер 204, после поднятия трубки на котором зазвонит ваш аппарат зарегистрированный под 203 номером, и когда тот поднимет трубку -- их соединят.
Вообще я думал, что это довольно очевидно описано по ссылкам данным выше.
#6

Схема работает, благодарю!
На самом деле все очевидно, это да. Но о том, что делает эта запись - не написано, о том, какой формат соблюдать - тоже. Примеры - есть, но опять же формат написания разный.

_________________
--------------------
... - города берет!
#7

Вообще-то все написано:

Channel: - The channel to use for the new call, in the form technology/resource as in the Dial application. This value is required.
#8

Цитата:
каким он будет если нужно соединить Ring Group 200 в FreePBX с нашим абонентом.


в вашем случаи это будет
Channel: Local/200@from-internal