Страница 4 из 5

Re: FreePBX соntext

Добавлено: 30 авг 2012, 23:51
zoleg
CDMA модем ZTE AC7810/AC5710 решения опробованные. Кроме этого я подставлял и ХВ 1550 - результат одинаков (ДТМФ не ходит остальное все работает).

Re: FreePBX соntext

Добавлено: 31 авг 2012, 00:13
zoleg
Дед, добавил Ваши дебажные добавки к планчику и вот оно

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

  == Starting Cdma/lenzks0-0100000007 at incoming-gsm,+380965372052,1 failed so falling back to exten 's'
    -- Executing [s@incoming-gsm:1] NoOp("Cdma/lenzks0-0100000007", "GSM IMEI is 352215047554116") in new stack
    -- Executing [s@incoming-gsm:2] NoOp("Cdma/lenzks0-0100000007", "CallerID is "lenzks0" <+380639666240>") in new stack
    -- Executing [s@incoming-gsm:3] Set("Cdma/lenzks0-0100000007", "CALLERID(name)=+380639666240") in new stack
    -- Executing [s@incoming-gsm:4] Set("Cdma/lenzks0-0100000007", "CALLERID(num)=0639666240") in new stack
    -- Executing [s@incoming-gsm:5] NoOp("Cdma/lenzks0-0100000007", "CallerID is "+380639666240" <0639666240>") in new stack
    -- Executing [s@incoming-gsm:6] Goto("Cdma/lenzks0-0100000007", "from-trunk,352215047554116,1") in new stack
    -- Goto (from-trunk,352215047554116,1)
    -- Executing [352215047554116@from-trunk:1] Set("Cdma/lenzks0-0100000007", "__FROM_DID=352215047554116") in new stack
    -- Executing [352215047554116@from-trunk:2] Set("Cdma/lenzks0-0100000007", "CHANNEL(language)=ru") in new stack
    -- Executing [352215047554116@from-trunk:3] Gosub("Cdma/lenzks0-0100000007", "app-blacklist-check,s,1") in new stack
    -- Executing [s@app-blacklist-check:1] GotoIf("Cdma/lenzks0-0100000007", "0?blacklisted") in new stack
    -- Executing [s@app-blacklist-check:2] Set("Cdma/lenzks0-0100000007", "CALLED_BLACKLIST=1") in new stack
    -- Executing [s@app-blacklist-check:3] Return("Cdma/lenzks0-0100000007", "") in new stack
    -- Executing [352215047554116@from-trunk:4] ExecIf("Cdma/lenzks0-0100000007", "0 ?Set(CALLERID(name)=0639666240)") in new stack
    -- Executing [352215047554116@from-trunk:5] Set("Cdma/lenzks0-0100000007", "__CALLINGPRES_SV=allowed_not_screened") in new stack
    -- Executing [352215047554116@from-trunk:6] Set("Cdma/lenzks0-0100000007", "CALLERPRES()=allowed_not_screened") in new stack
    -- Executing [352215047554116@from-trunk:7] Goto("Cdma/lenzks0-0100000007", "app-languages,1,1") in new stack
    -- Goto (app-languages,1,1)
    -- Executing [1@app-languages:1] NoOp("Cdma/lenzks0-0100000007", "Changing Channel to language: ru (Russian)") in new stack
    -- Executing [1@app-languages:2] Set("Cdma/lenzks0-0100000007", "CHANNEL(language)=ru") in new stack
    -- Executing [1@app-languages:3] Goto("Cdma/lenzks0-0100000007", "app-announcement-1,s,1") in new stack
    -- Goto (app-announcement-1,s,1)
    -- Executing [s@app-announcement-1:1] GotoIf("Cdma/lenzks0-0100000007", "0?begin") in new stack
    -- Executing [s@app-announcement-1:2] Answer("Cdma/lenzks0-0100000007", "") in new stack
       > Sending answer command
    -- Executing [s@app-announcement-1:3] Wait("Cdma/lenzks0-0100000007", "1") in new stack
    -- Executing [s@app-announcement-1:4] NoOp("Cdma/lenzks0-0100000007", "Playing announcement hallow") in new stack
    -- Executing [s@app-announcement-1:5] BackGround("Cdma/lenzks0-0100000007", "custom/hallow,nm") in new stack
    -- <Cdma/lenzks0-0100000007> Playing 'custom/hallow.ulaw' (language 'ru')
    -- Executing [s@app-announcement-1:6] Goto("Cdma/lenzks0-0100000007", "timeconditions,3,1") in new stack
    -- Goto (timeconditions,3,1)
    -- Executing [3@timeconditions:1] GotoIf("Cdma/lenzks0-0100000007", "0?truegoto") in new stack
    -- Executing [3@timeconditions:2] ExecIf("Cdma/lenzks0-0100000007", "0?Set(DB(TC/3)=)") in new stack
    -- Executing [3@timeconditions:3] GotoIf("Cdma/lenzks0-0100000007", "1?timeconditions,2,1") in new stack
    -- Goto (timeconditions,2,1)
    -- Executing [2@timeconditions:1] GotoIfTime("Cdma/lenzks0-0100000007", "18:00,*,*,*?truestate") in new stack
    -- Executing [2@timeconditions:2] GotoIf("Cdma/lenzks0-0100000007", "0?truegoto") in new stack
    -- Executing [2@timeconditions:3] ExecIf("Cdma/lenzks0-0100000007", "0?Set(DB(TC/2)=)") in new stack
    -- Executing [2@timeconditions:4] GotoIf("Cdma/lenzks0-0100000007", "1?timeconditions,1,1") in new stack
    -- Goto (timeconditions,1,1)
    -- Executing [1@timeconditions:1] GotoIfTime("Cdma/lenzks0-0100000007", "09:00-22:00,tue-sat,*,*?truestate") in new stack
    -- Executing [1@timeconditions:2] GotoIf("Cdma/lenzks0-0100000007", "0?truegoto") in new stack
    -- Executing [1@timeconditions:3] ExecIf("Cdma/lenzks0-0100000007", "0?Set(DB(TC/1)=)") in new stack
    -- Executing [1@timeconditions:4] GotoIf("Cdma/lenzks0-0100000007", "1?ivr-3,s,1") in new stack
    -- Goto (ivr-3,s,1)
    -- Executing [s@ivr-3:1] Set("Cdma/lenzks0-0100000007", "MSG=custom/ivr-sup") in new stack
    -- Executing [s@ivr-3:2] Set("Cdma/lenzks0-0100000007", "LOOPCOUNT=0") in new stack
    -- Executing [s@ivr-3:3] Set("Cdma/lenzks0-0100000007", "__DIR-CONTEXT=") in new stack
    -- Executing [s@ivr-3:4] Set("Cdma/lenzks0-0100000007", "_IVR_CONTEXT_ivr-3=") in new stack
    -- Executing [s@ivr-3:5] Set("Cdma/lenzks0-0100000007", "_IVR_CONTEXT=ivr-3") in new stack
    -- Executing [s@ivr-3:6] GotoIf("Cdma/lenzks0-0100000007", "1?begin") in new stack
    -- Goto (ivr-3,s,9)
    -- Executing [s@ivr-3:9] Set("Cdma/lenzks0-0100000007", "TIMEOUT(digit)=3") in new stack
    -- Digit timeout set to 3.000
    -- Executing [s@ivr-3:10] Set("Cdma/lenzks0-0100000007", "TIMEOUT(response)=10") in new stack
    -- Response timeout set to 10.000
    -- Executing [s@ivr-3:11] Set("Cdma/lenzks0-0100000007", "__IVR_RETVM=") in new stack
    -- Executing [s@ivr-3:12] ExecIf("Cdma/lenzks0-0100000007", "1?Background(custom/ivr-sup)") in new stack
    -- <Cdma/lenzks0-0100000007> Playing 'custom/ivr-sup.ulaw' (language 'ru')
    -- Executing [s@ivr-3:13] WaitExten("Cdma/lenzks0-0100000007", "10,") in new stack
    -- Timeout on Cdma/lenzks0-0100000007, going to 't'
    -- Executing [t@ivr-3:1] Goto("Cdma/lenzks0-0100000007", "loop,1") in new stack
    -- Goto (ivr-3,loop,1)
    -- Executing [loop@ivr-3:1] Set("Cdma/lenzks0-0100000007", "LOOPCOUNT=1") in new stack
    -- Executing [loop@ivr-3:2] GotoIf("Cdma/lenzks0-0100000007", "0?hang,1") in new stack
    -- Executing [loop@ivr-3:3] Goto("Cdma/lenzks0-0100000007", "ivr-3,s,begin") in new stack
    -- Goto (ivr-3,s,9)
    -- Executing [s@ivr-3:9] Set("Cdma/lenzks0-0100000007", "TIMEOUT(digit)=3") in new stack
    -- Digit timeout set to 3.000
    -- Executing [s@ivr-3:10] Set("Cdma/lenzks0-0100000007", "TIMEOUT(response)=10") in new stack
    -- Response timeout set to 10.000
    -- Executing [s@ivr-3:11] Set("Cdma/lenzks0-0100000007", "__IVR_RETVM=") in new stack
    -- Executing [s@ivr-3:12] ExecIf("Cdma/lenzks0-0100000007", "1?Background(custom/ivr-sup)") in new stack
    -- <Cdma/lenzks0-0100000007> Playing 'custom/ivr-sup.ulaw' (language 'ru')
  == Spawn extension (ivr-3, s, 12) exited non-zero on 'Cdma/lenzks0-0100000007'
    -- Executing [h@ivr-3:1] Hangup("Cdma/lenzks0-0100000007", "") in new stack
  == Spawn extension (ivr-3, h, 1) exited non-zero on 'Cdma/lenzks0-0100000007'

