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

Проблемы с парковкой вызова.

Добавлено: 06 фев 2012, 20:07
shumiloff
День добрый. При переезде с Asterisk 1.6 на 1.8 (FreeBSD) столкнулся с проблемой парковки вызовов. На 1.6 с теми же конфигами всё работало нормально.

Звонок из контекста office на сотовый (Dial c Tt), затем попытка парковки переводом на номер 100.

extensions.conf (контекст office):

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

...
;Parked
exten => _1XX,1,NoOp(CALLING: OFFICE->PARK ${STRFTIME(${EPOCH},,%Y.%m.%d-%H.%M.%S)}_${CALLERID(num)}_${EXTEN}_${CONTEXT}_${UNIQUEID}_${BLINDTRANSFER}_${TRANSFERERNAME})
exten => _1XX,n,Answer()
exten => _1XX,n,ParkedCall(${EXTEN},,Tt)
...
features.conf:

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

[general]
parkext => 100
parkpos => 101-120
context => parkedcalls
parkingtime => 180

findslot => next
transferdigittimeout => 3
xfersound = beep
xferfailsound = beeperr
pickupexten = *8
pickupsound = beep
pickupfailsound = beeperr
featuredigittimeout = 1000

[featuremap]
blindxfer => #
disconnect => *0
automon => *1
atxfer => *2
parkcall => #72
automixmon => *3
Dialplan:

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

ats10*CLI> dialplan show parkedcalls 
[ Context 'parkedcalls' created by 'features' ]
  '100' =>          1. Park()                                     [features]

-= 1 extension (1 priority) in 1 context. =-
При попытке перевода звонка у переводимого абонента слышу фразу "I am sorry, there is no call parked on that extension." При этом в логах вижу следующее: Channel SIP/имяканала tried to retrieve nonexistent parked call

