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

Asterisk 13 и Followme

Добавлено: 27 сен 2016, 17:01
cemeht
Здравствуйте уважаемые!
Очень много времени убил на поиск решения проблемы по поисковикам, так же пользовался поиском по форуму, но ответа так и не нашел.
Данный вопрос задавался в одной из тем, но ответа на него не нашлось: https://forum.asterisk.ru/viewtopic.php ... wme#p62402

Имеется: Asterisk 11.5.0 в продакшене и тестовый Asterisk 13.11.2.
После установки 13го астериска, конфиг файлы были на него перекинуты с 11го. Т.е грубо говоря конфигурации астера 11 и 13 идентичны. На 13м астериске всё работает как и на 11м, за исключением одного:
На 13м Астериске в отличии от 11го, при использовании приложения FollowMe, на другой конец вызова астериск проигрывает "Пожалуйста нажмите 1 если хотите принять вызов, либо нажмите 2 если хотите отклонить" - нажатия 1 или 2 игнорирует, просто начинает циклично воспроизводить 2 файла 1) Зарегистрирован звонок 2) Нажмите 1 или 2.. При всем при этом на такой же конфигурации 11й астериск не требует донажатия каких-либо клавиш, а просто уведомляет получившего переадресованный вызов сообщением "Зарегистрирован входящий звонок" и соединяет абонентов в разговор.
В идеале, хотелось бы чтоб 13й астериск так же просто уведомлял о переадресованном вызове и не требовал каких-либо донажатий.

Вот екстеншн и файл конфигурации один в один на обоих астерисках (11\13):

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

exten => _[1234567]XX,1,Set(timeout=${DB(${EXTEN}/timeout)})
exten => _[1234567]XX,n,GotoIf($["${timeout}" != ""]?5)
exten => _[1234567]XX,n,Set(timeout=60)
exten => _[1234567]XX,n,Set(wl=${SHELL(cat /etc/asterisk/custom/whitelist.conf | grep ${CALLERID(num)})})
exten => _[1234567]XX,n,GotoIf($["${wl}" != ""]?call)
exten => _[1234567]XX,n,Set(path=${STRFTIME(${EPOCH},,%Y%m%d)})
exten => _[1234567]XX,n,Set(fname=${STRFTIME(${EPOCH},,%Y%m%d%H%M%S)}-${CALLERID(num)}-${EXTEN})
exten => _[1234567]XX,n,Set(monopt=nice /usr/bin/lame -b 48 --resample 32 -q5 --silent "/usr/records/out/${path}/${fname}.wav" "/usr/records/out/${path}/${fname}.mp3" && rm -f "/usr/records/out/${path}/${fname}.wav" && /bin/chmod 444 /usr/records/out/${path}/${fname}.mp3)
exten => _[1234567]XX,n,Set(CDR(recordpath)=out/${path}/${fname})
exten => _[1234567]XX,n,Set(CDR(userfield)=/usr/records/out/${path}/${fname}.mp3)
exten => _[1234567]XX,n,Set(CDR(int_clid)=${CALLERID(num)})
exten => _[1234567]XX,n,MixMonitor(/usr/records/out/${path}/${fname}.wav,b,${monopt})
exten => _[1234567]XX,n(call),Dial(SIP/${EXTEN},${timeout},rt)
exten => _[1234567]XX,n,GotoIf($["${DIALSTATUS}" = "BUSY"]?end)
exten => _[1234567]XX,n,Followme(${EXTEN})
exten => _[1234567]XX,n(end),busy(10)
exten => _[1234567]XX,n,StopMixMonitor()
exten => _[1234567]XX,n,Hangup()
followme.conf

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

root@asterisk:~# cat /etc/asterisk/followme.conf |grep -v ";"
[general]
featuredigittimeout=>5000
takecall=>1
declinecall=>2
call_from_prompt=>followme/call-from
norecording_prompt=>followme/no-recording
options_prompt=>followme/options
pls_hold_prompt=>followme/pls-hold-while-try
status_prompt=>followme/status
sorry_prompt=>followme/sorry
[default]
musicclass=>default
context=>sip-out
number=>012334567,25
takecall=>1
declinecall=>2
call_from_prompt=>followme/call-from
norecording_prompt=>followme/no-recording
options_prompt=>followme/options
pls_hold_prompt=>followme/pls-hold-while-try
status_prompt=>followme/status
sorry_prompt=>followme/sorry

[202]
context=>sip-out
number => 89335451234
Лог вызова с 13го астериска:
PRIME_BBCODE_SPOILER_SHOW PRIME_BBCODE_SPOILER:

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

