даже не знаю на что можно пожаловаться когда видел практически всё, а вам стоит почитать доки на каком принципе происходит согласование кодеков
ведь можно решить типа так
[from-internal-custom]
exten => _4XXX,1,Set(PJSIP_MEDIA_OFFER(audio)=!all,ulaw)
same => n,Set(PJSIP_SEND_SESSION_REFRESH()=invite)
same => n,Dial(PJSIP/${EXTEN},b(callee-pre-dial^${EXTEN}^1))
same => n,Dial(PJSIP/${EXTEN},30)
[callee-pre-dial]
exten => _4XXX,1,Set(PJSIP_MEDIA_OFFER(audio)=!all,ulaw)
same => n,Return()
но откуда знать про это если знания из сарафанного радио
Так это же читать нужно. А тут кинул в чат запрос и тебе решение написали. Профит)
Я конечно, за чтение доки.
да и вообще сделать два контекста (для телефонов)...один с видео, другой без и заморачиваться не надо с префиксами
exten => _XXXX,1,Set(CALLER_USERAGENT=${SIP_HEADER(User-Agent)})
same => n,Set(CALLED_USERAGENT=${SIPPEER(${EXTEN},useragent)}) same => n,NoOp(CALLER_USERAGEN: ${CALLER_USERAGENT})
same => n,NoOp(CALLED_USERAGEN: ${CALLED_USERAGENT})
same => n,GotoIf($[ "${CALLER_USERAGENT}" = "Cisco-CP8845/12.8.1" & "${CALLED_USERAGENT}"$
same => n(video_call),NoOp(VIDEO)
same => n,Dial(SIP/${EXTEN})
same => n,Hangup()
same => n(audio_call),NoOp(AUDIO)
ВОТ ЧТО ТУТ ПРОПИСАТЬ, ЧТОБЫ БЫЛО ТОКА АУДИ
same => n,Dial(SIP/${EXTEN},30)
same => n,Hangup()
даже не знаю на что можно пожаловаться когда видел практически всё, а вам стоит почитать доки на каком принципе происходит согласование кодеков
ведь можно решить типа так
[from-internal-custom]
exten => _4XXX,1,Set(PJSIP_MEDIA_OFFER(audio)=!all,ulaw)
same => n,Set(PJSIP_SEND_SESSION_REFRESH()=invite)
same => n,Dial(PJSIP/${EXTEN},b(callee-pre-dial^${EXTEN}^1))
same => n,Dial(PJSIP/${EXTEN},30)
[callee-pre-dial]
exten => _4XXX,1,Set(PJSIP_MEDIA_OFFER(audio)=!all,ulaw)
same => n,Return()
но откуда знать про это если знания из сарафанного радио
ну вот же Вам написали @Anatoliy_St