Страница 1 из 2

Настройка callback с указанного DID

Добавлено: 12 апр 2013, 06:19
der_win
Имею несколько номеров по sip.
Elastix 2.4

ТЗ такое: на каждом номере есть callback, нужно чтобы каждый калбэк с каждого номера отрабатывал с указанного DID. Т.е. если позвонили на 28-xx-yy то калбэк перезвонить должен с номера 28-xx-yy, аналогично для других номеров.
По умолчанию звонок уходит с канала Local. И получается что callback всегда с одного номера.

Подскажите варианты как можно сделать, желательно через FreePBX (не принципиально, но желательно...)

Re: Настройка callback с указанного DID

Добавлено: 12 апр 2013, 08:50
zzuz
Используйте переменную FROM_DID в кастомном диаплане (файлы custom). Добавляете её , как префикс к набираемому номеру и создаете маршруты в исходящей маршрутизации с указанием нужного транка, отрезая этот самый префикс и всё, вызов пойдет через нужный , указанный Вами транк. (веб-интерфейс).

Re: Настройка callback с указанного DID

Добавлено: 12 апр 2013, 09:40
der_win
callback раздел в веб интерфейсе FreePBX не используется?
А как мне в ivr привязать, например доб.номер "9" к калбэку? Вообще, как мне выйти кастомный диалплан? (опять же через веб...)

Re: Настройка callback с указанного DID

Добавлено: 12 апр 2013, 10:32
zzuz
Для IVR создаете направление Callback и устанавливаете его на цифру 9. кастомные файлы в /etc/asterisk/extensions_custom.conf через веб недоступны.

Re: Настройка callback с указанного DID

Добавлено: 12 апр 2013, 10:37
der_win
> кастомные файлы в /etc/asterisk/extensions_custom.conf через веб недоступны.
да это не проблема вовсе.....
Итак.
Я устанавливаю на 9тку стандартный калбэк. Он выполняет скрипт:
/var/www/html/admin/modules/callback/bin/callback
Это скрипт php!
я понял что вы мне посоветовали, буду чрезмерно благодарен если подскажете как можно модицифировать скрипт, или хотя бы указали место, откуда он вызывается (с передачей параметров)

Re: Настройка callback с указанного DID

Добавлено: 12 апр 2013, 10:42
zzuz
Скрипт модифицировать не нужно. Нужно прочитать внимательно сообщение после вашего вопроса. Если ответ непонятен , то прочитать еще раз. Если после повторного прочтения будет непонятно , то прочитать еще. Если после третьего прочтения - непонятно , то прочитать еще раз . Если после четвертого прочтения непонятно , то прочитать еще раз. И так до полного просветления.

Re: Настройка callback с указанного DID

Добавлено: 12 апр 2013, 10:44
der_win
простите мою невнимательность ) виноват

Re: Настройка callback с указанного DID

Добавлено: 12 апр 2013, 10:58
zzuz
По простому Вам лучше добавить в extensions_additional.conf

Код: Выделить всё

exten => <номер коллбека>,1,Set(CALL=${FROM_DID}${CALLERID(number)}) 
; Где <номер коллбека> выяснется из команды asterisk -rx 'dialplan show callback'

далее в исходящей маршрутизации должен быть маршрут

Код: Выделить всё

FROM_DID|X.
- где FROM_DID - номер DID из входящей маршрутизации.

Re: Настройка callback с указанного DID

Добавлено: 12 апр 2013, 11:05
der_win
двигаюсь дальше:
_additional.conf

Код: Выделить всё

[callback]
include => callback-custom
exten => 1,1,Set(CALL=${CALLERID(number)})
exten => 1,n,Set(DESTINATION=ivr-5.s.1)
exten => 1,n,Set(SLEEP=1)
exten => 1,n,System(/var/lib/asterisk/bin/callback ${CALL} ${DESTINATION} ${SLEEP} &)
нам же нужно модифицировать CALL? напрямую мы не можем его переделать, он перезапишется по понятным причинам.
Ну а если назначать CALL в кастоме, то переменная переназначится уже в конктексте:
CALL=${CALLERID(number)}
Вижу только 1 вариант - полностью уносить в кастом весь блок. Но тогда вся работа с калбэком это ручное редактирование..... вообще не торт....

Re: Настройка callback с указанного DID

Добавлено: 12 апр 2013, 11:43
zzuz
файл перепутал. extensions_override_freepbx.conf