asterisk*CLI> core set verbose 3
Console verbose was OFF and is now 3.
  == Using SIP RTP CoS mark 5
    -- Executing [202@test-context:1] Set("SIP/153-000010d5", "timeout=8") in new stack
    -- Executing [202@test-context:2] GotoIf("SIP/153-000010d5", "1?5") in new stack
    -- Goto (test-context,202,5)
    -- Executing [202@test-context:5] GotoIf("SIP/153-000010d5", "0?call") in new stack
    -- Executing [202@test-context:6] Set("SIP/153-000010d5", "path=20160927") in new stack
    -- Executing [202@test-context:7] Set("SIP/153-000010d5", "fname=20160927203551-153-202") in new stack
    -- Executing [202@test-context:8] Set("SIP/153-000010d5", "monopt=nice /usr/bin/lame -b 48 --resample 32 -q5 --silent "/usr/records/out/20160927/20160927203551-153-202.wav" "/usr/records/out/20160927/20160927203551-153-202.mp3" && rm -f "/usr/records/out/20160927/20160927203551-153-202.wav" && /bin/chmod 444 /usr/records/out/20160927/20160927203551-153-202.mp3") in new stack
    -- Executing [202@test-context:9] Set("SIP/153-000010d5", "CDR(recordpath)=out/20160927/20160927203551-153-202") in new stack
    -- Executing [202@test-context:10] Set("SIP/153-000010d5", "CDR(userfield)=/usr/records/out/20160927/20160927203551-153-202.mp3") in new stack
    -- Executing [202@test-context:11] Set("SIP/153-000010d5", "CDR(int_clid)=153") in new stack
    -- Executing [202@test-context:12] MixMonitor("SIP/153-000010d5", "/usr/records/out/20160927/20160927203551-153-202.wav,b,nice /usr/bin/lame -b 48 --resample 32 -q5 --silent "/usr/records/out/20160927/20160927203551-153-202.wav" "/usr/records/out/20160927/20160927203551-153-202.mp3" && rm -f "/usr/records/out/20160927/20160927203551-153-202.wav" && /bin/chmod 444 /usr/records/out/20160927/20160927203551-153-202.mp3") in new stack
    -- Executing [202@test-context:13] Dial("SIP/153-000010d5", "SIP/202,8,rt") in new stack
  == Begin MixMonitor Recording SIP/153-000010d5
  == Using SIP RTP CoS mark 5
    -- Called SIP/202
    -- SIP/202-000010d6 is ringing
    -- SIP/202-000010d6 is ringing
    -- Nobody picked up in 8000 ms
    -- Executing [202@test-context:14] GotoIf("SIP/153-000010d5", "0?end") in new stack
    -- Executing [202@test-context:15] FollowMe("SIP/153-000010d5", "202") in new stack
    -- <SIP/153-000010d5> Playing 'followme/pls-hold-while-try.alaw' (language 'ru')
    -- Started music on hold, class 'default', on channel 'SIP/153-000010d5'
    -- calling Local/89335451234@sip-out/m
    -- Executing [89335451234@sip-out:1] Set("Local/89335451234@sip-out-0000007e;2", "wl=") in new stack
    -- Executing [89335451234@sip-out:2] GotoIf("Local/89335451234@sip-out-0000007e;2", "0?call") in new stack
    -- Executing [89335451234@sip-out:3] Set("Local/89335451234@sip-out-0000007e;2", "path=20160927") in new stack
    -- Executing [89335451234@sip-out:4] Set("Local/89335451234@sip-out-0000007e;2", "fname=20160927203604-153-89335451234") in new stack
    -- Executing [89335451234@sip-out:5] Set("Local/89335451234@sip-out-0000007e;2", "monopt=nice /usr/bin/lame -b 48 --resample 32 -q5 --silent "/usr/records/out/20160927/20160927203604-153-89335451234.wav" "/usr/records/out/20160927/20160927203604-153-89335451234.mp3" && rm -f "/usr/records/out/20160927/20160927203604-153-89335451234.wav" && /bin/chmod 444 /usr/records/out/20160927/20160927203604-153-89335451234.mp3") in new stack
    -- Executing [89335451234@sip-out:6] Set("Local/89335451234@sip-out-0000007e;2", "CDR(recordpath)=out/20160927/20160927203604-153-89335451234") in new stack
    -- Executing [89335451234@sip-out:7] Set("Local/89335451234@sip-out-0000007e;2", "CDR(userfield)=/usr/records/out/20160927/20160927203604-153-89335451234.mp3") in new stack
    -- Executing [89335451234@sip-out:8] Set("Local/89335451234@sip-out-0000007e;2", "CDR(int_clid)=153") in new stack
    -- Executing [89335451234@sip-out:9] MixMonitor("Local/89335451234@sip-out-0000007e;2", "/usr/records/out/20160927/20160927203604-153-89335451234.wav,b,nice /usr/bin/lame -b 48 --resample 32 -q5 --silent "/usr/records/out/20160927/20160927203604-153-89335451234.wav" "/usr/records/out/20160927/20160927203604-153-89335451234.mp3" && rm -f "/usr/records/out/20160927/20160927203604-153-89335451234.wav" && /bin/chmod 444 /usr/records/out/20160927/20160927203604-153-89335451234.mp3") in new stack
  == Begin MixMonitor Recording Local/89335451234@sip-out-0000007e;2
    -- Executing [89335451234@sip-out:10] Set("Local/89335451234@sip-out-0000007e;2", "CALLERID(num)=3902971999") in new stack
    -- Executing [89335451234@sip-out:11] Dial("Local/89335451234@sip-out-0000007e;2", "SIP/krs_2971999/89335451234,60,tT") in new stack
  == Using SIP RTP CoS mark 5
    -- Called SIP/krs_2971999/89335451234
    -- SIP/krs_2971999-000010d7 is making progress passing it to Local/89335451234@sip-out-0000007e;2
    -- Local/89335451234@sip-out-0000007e;1 is making progress
    -- SIP/krs_2971999-000010d7 answered Local/89335451234@sip-out-0000007e;2
    -- Local/89335451234@sip-out-0000007e;1 answered SIP/153-000010d5
    -- Starting playback of followme/call-from
    -- <Local/89335451234@sip-out-0000007e;1> Playing 'followme/no-recording.alaw' (language 'ru')
    -- Channel SIP/krs_2971999-000010d7 joined 'simple_bridge' basic-bridge <4dc6df07-dd04-49ab-94c6-06f4598bde32>
    -- Channel Local/89335451234@sip-out-0000007e;2 joined 'simple_bridge' basic-bridge <4dc6df07-dd04-49ab-94c6-06f4598bde32>
    -- <Local/89335451234@sip-out-0000007e;1> Playback of name file appears to be done.
    -- <Local/89335451234@sip-out-0000007e;1> Playing 'followme/options.alaw' (language 'ru')
    -- <Local/89335451234@sip-out-0000007e;1> We've been waiting for digits longer than we should have.
    -- <Local/89335451234@sip-out-0000007e;1> Playing 'followme/no-recording.alaw' (language 'ru')
    -- <Local/89335451234@sip-out-0000007e;1> Playback of name file appears to be done.
    -- <Local/89335451234@sip-out-0000007e;1> Playing 'followme/options.alaw' (language 'ru')
    -- <Local/89335451234@sip-out-0000007e;1> We've been waiting for digits longer than we should have.
    -- <Local/89335451234@sip-out-0000007e;1> Playing 'followme/no-recording.alaw' (language 'ru')
    -- <Local/89335451234@sip-out-0000007e;1> Playback of name file appears to be done.
    -- <Local/89335451234@sip-out-0000007e;1> Playing 'followme/options.alaw' (language 'ru')
    -- We've hit our timeout for this step. Dropping unanswered calls and starting the next step.
    -- No more steps left.
    -- Stopped music on hold on SIP/153-000010d5
    -- Executing [202@test-context:16] Busy("SIP/153-000010d5", "50") in new stack
    -- Channel Local/89335451234@sip-out-0000007e;2 left 'simple_bridge' basic-bridge <4dc6df07-dd04-49ab-94c6-06f4598bde32>
    -- Channel SIP/krs_2971999-000010d7 left 'simple_bridge' basic-bridge <4dc6df07-dd04-49ab-94c6-06f4598bde32>
  == Spawn extension (sip-out, 89335451234, 11) exited non-zero on 'Local/89335451234@sip-out-0000007e;2'
  == MixMonitor close filestream (mixed)
  == Executing [nice /usr/bin/lame -b 48 --resample 32 -q5 --silent "/usr/records/out/20160927/20160927203604-153-89335451234.wav" "/usr/records/out/20160927/20160927203604-153-89335451234.mp3" && rm -f "/usr/records/out/20160927/20160927203604-153-89335451234.wav" && /bin/chmod 444 /usr/records/out/20160927/20160927203604-153-89335451234.mp3]
  == End MixMonitor Recording Local/89335451234@sip-out-0000007e;2
  == Spawn extension (test-context, 202, 16) exited non-zero on 'SIP/153-000010d5'
  == MixMonitor close filestream (mixed)
  == Executing [nice /usr/bin/lame -b 48 --resample 32 -q5 --silent "/usr/records/out/20160927/20160927203551-153-202.wav" "/usr/records/out/20160927/20160927203551-153-202.mp3" && rm -f "/usr/records/out/20160927/20160927203551-153-202.wav" && /bin/chmod 444 /usr/records/out/20160927/20160927203551-153-202.mp3]
  == End MixMonitor Recording SIP/153-000010d5