Т.е. астериск считает, что я перевожу его уже на номер запаркованного вызова. Подскажите, что именно я делаю не так. Гуглил, но решения к сожалению, не нашёл. :(

Re: Проблемы с парковкой вызова.

Добавлено: 06 фев 2012, 20:17
ded
Судя по extensions.conf (контекст office) - у вас перепиленый самостоятельно диал-план, а не сконфигуренный из вэб интерфейса.
Какие внутренние номера у вас в офисе?

У вас по features show видно ли что то типа -

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

Call parking                                           
------------                                           
Parking extension   :      700                         
Parking context     :      parkedcalls                 
Parked call extensions:      701-750       
??

Re: Проблемы с парковкой вызова.

Добавлено: 06 фев 2012, 21:53
shumiloff
ded писал(а):Судя по extensions.conf (контекст office) - у вас перепиленый самостоятельно диал-план, а не сконфигуренный из вэб интерфейса.
Какие внутренние номера у вас в офисе?
Именно так. Веб интерфейса нет вообще, addons я не ставил. Есть два диапазона внутренних номеров - 1XXX и 7XX. Это обусловленно логикой. Один диапазон генерируется рядом скриптов для каждого человека в компании, номера из другого раздаются вручную, например, техподержке, они не привязаны к конкретной персоне. Так уж сложилось исторически. В связи с этим парковка была сдвинута на диапазон 101-120. 20-ти номеров вполне хватало.
ded писал(а):У вас по features show видно ли что то типа
Определённо. Но с поправкой на другой диапазон:

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

ats10*CLI> features show
Builtin Feature           Default Current
---------------           ------- -------
Pickup                    *8      *8     
Blind Transfer            #       #      
Attended Transfer                 *2     
One Touch Monitor                 *1     
Disconnect Call           *       *0     
Park Call                         #72    
One Touch MixMonitor              *3     

Dynamic Feature           Default Current
---------------           ------- -------
(none)

Feature Groups:
---------------
(none)

Call parking (Parking lot: default)
------------
Parking extension     :      100
Parking context       :      parkedcalls
Parked call extensions:      101-120
Parkingtime           :      180000 ms
MusicOnHold class     :      default
Enabled               :      Yes
Я так подозреваю, что моя проблема в пустой секции "Feature Groups"? Так как на старом астериске я вижу следующее:

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

Feature Groups:
---------------
===> Group: parcedcalls
Но если я добавляю в конфиг features.conf секцию

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

[parcedcalls]
parkpos=> 101-120
findslot=> next
По аналогии с конфигом на первом астериске, то при рестарте в логах я получаю следующее:

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

[Feb  6 21:45:11] WARNING[22013] features.c: Feature 'parkpos' was not found.
[Feb  6 21:45:11] WARNING[22013] features.c: Feature 'findslot' was not found.
И симптомы при переводе после этого не изменяются к сожалению.

Re: Проблемы с парковкой вызова.

Добавлено: 07 фев 2012, 07:24
Vlad1983
ParkedCall() позволяет принять паркованный вызов, а не припарковать
https://wiki.asterisk.org/wiki/display/ ... ParkedCall

exten => _1XX,n,ParkedCall(${EXTEN},,Tt)
заменить на
exten => _1XX,n,Park()
https://wiki.asterisk.org/wiki/display/ ... ation_Park

Re: Проблемы с парковкой вызова.

Добавлено: 07 фев 2012, 13:51
shumiloff
Преобразовал диалплан следующим образом:

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

;Parked
exten => _100,1,NoOp(CALLING: OFFICE->PARK ${STRFTIME(${EPOCH},,%Y.%m.%d-%H.%M.%S)}_${CALLERID(num)}_${EXTEN}_${CONTEXT}_${UNIQUEID}_${BLINDTRANSFER}_${TRANSFERERNAME})
exten => _100,n,Park()

exten => _1XX,1,NoOp(CALLING: OFFICE->PARK ${STRFTIME(${EPOCH},,%Y.%m.%d-%H.%M.%S)}_${CALLERID(num)}_${EXTEN}_${CONTEXT}_${UNIQUEID}_${BLINDTRANSFER}_${TRANSFERERNAME})
exten => _1XX,n,Answer()
exten => _1XX,n,ParkedCall(${EXTEN},,Tt)
Теперь при звонке на сотовый, а затем при отправке его на номер холда (100) звонок действительно уходит на холд, но при этом номер холда проговаривается не тому, кто отправил абонента на номер 100, а самому абоненту. Получается как в анекдоте.
- Петька, приборы!
- Двадцать!
- Что - двадцать?
- А что - приборы?

- Бла-бла-бла, оставайтесь на линии... СТОПЯТЬ!...
- ???

Re: Проблемы с парковкой вызова.

Добавлено: 07 фев 2012, 14:10
Vlad1983
патамушта надо не переводить, а именно парковать
уберите всю свою кухнЮ и вставте вместо неё
include => parkedcalls
в опциях Dial при исходящих K при входящих k

CLI> feature show
Builtin Feature Default Current
--------------- ------- -------
Pickup *8 *8
Blind Transfer # ##
Attended Transfer *2
One Touch Monitor
Disconnect Call * **
Park Call #6

Dynamic Feature Default Current
--------------- ------- -------
(none)

Call parking
------------
Parking extension : 70
Parking context : parkedcalls
Parked call extensions: 71-80

если всё же оставить то что наваяли, то попробовать переводить на парковку через Attended Transfer, но не факт

Re: Проблемы с парковкой вызова.

Добавлено: 07 фев 2012, 15:30
shumiloff
В features.conf у меня прописан номер, при переводе на который звонок должен запарковаться - так?

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

parkext => 100
Но если я в своём контексте не пишу обработку экстенжна 100, а ставлю "include => parkedcalls" то при попытке парковки у меня срабатывает экстенжн _X., который находится в конце контекста и обрабатывает неправильно введённые номера. Соотвественно, вызов, перенаправленный на 100 улетает к консультантам в очередь с CallerID = "WRONG NUMBER".
Зачем менять опции Dial? Будет ли у меня возможность пользоваться транфером после этого?

На 1.6 всё работает со старым конфигом и проблем вообще не возникало. Про Attended Transfer покурю, попробую.

Re: Проблемы с парковкой вызова.

Добавлено: 07 фев 2012, 16:00
Vlad1983
при попытке парковки у меня срабатывает экстенжн _X.
как вы вообще парковать пытаетесь?

Park Call #72
при dial(...,..,TtKk)

жмакать #72 надо, а не # или что вы там жмете

Re: Проблемы с парковкой вызова.

Добавлено: 07 фев 2012, 16:25
shumiloff
Раньше жмакал #, затем 100
Теперь пробовал и # 100 и #72 - симптомы те же, один в один. Отрабатывает экстенжн X. на wrong number.

Re: Проблемы с парковкой вызова.

Добавлено: 07 фев 2012, 17:26
Vlad1983
тогда только в платный саппорт