Re: FreePBX соntext

Добавлено: 31 авг 2012, 10:20
ded
Если бы в incoming-gsm, был бы диалплан
exten => +380965372052,1,NoOp(CallerID is ${CALLERID(all)})
exten => +380965372052,n,Set(CALLERID(name)=${CALLERID(num)})
и так далее,
то не было бы failed so falling back to exten 's'

Re: FreePBX соntext

Добавлено: 01 сен 2012, 08:44
zoleg
Понял. Спасибо.

Re: FreePBX соntext

Добавлено: 07 сен 2012, 23:15
zoleg
Разобрался. В принципе почти все понравилось.
По большому счету сделал следующий вывод: В чистом астере нужно диалплан рисовать от точки входа, а во фрипбх проще начинать от обратного (конечного пользователя). Непривычно, но победимо легко.
Особо понравились ринггруппы, очереди и войсмыло - две минуты и все готово! И главное что делает все САМО - и линки, и директории, и клички мыльниц.
Из неудобств отметил то, что нужно рисовать "блок-схему" прохождения звонков и хранить ее в качестве шпоры на случай "вспомнить что натворил".

Поюзав фрипбх задумался над тем нужно ли переписать то, что было "заточено" под чистый астер.
Есть неопознанные моменты
1. Как через веб заюзать "аги" и "систем" чтоб отдать параметр в Си прогу и получить "возврат", который можно заюзать далее без использования кастом (если все делать в кастом, то не вижу необходимости юзать фрипбх).
2. Не смог обнаружить банальной штуки -""вэйт -Х секунд" , которая просто необходима для борьбы с задваиванием ДТМФ посылок (практика показала что это единственный метод, дающий 100% результат для всех операторов).