asterisk*CLI>

Лог вызова 11го астериска
PRIME_BBCODE_SPOILER_SHOW PRIME_BBCODE_SPOILER:

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

Connected to Asterisk 11.5.0 currently running on asterisk (pid = 11567)
asterisk*CLI> core set verbose 3
Set remote console verbosity to 3
  == Using SIP RTP CoS mark 5
    -- Executing [202@test-context:1] Set("SIP/153-00000006", "timeout=10") in new stack
    -- Executing [202@test-context:2] GotoIf("SIP/153-00000006", "1?5") in new stack
    -- Goto (test-context,202,5)
    -- Executing [202@test-context:5] GotoIf("SIP/153-00000006", "0?call") in new stack
    -- Executing [202@test-context:6] Set("SIP/153-00000006", "path=20160927") in new stack
    -- Executing [202@test-context:7] Set("SIP/153-00000006", "fname=20160927204335-153-202") in new stack
    -- Executing [202@test-context:8] Set("SIP/153-00000006", "monopt=nice /usr/bin/lame -b 48 --resample 32 -q5 --silent "/usr/records/out/20160927/20160927204335-153-202.wav" "/usr/records/out/20160927/20160927204335-153-202.mp3" && rm -f "/usr/records/out/20160927/20160927204335-153-202.wav" && /bin/chmod 444 /usr/records/out/20160927/20160927204335-153-202.mp3") in new stack
    -- Executing [202@test-context:9] Set("SIP/153-00000006", "CDR(recordpath)=out/20160927/20160927204335-153-202") in new stack
    -- Executing [202@test-context:10] Set("SIP/153-00000006", "CDR(userfield)=/usr/records/out/20160927/20160927204335-153-202.mp3") in new stack
    -- Executing [202@test-context:11] MixMonitor("SIP/153-00000006", "/usr/records/out/20160927/20160927204335-153-202.wav,b,nice /usr/bin/lame -b 48 --resample 32 -q5 --silent "/usr/records/out/20160927/20160927204335-153-202.wav" "/usr/records/out/20160927/20160927204335-153-202.mp3" && rm -f "/usr/records/out/20160927/20160927204335-153-202.wav" && /bin/chmod 444 /usr/records/out/20160927/20160927204335-153-202.mp3") in new stack
  == Begin MixMonitor Recording SIP/153-00000006
    -- Executing [202@test-context:12] Dial("SIP/153-00000006", "SIP/202,10,rt") in new stack
