update
This commit is contained in:
parent
3f38ba1177
commit
a6e0a783c0
5 changed files with 124 additions and 13 deletions
16
codecs.conf
16
codecs.conf
|
@ -1,20 +1,20 @@
|
|||
[speex]
|
||||
; CBR encoding quality [0..10]
|
||||
; used only when vbr = false
|
||||
quality => 3
|
||||
quality => 10
|
||||
|
||||
; codec complexity [0..10]
|
||||
; tradeoff between cpu/quality
|
||||
complexity => 2
|
||||
complexity => 5
|
||||
|
||||
; perceptual enhancement [true / false]
|
||||
; improves clarity of decoded speech
|
||||
enhancement => true
|
||||
enhancement => false
|
||||
|
||||
; voice activity detection [true / false]
|
||||
; reduces bitrate when no voice detected, used only for CBR
|
||||
; (implicit in VBR/ABR)
|
||||
vad => true
|
||||
vad => false
|
||||
|
||||
; variable bit rate [true / false]
|
||||
; uses bit rate proportionate to voice complexity
|
||||
|
@ -231,9 +231,17 @@ type=opus
|
|||
max_playback_rate=48000
|
||||
max_bandwidth=full
|
||||
bitrate=64000
|
||||
cbr=yes
|
||||
packet_loss=10
|
||||
signal=music
|
||||
application=audio
|
||||
|
||||
[opus96]
|
||||
type=opus
|
||||
max_playback_rate=48000
|
||||
max_bandwidth=full
|
||||
bitrate=96000
|
||||
cbr=yes
|
||||
packet_loss=10
|
||||
signal=music
|
||||
application=audio
|
||||
|
|
|
@ -45,3 +45,4 @@ dsp_drop_silence=yes
|
|||
[bridge1]
|
||||
type=bridge
|
||||
max_members=10
|
||||
sound_only_person=/opt/asterisk/sounds/confbridge-only-participant
|
||||
|
|
|
@ -3,6 +3,50 @@ static=yes
|
|||
writeprotect=no
|
||||
clearglobalvars=no
|
||||
|
||||
[extdn42modems]
|
||||
exten => busy,1,NoOp()
|
||||
same => n,PlayBack(silence/1&im-sorry&all-circuits-busy-now)
|
||||
same => n,Hangup()
|
||||
|
||||
exten => 00,200,NoOp()
|
||||
same => n,GotoIf($["${DEVICE_STATE(PJSIP/modem0)}" = "BUSY"]?busy,1:)
|
||||
same => n,Dial(PJSIP/modem0/sip:0@[fd07:d34:7969:2f::6]:5060)
|
||||
same => n,Hangup()
|
||||
|
||||
exten => 01,200,NoOp()
|
||||
same => n,GotoIf($["${DEVICE_STATE(PJSIP/modem1)}" = "BUSY"]?busy,1:)
|
||||
same => n,Dial(PJSIP/modem1/sip:0@[fd07:d34:7969:2f::6]:5061)
|
||||
same => n,Hangup()
|
||||
|
||||
exten => 02,200,NoOp()
|
||||
same => n,GotoIf($["${DEVICE_STATE(PJSIP/modem2)}" = "BUSY"]?busy,1:)
|
||||
same => n,Dial(PJSIP/modem2/sip:0@[fd07:d34:7969:2f::6]:5062)
|
||||
same => n,Hangup()
|
||||
|
||||
exten => 03,200,NoOp()
|
||||
same => n,GotoIf($["${DEVICE_STATE(PJSIP/modem3)}" = "BUSY"]?busy,1:)
|
||||
same => n,Dial(PJSIP/modem3/sip:0@[fd07:d34:7969:2f::6]:5063)
|
||||
same => n,Hangup()
|
||||
|
||||
exten => 04,200,NoOp()
|
||||
same => n,GotoIf($["${DEVICE_STATE(PJSIP/modem4)}" = "BUSY"]?busy,1:)
|
||||
same => n,Dial(PJSIP/modem4/sip:0@[fd07:d34:7969:2f::6]:5064)
|
||||
same => n,Hangup()
|
||||
|
||||
exten => 05,200,NoOp()
|
||||
same => n,GotoIf($["${DEVICE_STATE(PJSIP/modem5)}" = "BUSY"]?busy,1:)
|
||||
same => n,Dial(PJSIP/modem5/sip:0@[fd07:d34:7969:2f::6]:5065)
|
||||
same => n,Hangup()
|
||||
|
||||
exten => 06,200,NoOp()
|
||||
same => n,GotoIf($["${DEVICE_STATE(PJSIP/modem6)}" = "BUSY"]?busy,1:)
|
||||
same => n,Dial(PJSIP/modem6/sip:0@[fd07:d34:7969:2f::6]:5066)
|
||||
same => n,Hangup()
|
||||
|
||||
exten => _X!,200,NoOp()
|
||||
same => n,Playback(silence/1&im-sorry&check-number-dial-again&silence/1)
|
||||
same => n,Hangup()
|
||||
|
||||
[extdn42whois]
|
||||
exten => _X!,200,Set(CALLNUM=${EXTEN})
|
||||
same => n,Goto(s,1)
|
||||
|
@ -58,15 +102,27 @@ exten => 3,100,NoOp()
|
|||
same => n,Return()
|
||||
|
||||
exten => 4,100,NoOp()
|
||||
same => n,Read(TMPNOM,/opt/asterisk/sounds/0005-unreeeal_superhero_3,1,,1,0.1)
|
||||
same => n,Dial(AudioSocket/10.127.8.195:3619/d17b8c7e-458e-4d4a-96a8-66b01dc082e2/c(slin),,g)
|
||||
same => n,Return()
|
||||
|
||||
exten => 5,100,NoOp()
|
||||
same => n,Read(TMPNOM,/opt/asterisk/sounds/0006-external,1,,1,0.1)
|
||||
same => n,Read(TMPNOM,/opt/asterisk/sounds/0005-unreeeal_superhero_3,1,,999,0.1)
|
||||
same => n,Return()
|
||||
|
||||
exten => 6,100,NoOp()
|
||||
same => n,Read(TMPNOM,/opt/asterisk/sounds/0009-macroform-cold_day,1,,1,0.1)
|
||||
same => n,Read(TMPNOM,/opt/asterisk/sounds/0006-external,1,,999,0.1)
|
||||
same => n,Return()
|
||||
|
||||
exten => 7,100,NoOp()
|
||||
same => n,Read(TMPNOM,/opt/asterisk/sounds/0009-macroform-cold_day,1,,999,0.1)
|
||||
same => n,Return()
|
||||
|
||||
exten => 8,100,NoOp()
|
||||
same => n,Read(TMPNOM,/opt/asterisk/sounds/0013-f9_lapix_ash,1,,999,0.1)
|
||||
same => n,Return()
|
||||
|
||||
exten => 9,100,NoOp()
|
||||
same => n,Read(TMPNOM,/opt/asterisk/sounds/0004-little_computer_boy,1,,999,0.1)
|
||||
same => n,Return()
|
||||
|
||||
exten => _X,100,NoOp()
|
||||
|
@ -93,10 +149,19 @@ exten => 0006/_42403618X!,5,Dial(PJSIP/REDACTED,300,m)
|
|||
exten => 0007/_42403618X!,5,Dial(PJSIP/REDACTED,300,m)
|
||||
exten => 0008/_42403618X!,5,Dial(PJSIP/REDACTED,300,m)
|
||||
exten => 0009/424036180009,5,Goto(pstnrecv,${EXTEN},5)
|
||||
exten => 0009/424036180006,5,Dial(PJSIP/REDACTED,60,r)
|
||||
exten => 0009/424036180008,5,Dial(PJSIP/REDACTED,60,r)
|
||||
exten => 0009/_42403618X!,5,Dial(PJSIP/REDACTED&PJSIP/REDACTED,60,r)
|
||||
exten => 0010/_42403618X!,5,Dial(PJSIP/REDACTED&PJSIP/REDACTED,300,m)
|
||||
exten => 0000,5,Goto(extmymenu,${EXTEN},200)
|
||||
exten => 0 ,5,Goto(extmymenu,${EXTEN},200)
|
||||
exten => 00 ,5,Dial(AudioSocket/10.127.8.195:3619/d17b8c7e-458e-4d4a-96a8-66b01dc082e2/c(slin))
|
||||
exten => 3618,5,Goto(extmymenu,${EXTEN},210)
|
||||
exten => 4200/_42403618X!,5,ChanSpy()
|
||||
exten => 4201/_42403618X!,5,ChanSpy(,q)
|
||||
exten => 4242,5,Goto(extdn42whois,${EXTEN},200)
|
||||
exten => 4243/_42403618X!,5,Dial(PJSIP/modem/sip:424026019@voip.burble.dn42:5060)
|
||||
exten => _3618XX,5,Goto(extdn42modems,${EXTEN:4},200)
|
||||
exten => _X! ,5,Playback(silence/1&im-sorry&check-number-dial-again&silence/1)
|
||||
same => n,GotoIf($["${DIALSTATUS}" = "CHANUNAVAIL"]?chanunavail,1:)
|
||||
|
||||
|
@ -142,10 +207,15 @@ exten => _0XXXX. ,2,Goto(extpeers,424${EXTEN},5)
|
|||
exten => _X! ,2,Goto(extpeers,42403618${EXTEN},5)
|
||||
|
||||
[pstnphone]
|
||||
exten => 0,5,Goto(extmyself,00,5)
|
||||
exten => 1,5,Goto(extmyself,0009,5)
|
||||
exten => 2,5,Goto(extmyself,8613700000000,5)
|
||||
exten => 3,5,Goto(extmyself,8613700000001,5)
|
||||
exten => 4,5,Goto(extmyself,8613700000002,5)
|
||||
exten => _4240X!,5,Goto(extmyself,${EXTEN},5)
|
||||
exten => _X!,5,Goto(extmyself,86${EXTEN},5)
|
||||
|
||||
[pstnrecv]
|
||||
exten => _X!,5,Set(CALLERID(number)=REDACTED)
|
||||
same => n,Dial(PJSIP/REDACTED&PJSIP/REDACTED,300,r)
|
||||
same => n,Dial(PJSIP/REDACTED&PJSIP/REDACTED,60,r)
|
||||
same => n,Hangup()
|
||||
|
|
38
pjsip.conf
38
pjsip.conf
|
@ -18,7 +18,7 @@ bind=[::]:5060
|
|||
type=endpoint
|
||||
context=jerry
|
||||
;message_context=jerry-msg
|
||||
allow=!all,opusloss,ulaw,alaw,speex
|
||||
allow=!all,opus64,opusloss,speex32,ulaw,alaw
|
||||
direct_media=no ; proxy all calls
|
||||
rtp_ipv6=yes
|
||||
rtp_symmetric=yes
|
||||
|
@ -31,7 +31,7 @@ rewrite_contact=yes
|
|||
|
||||
[peers-endpoint-template](!,endpoint-template)
|
||||
context=jerry-peers
|
||||
allow=!all,ulaw,alaw,opusloss
|
||||
allow=!all,opus64,speex32,ulaw,alaw
|
||||
|
||||
[auth-template](!)
|
||||
type=auth
|
||||
|
@ -180,7 +180,6 @@ match=172.20.29.73
|
|||
[jrb0001](peers-endpoint-template)
|
||||
aors = jrb0001
|
||||
identify_by=ip
|
||||
allow=!all,opusloss,speex,ulaw,alaw
|
||||
[jrb0001](aor-template)
|
||||
contact=sip:[fd42:5d71:219:1008:216:3eff:fe9d:882f]:5060
|
||||
[jrb0001]
|
||||
|
@ -197,3 +196,36 @@ contact=sip:172.20.14.37:5060
|
|||
type=identify
|
||||
endpoint=kioubit
|
||||
match=172.20.14.37
|
||||
|
||||
[modem](peers-endpoint-template)
|
||||
allow=!all,alaw,ulaw
|
||||
|
||||
[modem0](peers-endpoint-template)
|
||||
allow=!all,alaw,ulaw
|
||||
device_state_busy_at=1
|
||||
|
||||
[modem1](peers-endpoint-template)
|
||||
allow=!all,alaw,ulaw
|
||||
device_state_busy_at=1
|
||||
|
||||
[modem2](peers-endpoint-template)
|
||||
allow=!all,alaw,ulaw
|
||||
device_state_busy_at=1
|
||||
|
||||
[modem3](peers-endpoint-template)
|
||||
allow=!all,alaw,ulaw
|
||||
device_state_busy_at=1
|
||||
|
||||
[modem4](peers-endpoint-template)
|
||||
allow=!all,alaw,ulaw
|
||||
device_state_busy_at=1
|
||||
|
||||
[modem5](peers-endpoint-template)
|
||||
allow=!all,alaw,ulaw
|
||||
device_state_busy_at=1
|
||||
|
||||
[modem6](peers-endpoint-template)
|
||||
allow=!all,alaw,ulaw
|
||||
device_state_busy_at=1
|
||||
|
||||
[anonymous](peers-endpoint-template)
|
||||
|
|
4
whois.py
4
whois.py
|
@ -36,7 +36,7 @@ def espeak(to_speak, outfile):
|
|||
timeout=10
|
||||
)
|
||||
p2 = subprocess.run(['ffmpeg', '-hide_banner', '-i', "-",
|
||||
"-vn", "-ac", "1", "-ar", "8000", f"{outfile}"],
|
||||
"-vn", "-ac", "1", "-ar", "24000", "-f", "s16le", f"{outfile}"],
|
||||
input=p1.stdout,
|
||||
capture_output=True,
|
||||
check=True,
|
||||
|
@ -125,7 +125,7 @@ def main():
|
|||
# argv[1]: as number
|
||||
# argv[2]: unique identifier
|
||||
unid = argv[2]
|
||||
outfile = OUTDIR / f"{unid}.wav"
|
||||
outfile = OUTDIR / f"{unid}.sln24"
|
||||
errfile = OUTDIR / f"{unid}{ERRSOUND.suffix}"
|
||||
cleanup(outfile, errfile)
|
||||
try:
|
||||
|
|
Loading…
Reference in a new issue