В целом доволен, но пока не готов бросится во фрипбиксацию собственных разработок.


ded спасибо за наводки. Они конкретно помогли.

Re: FreePBX соntext

Добавлено: 07 сен 2012, 23:40
ded
1. Модуль Специальное назначение (Custom destination)
2. На входящих?
Опции
---------------------------------------
Информация о сигнале:
Префикс для ИД номера:
Музыку в ожидании:
Сигнализация вызова (КПВ):
Пауза перед ответом:

Re: FreePBX соntext

Добавлено: 10 сен 2012, 09:41
zoleg
2. Не.
Ожидание 0,5 -2 секунд в ИВР. То есть после посылки ДТМФ в ИВР делается перехрд по ИВР и сразу задержка. Это просто необходимо при многоуровневом меню. В противном случаи бывает что первое меню "пролетает" и звонящий оказывается в подуровневом меню. Кроме того звонящий не успевает донести трубу назад к уху, когда робобаба успевает проговорить пару слов.
Типа так

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

exten => i,1(lbl_main-info_0),Set(TIMEOUT(response)=180)
exten => i,n,Set(TIMEOUT(digit)=1)
exten => i,n,Background(first-call/main-ivr)
exten => i,n,Wait(0.1)
exten => i,n,Goto(lbl_main-info_0)
exten => h,1,Hangup()
exten => t,1,Goto(i,lbl_main-info_0)
exten => 1,1,Wait(2)
exten => 1,n,Goto(ivr-info-tarif,s,1)
exten => 2,1,Wait(2)
exten => 2,n,Goto(ivr-info-rules,s,1)
exten => 3,1,Wait(2)
exten => 3,n,Goto(ivr-proposition-seller,s,1)
exten => 4,1,Set(TIMEOUT(response)=180)
exten => 4,n,Set(TIMEOUT(digit)=1)
exten => 4,n,Background(taxi/general/first-call/restoran0000)
exten => 4,n,WaitExten(2)
exten => 4,n,Goto(i,lbl_main-info_0)
exten => 5,1,Wait(2)
exten => 5,n,Goto(ivr-about-company,s,1)
exten => 0,1,Wait(2)
exten => 0,n,Goto(first-call,s,1)
exten => s,1,Wait(2)
exten => s,n,Goto(i,lbl_main-info_0)

Re: FreePBX соntext

Добавлено: 10 сен 2012, 10:57
zoleg
Предпочитаю делать так
exten => 1,1,Wait(2)
exten => 1,n,Goto(ivr-info,s,1)
Убиваю задваивание и затраивание ДТМФ и делаю паузу перед читкой фраз следующей ИВР.

Re: FreePBX соntext

Добавлено: 10 сен 2012, 11:09
ded
zoleg писал(а): Кроме того звонящий не успевает донести трубу назад к уху, когда робобаба успевает проговорить пару слов.
Услуги пирсинга: устанавливаем кнопки телефона в мочки уха, для управления многоуровневыми меню.
Моблос => ненависть!

Re: FreePBX соntext

Добавлено: 26 сен 2016, 21:27
m4604590
Подскажите плз какой-нибудь толковый гайд по вэб-интерфейсу FreePBX. спасибо заранее!