[Sep 27 20:43:35] WARNING[11759][C-00000003]: app_dial.c:2437 dial_exec_full: Unable to create channel of type 'SIP' (cause 20 - Subscriber absent)
  == Everyone is busy/congested at this time (1:0/0/1)
    -- Executing [202@test-context:13] GotoIf("SIP/153-00000006", "0?end") in new stack
    -- Executing [202@test-context:14] FollowMe("SIP/153-00000006", "202") in new stack
    -- <SIP/153-00000006> Playing 'followme/pls-hold-while-try.gsm' (language 'ru')
    -- Started music on hold, class 'default', on SIP/153-00000006
    -- calling Local/89235459745@sip-out/m
    -- Executing [89235459745@sip-out:1] Set("Local/89235459745@sip-out-00000003;2", "wl=") in new stack
    -- Executing [89235459745@sip-out:2] GotoIf("Local/89235459745@sip-out-00000003;2", "0?call") in new stack
    -- Executing [89235459745@sip-out:3] Set("Local/89235459745@sip-out-00000003;2", "CALLERID(num)=3902971999") in new stack
    -- Executing [89235459745@sip-out:4] Set("Local/89235459745@sip-out-00000003;2", "path=20160927") in new stack
    -- Executing [89235459745@sip-out:5] Set("Local/89235459745@sip-out-00000003;2", "fname=20160927204340-3902971999-89235459745") in new stack
    -- Executing [89235459745@sip-out:6] Set("Local/89235459745@sip-out-00000003;2", "monopt=nice /usr/bin/lame -b 48 --resample 32 -q5 --silent "/usr/records/out/20160927/20160927204340-3902971999-89235459745.wav" "/usr/records/out/20160927/20160927204340-3902971999-89235459745.mp3" && rm -f "/usr/records/out/20160927/20160927204340-3902971999-89235459745.wav" && /bin/chmod 444 /usr/records/out/20160927/20160927204340-3902971999-89235459745.mp3") in new stack
    -- Executing [89235459745@sip-out:7] Set("Local/89235459745@sip-out-00000003;2", "CDR(recordpath)=out/20160927/20160927204340-3902971999-89235459745") in new stack
    -- Executing [89235459745@sip-out:8] Set("Local/89235459745@sip-out-00000003;2", "CDR(userfield)=/usr/records/out/20160927/20160927204340-3902971999-89235459745.mp3") in new stack
    -- Executing [89235459745@sip-out:9] MixMonitor("Local/89235459745@sip-out-00000003;2", "/usr/records/out/20160927/20160927204340-3902971999-89235459745.wav,b,nice /usr/bin/lame -b 48 --resample 32 -q5 --silent "/usr/records/out/20160927/20160927204340-3902971999-89235459745.wav" "/usr/records/out/20160927/20160927204340-3902971999-89235459745.mp3" && rm -f "/usr/records/out/20160927/20160927204340-3902971999-89235459745.wav" && /bin/chmod 444 /usr/records/out/20160927/20160927204340-3902971999-89235459745.mp3") in new stack
    -- Executing [89235459745@sip-out:10] Dial("Local/89235459745@sip-out-00000003;2", "SIP/krs_2971999/89235459745,60,tT") in new stack
  == Begin MixMonitor Recording Local/89235459745@sip-out-00000003;2
  == Using SIP RTP CoS mark 5
    -- Called SIP/krs_2971999/89235459745
    -- SIP/krs_2971999-00000007 is making progress passing it to Local/89235459745@sip-out-00000003;2
    -- Local/89235459745@sip-out-00000003;1 is making progress
    -- SIP/krs_2971999-00000007 answered Local/89235459745@sip-out-00000003;2
    -- Local/89235459745@sip-out-00000003;1 answered SIP/153-00000006
    -- Starting playback of followme/call-from
    -- <Local/89235459745@sip-out-00000003;1> Playing 'followme/no-recording.gsm' (language 'ru')
    -- Local/89235459745@sip-out-00000003;1 requested a source update
  == Spawn extension (sip-out, 89235459745, 10) exited non-zero on 'Local/89235459745@sip-out-00000003;2'
    -- <SIP/krs_2971999-00000007> Playback of name file appears to be done.
    -- Stopped music on hold on SIP/153-00000006
  == Spawn extension (test-context, 202, 14) exited non-zero on 'SIP/153-00000006'
  == MixMonitor close filestream (mixed)
  == Executing [nice /usr/bin/lame -b 48 --resample 32 -q5 --silent "/usr/records/out/20160927/20160927204340-3902971999-89235459745.wav" "/usr/records/out/20160927/20160927204340-3902971999-89235459745.mp3" && rm -f "/usr/records/out/20160927/20160927204340-3902971999-89235459745.wav" && /bin/chmod 444 /usr/records/out/20160927/20160927204340-3902971999-89235459745.mp3]
  == MixMonitor close filestream (mixed)
  == Executing [nice /usr/bin/lame -b 48 --resample 32 -q5 --silent "/usr/records/out/20160927/20160927204335-153-202.wav" "/usr/records/out/20160927/20160927204335-153-202.mp3" && rm -f "/usr/records/out/20160927/20160927204335-153-202.wav" && /bin/chmod 444 /usr/records/out/20160927/20160927204335-153-202.mp3]
  == End MixMonitor Recording Local/89235459745@sip-out-00000003;2
  == End MixMonitor Recording SIP/153-00000006
asterisk*CLI> core set verbose 0
Set remote console verbosity to 0
asterisk*CLI>

В чем разница и почему при одинаковой конфигурации разные версии астериска работаю по разному с followme? Есть ли способ заставить 13й астериск работать с FollowMe как работает с ним 11й?

Re: Asterisk 13 и Followme

Добавлено: 27 сен 2016, 17:35
ded
Разница в настройках вэб интерфеса. Когда астериск проигрывает "Пожалуйста нажмите 1 если хотите принять вызов, либо нажмите 2 если хотите отклонить" - это у него там включен в экстене VmX Локатор™

Re: Asterisk 13 и Followme

Добавлено: 27 сен 2016, 17:56
cemeht
Благодарю за ответ.
Извиняюсь, что в вводной информации не указал, что оба Asterisk-а чистые, не FreePBX.
Исправить уже к сожалению нет возможности.

По теме:
"Если используется список альтернативных номеров через модуль FollowMe, уберите отметку "Посылать в FollowMe и отключите таким образом эту опцию"
Т.е насколько я понимаю, в FollowMe нет возможности отключить "Наберите 1 итд.." ?

Re: Asterisk 13 и Followme

Добавлено: 27 сен 2016, 17:58
Vlad1983
смотреть опции app_FollowMe

Re: Asterisk 13 и Followme

Добавлено: 27 сен 2016, 18:01
cemeht
Ни одна опция не подходит:
asterisk*CLI> core show application FollowMe
PRIME_BBCODE_SPOILER_SHOW PRIME_BBCODE_SPOILER:

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

  -= Info about application 'FollowMe' =-

[Synopsis]
Find-Me/Follow-Me application.

[Description]
This application performs Find-Me/Follow-Me functionality for the caller as
defined in the profile matching the <followmeid> parameter in "followme.conf".
If the specified <followmeid> profile doesn't exist in "followme.conf",
execution will be returned to the dialplan and call execution will continue at
the next priority.
Returns -1 on hangup.

[Syntax]
FollowMe(followmeid[,options])

[Arguments]
options
    a: Record the caller's name so it can be announced to the callee on each
    step.

    B([[context^]exten^]priority[(arg1[^...][^argN])]): Before initiating the
    outgoing call(s), Gosub to the specified location using the current
    channel.

    b([[context^]exten^]priority[(arg1[^...][^argN])]): Before initiating an
    outgoing call, Gosub to the specified location using the newly created
    channel.  The Gosub will be executed for each destination channel.

    d: Disable the 'Please hold while we try to connect your call'
    announcement.

    I: Asterisk will ignore any connected line update requests it may receive
    on this dial attempt.

    l: Disable local call optimization so that applications with audio hooks
    between the local bridge don't get dropped when the calls get joined
    directly.

    N: Don't answer the incoming call until we're ready to connect the caller
    or give up.
    NOTE: This option is ignored if the call is already answered.
    NOTE: If the call is not already answered, the 'a' and 's' options are
    ignored while the 'd' option is implicitly enabled.

    n: Playback the unreachable status message if we've run out of steps or the
    callee has elected not to be reachable.

    s: Playback the incoming status message prior to starting the follow-me
    step(s)


[See Also]
Not available

Re: Asterisk 13 и Followme

Добавлено: 27 сен 2016, 18:21
ded
Замаркируйте
;call_from_prompt=>followme/call-from

Re: Asterisk 13 и Followme

Добавлено: 27 сен 2016, 19:23
cemeht
Сделал, результат все тот же:
PRIME_BBCODE_SPOILER_SHOW PRIME_BBCODE_SPOILER:

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

asterisk*CLI> core set verbose 3
Console verbose was OFF and is now 3.
  == Using SIP RTP CoS mark 5
    -- Executing [202@test-context:1] Set("SIP/153-00000000", "timeout=8") in new stack
    -- Executing [202@test-context:2] GotoIf("SIP/153-00000000", "1?5") in new stack
    -- Goto (test-context,202,5)
    -- Executing [202@test-context:5] GotoIf("SIP/153-00000000", "0?call") in new stack
    -- Executing [202@test-context:6] Set("SIP/153-00000000", "path=20160927") in new stack
    -- Executing [202@test-context:7] Set("SIP/153-00000000", "fname=20160927231455-153-202") in new stack
    -- Executing [202@test-context:8] Set("SIP/153-00000000", "monopt=nice /usr/bin/lame -b 48 --resample 32 -q5 --silent "/usr/records/out/20160927/20160927231455-153-202.wav" "/usr/records/out/20160927/20160927231455-153-202.mp3" && rm -f "/usr/records/out/20160927/20160927231455-153-202.wav" && /bin/chmod 444 /usr/records/out/20160927/20160927231455-153-202.mp3") in new stack
    -- Executing [202@test-context:9] Set("SIP/153-00000000", "CDR(recordpath)=out/20160927/20160927231455-153-202") in new stack
    -- Executing [202@test-context:10] Set("SIP/153-00000000", "CDR(userfield)=/usr/records/out/20160927/20160927231455-153-202.mp3") in new stack
    -- Executing [202@test-context:11] Set("SIP/153-00000000", "CDR(int_clid)=153") in new stack
    -- Executing [202@test-context:12] MixMonitor("SIP/153-00000000", "/usr/records/out/20160927/20160927231455-153-202.wav,b,nice /usr/bin/lame -b 48 --resample 32 -q5 --silent "/usr/records/out/20160927/20160927231455-153-202.wav" "/usr/records/out/20160927/20160927231455-153-202.mp3" && rm -f "/usr/records/out/20160927/20160927231455-153-202.wav" && /bin/chmod 444 /usr/records/out/20160927/20160927231455-153-202.mp3") in new stack
  == Begin MixMonitor Recording SIP/153-00000000
    -- Executing [202@test-context:13] Dial("SIP/153-00000000", "SIP/202,8,rt") in new stack
  == Using SIP RTP CoS mark 5
    -- Called SIP/202
    -- SIP/202-00000001 is ringing
    -- Nobody picked up in 8000 ms
    -- Executing [202@test-context:14] GotoIf("SIP/153-00000000", "0?end") in new stack
    -- Executing [202@test-context:15] FollowMe("SIP/153-00000000", "202") in new stack
    -- <SIP/153-00000000> Playing 'followme/pls-hold-while-try.alaw' (language 'ru')
    -- Started music on hold, class 'default', on channel 'SIP/153-00000000'
    -- calling Local/89335451234@sip-out/m
    -- Executing [89335451234@sip-out:1] Set("Local/89335451234@sip-out-00000000;2", "wl=") in new stack
    -- Executing [89335451234@sip-out:2] GotoIf("Local/89335451234@sip-out-00000000;2", "0?call") in new stack
    -- Executing [89335451234@sip-out:3] Set("Local/89335451234@sip-out-00000000;2", "path=20160927") in new stack
    -- Executing [89335451234@sip-out:4] Set("Local/89335451234@sip-out-00000000;2", "fname=20160927231507-153-89335451234") in new stack
    -- Executing [89335451234@sip-out:5] Set("Local/89335451234@sip-out-00000000;2", "monopt=nice /usr/bin/lame -b 48 --resample 32 -q5 --silent "/usr/records/out/20160927/20160927231507-153-89335451234.wav" "/usr/records/out/20160927/20160927231507-153-89335451234.mp3" && rm -f "/usr/records/out/20160927/20160927231507-153-89335451234.wav" && /bin/chmod 444 /usr/records/out/20160927/20160927231507-153-89335451234.mp3") in new stack
    -- Executing [89335451234@sip-out:6] Set("Local/89335451234@sip-out-00000000;2", "CDR(recordpath)=out/20160927/20160927231507-153-89335451234") in new stack
    -- Executing [89335451234@sip-out:7] Set("Local/89335451234@sip-out-00000000;2", "CDR(userfield)=/usr/records/out/20160927/20160927231507-153-89335451234.mp3") in new stack
    -- Executing [89335451234@sip-out:8] Set("Local/89335451234@sip-out-00000000;2", "CDR(int_clid)=153") in new stack
    -- Executing [89335451234@sip-out:9] MixMonitor("Local/89335451234@sip-out-00000000;2", "/usr/records/out/20160927/20160927231507-153-89335451234.wav,b,nice /usr/bin/lame -b 48 --resample 32 -q5 --silent "/usr/records/out/20160927/20160927231507-153-89335451234.wav" "/usr/records/out/20160927/20160927231507-153-89335451234.mp3" && rm -f "/usr/records/out/20160927/20160927231507-153-89335451234.wav" && /bin/chmod 444 /usr/records/out/20160927/20160927231507-153-89335451234.mp3") in new stack
    -- Executing [89335451234@sip-out:10] Set("Local/89335451234@sip-out-00000000;2", "CALLERID(num)=3902971999") in new stack
    -- Executing [89335451234@sip-out:11] Dial("Local/89335451234@sip-out-00000000;2", "SIP/krs_2971999/89335451234,60,tT") in new stack
  == Begin MixMonitor Recording Local/89335451234@sip-out-00000000;2
  == Using SIP RTP CoS mark 5
    -- Called SIP/krs_2971999/89335451234
    -- SIP/krs_2971999-00000002 is making progress passing it to Local/89335451234@sip-out-00000000;2
    -- Local/89335451234@sip-out-00000000;1 is making progress
    -- SIP/krs_2971999-00000002 answered Local/89335451234@sip-out-00000000;2
    -- Local/89335451234@sip-out-00000000;1 answered SIP/153-00000000
    -- Starting playback of followme/call-from
    -- Channel SIP/krs_2971999-00000002 joined 'simple_bridge' basic-bridge <387350c3-f554-47ac-8065-115d902a2100>
    -- Channel Local/89335451234@sip-out-00000000;2 joined 'simple_bridge' basic-bridge <387350c3-f554-47ac-8065-115d902a2100>
    -- <Local/89335451234@sip-out-00000000;1> Playing 'followme/no-recording.alaw' (language 'ru')
    -- <Local/89335451234@sip-out-00000000;1> Playback of name file appears to be done.
    -- <Local/89335451234@sip-out-00000000;1> Playing 'followme/options.alaw' (language 'ru')
    -- <Local/89335451234@sip-out-00000000;1> We've been waiting for digits longer than we should have.
    -- <Local/89335451234@sip-out-00000000;1> Playing 'followme/no-recording.alaw' (language 'ru')
    -- <Local/89335451234@sip-out-00000000;1> Playback of name file appears to be done.
    -- <Local/89335451234@sip-out-00000000;1> Playing 'followme/options.alaw' (language 'ru')
    -- <Local/89335451234@sip-out-00000000;1> We've been waiting for digits longer than we should have.
    -- <Local/89335451234@sip-out-00000000;1> Playing 'followme/no-recording.alaw' (language 'ru')
    -- We've hit our timeout for this step. Dropping unanswered calls and starting the next step.
    -- No more steps left.
    -- Channel Local/89335451234@sip-out-00000000;2 left 'simple_bridge' basic-bridge <387350c3-f554-47ac-8065-115d902a2100>
    -- Stopped music on hold on SIP/153-00000000
    -- Executing [202@test-context:16] Busy("SIP/153-00000000", "50") in new stack
    -- Channel SIP/krs_2971999-00000002 left 'simple_bridge' basic-bridge <387350c3-f554-47ac-8065-115d902a2100>
  == Spawn extension (sip-out, 89335451234, 11) exited non-zero on 'Local/89335451234@sip-out-00000000;2'
  == MixMonitor close filestream (mixed)
  == Executing [nice /usr/bin/lame -b 48 --resample 32 -q5 --silent "/usr/records/out/20160927/20160927231507-153-89335451234.wav" "/usr/records/out/20160927/20160927231507-153-89335451234.mp3" && rm -f "/usr/records/out/20160927/20160927231507-153-89335451234.wav" && /bin/chmod 444 /usr/records/out/20160927/20160927231507-153-89335451234.mp3]
  == End MixMonitor Recording Local/89335451234@sip-out-00000000;2
asterisk*CLI>

Есть какой-нибудь вариант в екстеншене передать в FollowMe нажатие "1"? Как бы сэмулировать пользовательский набор "1".
Приглушив воспроизведение файла "followme/options.alaw" параметром в options_prompt=>silence/1

Re: Asterisk 13 и Followme

Добавлено: 27 сен 2016, 19:25
ded
cemeht писал(а):Есть какой-нибудь вариант в екстеншене передать в FollowMe нажатие "1"? Как бы сэмулировать пользовательский набор "1".
Приглушив воспроизведение файла "followme/options.alaw" параметром в options_prompt=>silence/1
Да-да, и черной изолентой сверху примотать.
Лучше разобраться всё же. Не хотите замаркировать
;takecall=>1
;declinecall=>2 ??

А зачем вам так встал 13-й?

Re: Asterisk 13 и Followme

Добавлено: 27 сен 2016, 19:49
cemeht
asterisk*CLI> dialplan show sip-out
PRIME_BBCODE_SPOILER_SHOW PRIME_BBCODE_SPOILER:

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

asterisk*CLI> dialplan show sip-out
[ Context 'sip-out' created by 'pbx_config' ]
  '3902971999' =>   1. Goto(sip-in-3902971999,3902971999,1)       [pbx_config]
  '_#XXX' =>        1. SET(GLOBAL(PICKUPMARK)=${EXTEN:1})         [pbx_config]
                    2. Pickup(${EXTEN:1}@PICKUPMARK)              [pbx_config]
                    3. pickup(${EXTEN:1})                         [pbx_config]
  '_2XXXXXX' =>     1. Set(wl=${SHELL(cat /etc/asterisk/custom/whitelist.conf | grep ${CALLERID(num)})}) [pbx_config]
                    2. GotoIf($["${wl}" != ""]?call)              [pbx_config]
                    3. Set(path=${STRFTIME(${EPOCH},,%Y%m%d)})    [pbx_config]
                    4. Set(fname=${STRFTIME(${EPOCH},,%Y%m%d%H%M%S)}-${CALLERID(num)}-${EXTEN}) [pbx_config]
                    5. Set(monopt=nice /usr/bin/lame -b 48 --resample 32 -q5 --silent "/usr/records/out/${path}/${fname}.wav" "/usr/records/out/${path}/${fname}.mp3" && rm -f "/usr/records/out/${path}/${fname}.wav" && /bin/chmod 444 /usr/records/out/${path}/${fname}.mp3) [pbx_config]
                    6. Set(CDR(recordpath)=out/${path}/${fname})  [pbx_config]
                    7. Set(CDR(userfield)=/usr/records/out/${path}/${fname}.mp3) [pbx_config]
                    8. Set(CDR(int_clid)=${CALLERID(num)})        [pbx_config]
                    9. MixMonitor(/usr/records/out/${path}/${fname}.wav,b,${monopt}) [pbx_config]
                    10. Set(CALLERID(num)=3902971999)             [pbx_config]
     [call]         11. Dial(SIP/krs_2971999/${EXTEN},60,tT)      [pbx_config]
                    12. StopMixMonitor()                          [pbx_config]
                    13. Hangup()                                  [pbx_config]
  '_55X' =>         1. queue(${EXTEN},t)                          [pbx_config]
  '_6XX' =>         1. queue(${EXTEN},t)                          [pbx_config]
  '_722' =>         1. read(pass,ru/agent-pass,3)                 [pbx_config]
                    2. GotoIf($["${pass}" = "096"]?ok)            [pbx_config]
     [end]          3. hangup()                                   [pbx_config]
     [ok]           4. ChanSpy(SIP,bqw)                           [pbx_config]
                    5. hangup()                                   [pbx_config]
  '_8XXXXXXXXXX' => 1. Set(wl=${SHELL(cat /etc/asterisk/custom/whitelist.conf | grep ${CALLERID(num)})}) [pbx_config]
                    2. GotoIf($["${wl}" != ""]?call)              [pbx_config]
                    3. Set(path=${STRFTIME(${EPOCH},,%Y%m%d)})    [pbx_config]
                    4. Set(fname=${STRFTIME(${EPOCH},,%Y%m%d%H%M%S)}-${CALLERID(num)}-${EXTEN}) [pbx_config]
                    5. Set(monopt=nice /usr/bin/lame -b 48 --resample 32 -q5 --silent "/usr/records/out/${path}/${fname}.wav" "/usr/records/out/${path}/${fname}.mp3" && rm -f "/usr/records/out/${path}/${fname}.wav" && /bin/chmod 444 /usr/records/out/${path}/${fname}.mp3) [pbx_config]
                    6. Set(CDR(recordpath)=out/${path}/${fname})  [pbx_config]
                    7. Set(CDR(userfield)=/usr/records/out/${path}/${fname}.mp3) [pbx_config]
                    8. Set(CDR(int_clid)=${CALLERID(num)})        [pbx_config]
                    9. MixMonitor(/usr/records/out/${path}/${fname}.wav,b,${monopt}) [pbx_config]
                    10. Set(CALLERID(num)=3902971999)             [pbx_config]
     [call]         11. Dial(SIP/krs_2971999/${EXTEN},60,tT)      [pbx_config]
                    12. StopMixMonitor()                          [pbx_config]
                    13. Hangup()                                  [pbx_config]
  '_[1234567]XX' => 1. Set(timeout=${DB(${EXTEN}/timeout)})       [pbx_config]
                    2. GotoIf($["${DB(DND/${EXTEN})}" = "1"]?gooff) [pbx_config]
                    3. GotoIf($["${timeout}" != ""]?5)            [pbx_config]
                    4. Set(timeout=15)                            [pbx_config]
                    5. Set(wl=${SHELL(cat /etc/asterisk/custom/whitelist.conf | grep ${CALLERID(num)})}) [pbx_config]
                    6. GotoIf($["${wl}" != ""]?call)              [pbx_config]
                    7. Set(path=${STRFTIME(${EPOCH},,%Y%m%d)})    [pbx_config]
                    8. Set(fname=${STRFTIME(${EPOCH},,%Y%m%d%H%M%S)}-${CALLERID(num)}-${EXTEN}) [pbx_config]
                    9. Set(monopt=nice /usr/bin/lame -b 48 --resample 32 -q5 --silent "/usr/records/out/${path}/${fname}.wav" "/usr/records/out/${path}/${fname}.mp3" && rm -f "/usr/records/out/${path}/${fname}.wav" && /bin/chmod 444 /usr/records/out/${path}/${fname}.mp3) [pbx_config]
                    10. Set(CDR(recordpath)=out/${path}/${fname}) [pbx_config]
                    11. Set(CDR(userfield)=/usr/records/out/${path}/${fname}.mp3) [pbx_config]
                    12. Set(CDR(int_clid)=${CALLERID(num)})       [pbx_config]
                    13. MixMonitor(/usr/records/out/${path}/${fname}.wav,fb,${monopt}) [pbx_config]
     [call]         14. Dial(SIP/${EXTEN},${timeout},rt)          [pbx_config]
                    15. GotoIf($["${DIALSTATUS}" = "BUSY"]?end)   [pbx_config]
                    16. Set(mobnum=${SHELL(cat /etc/asterisk/custom/phones-int.conf | grep ${EXTEN}= | cut -f2 -d'=')}) [pbx_config]
                    17. GotoIf($["${mobnum:0:1}" = ""]?end)       [pbx_config]
                    18. Set(CALLERID(num)=3902971999)             [pbx_config]
                    19. Dial(SIP/krs_2971999/${mobnum:0:-1},60,tT) [pbx_config]
     [end]          20. busy(10)                                  [pbx_config]
                    21. StopMixMonitor()                          [pbx_config]
     [gooff]        22. ()                                        [pbx_config]
                    23. Hangup()                                  [pbx_config]
  Include =>        'dnd-on-off'                                  [pbx_config]

-= 8 extensions (60 priorities) in 1 context. =-
asterisk*CLI>
Зачем 13й?:
1) Идти в ногу со временем
2) ARI

Сделал, не помогло:
;takecall=>1
;declinecall=>2 ??

Re: Asterisk 13 и Followme

Добавлено: 27 сен 2016, 20:55
ded
А Вы вообще прегружаете, после того, как замаркировали?
Ибо если выполняется
-- Starting playback of followme/call-from
то это значит всё действует, не замаркировано.

Ещё вопрос: кто такой, кто явно впереди а не в ногу со временем писал этот диалплан?

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

'_8XXXXXXXXXX' => 1. Set(wl=${SHELL(cat /etc/asterisk/custom/whitelist.conf | grep ${CALLERID(num)})}) [pbx_config]
                    2. GotoIf($["${wl}" != ""]?call)              [pbx_config]
                    3. Set(path=${STRFTIME(${EPOCH},,%Y%m%d)})    [pbx_config]
                    4. Set(fname=${STRFTIME(${EPOCH},,%Y%m%d%H%M%S)}-${CALLERID(num)}-${EXTEN}) [pbx_config]
                    5. Set(monopt=nice /usr/bin/lame -b 48 --resample 32 -q5 --silent "/usr/records/out/${path}/${fname}.wav" "/usr/records/out/${path}/${fname}.mp3" && rm -f "/usr/records/out/${path}/${fname}.wav" && /bin/chmod 444 /usr/records/out/${path}/${fname}.mp3) [pbx_config]
                    6. Set(CDR(recordpath)=out/${path}/${fname})  [pbx_config]
                    7. Set(CDR(userfield)=/usr/records/out/${path}/${fname}.mp3) [pbx_config]
                    8. Set(CDR(int_clid)=${CALLERID(num)})        [pbx_config]
                    9. MixMonitor(/usr/records/out/${path}/${fname}.wav,b,${monopt}) [pbx_config]
                    10. Set(CALLERID(num)=3902971999)             [pbx_config]
     [call]         11. Dial(SIP/krs_2971999/${EXTEN},60,tT)      [pbx_config]
                    12. StopMixMonitor()                          [pbx_config]
                    13. Hangup()                                  [pbx_config]
Не хочу критиковать, но тут просто виден особый ум, особый подход, я лучше буду у него консультироваться, да и Вам советую.