Hallo,
Wie versprochen hier die Config.
Ich benutze Debian mit dem Paket asterisk-oh323.
Im ARS hab ich ein H323 Gateway
(ip der asterisk) eingetragen (codec default)
sowie die Rufnummer 700-749 auf die Asterisk gerouted.
Als Endgeraete auf der Asterisk nutze ich nur SIP. Ich hab ein Beispiel
fuer das X-Lite Softwarephone mitgeschickt.
In der extensions.conf habe ich die wichtigsten Anlagenmerkmale wie sie
auch auf der omnipcx bestehen mit gleichen Rufnummer nachgebildet.
Ausgehend wird ueber sipsnip telefoniert, da dieser Anbieter per
*33callerid*Rufummer die Uebertragung der eigenen Nummer, nach
Freischaltung, gestattet.
Die Dateien fuer die Mailboxen usw muessen noch nach eigenem Gusto
angepasst werden.
In Arbeit sind noch ENUM, Callgroups usw....
Wenn Ihr Verbesserungen finden, bitte ich Euch die mir mitzuteilen.
gruss
klangwelt
oh323.conf
[general]
listenAddress=0.0.0.0
listenPort=1720
tcpStart=10000
tcpEnd=20000
udpStart=10000
udpEnd=20000
fastStart=no
h245Tunnelling=yes
h245inSetup=yes
inBandDTMF=no
jitterMin=85
jitterMax=400
ipTos=lowdelay
outboundMax=10
inboundMax=10
simultaneousMax=20
;crlCallNumber=20
;crlCallTime=20000
;crlThreshold=30
;bandwidthLimit=1024
wrapLibTraceLevel=1
libTraceLevel=0
libTraceFile=stdout
gatekeeper=DISABLE
userInputMode=TONE
amaFlags=default
accountCode=H323
; bitte auf eigenen Context anpassen!!!
context=MESH
[codecs]
codec=G711U
frames=20
sip.conf
[general]
context=meshvonextern
port=5060
bindaddr=0.0.0.0)
srvlookup=yes[general]
language=en
register => user
[email protected]/sipsnip
[701]
;X-LITE EXAMPLE
;Turn off silence suppression in X-Lite ("Transmit Silence"=YES)!
;Note that Xlite sends NAT keep-alive packets, so qualify=yes is not needed
type=friend
regexten=701 ; When they register, create extension 1234
username=701
secret=passwordsetzen
callerid="ASTERISK <701>"
host=dynamic
nat=no ; X-Lite is behind a NAT router
canreinvite=yes ; Typically set to NO if behind NAT
disallow=all
allow=gsm ; GSM consumes far less bandwidth than ulaw
allow=ulaw
allow=alaw
context=international
[sipsnip]
type=friend
username=benutzername
fromuser=benutzername
secret=password
context=sipsnip_in
host=sipsnip.com
fromdomain=sipsnip.com
insecure=very
reinvite=no
canreinvite=no
nat=no
allow=all
extensions.conf
[general]
static=yes
writeprotect=no
[globals]
exten => h,1,Hangup
[default]
; Konferenzraum
exten => 6850,1,Answer()
exten => 6850,2,Wait(1)
exten => 6850,3,MeetMe()
; Konferenzraum mit direkter Anwahl der Raumnummer
; nur von direkt an Asterisk angebundenen Clients moeglich
exten => _6850.,1,Answer()
exten => _6850.,2,Wait(1)
exten => _6850.,3,MeetMe(${EXTEN:5})
; Extensions 700-749 an SIP
exten => _7[0-4]X,1,Macro(stdexten,SIP/${EXTEN})
[default-intern]
; Testen von Musiconhold
exten => 6601,1,WaitMusicOnHold(300)
; Loeschen der Rufumleitung
exten => *21*,1,DBdel(CF/${CALLERIDNUM})
exten => *21*,2,Wait(1)
exten => *21*,3,Playback(vm-goodbye)
exten => *21*,4,Wait(1)
exten => *21*,5,Hangup()
; Abfrage Mailbox
exten => *88/,1,Answer()
exten => *88/,2,Wait(1)
exten => *88/,3,VoicemailMain()
exten => *88/,4,Hangup()
exten => *88/_Z.,1,Answer()
exten => *88/_Z.,2,Wait(1)
exten => *88/_Z.,3,VoicemailMain(s${CALLERIDNUM})
exten => *88/_Z.,4,Hangup()
; Abfrage Mailbox ueber Nebenstelle
; auch von extern moeglich
exten => 749,1,Answer()
exten => 749,2,Wait(1)
exten => 749,3,VoicemailMain()
exten => 749,4,Hangup()
; Setzen der Rufumleitung
exten => _*21*.,1,DBput(CF/${CALLERIDNUM}=${EXTEN:4})
exten => _*21*.,2,Wait(1)
exten => _*21*.,3,SayDigits(${EXTEN:4})
exten => _*21*.,4,Playback(vm-goodbye)
exten => _*21*.,5,Wait(1)
exten => _*21*.,6,Hangup()
[macro-stdexten]
; Automatische Erstellung von incoming Nebenstellen
exten => s,1,DBget(TARGET=CF/${MACRO_EXTEN})
exten => s,2,Goto(1000)
;exten => s,102,LookupCIDName()
exten => s,102,SetCIDName(${CALLERIDNAME})
exten => s,103,Dial(${ARG1},20)
exten => s,104,Answer()
exten => s,105,Wait(1)
exten => s,106,Voicemail(u${MACRO_EXTEN})
exten => s,107,Hangup()
exten => s,204,Answer()
exten => s,205,Wait(1)
exten => s,206,Voicemail(b${MACRO_EXTEN})
exten => s,207,Hangup()
exten => s,1000,Dial(SIP/${TARGET})
exten => s,1001,Dial(OH323/${TARGET}@192.168.100.3)
exten => s,1002,SetCallerID(benutzernamevonsipsnip)
exten => s,1003,Dial(SIP/${TARGET}@sipsnip,,r)
[meshvonextern]
include => default
include => trunk-meshvonextern
[kostenlos]
include => MESH
include => parkedcalls
ignorepat => 0
[MESH]
include => kostenlos
include => default-intern
include => default
ignorepat => 0
[Deutschland]
include => MESH
include => trunk-deutschland
ignorepat => 0
[international]
include => Deutschland
include => trunk-international
ignorepat => 0
[trunk-meshvonextern]
exten => _7[0-4]X,1,Macro(stdexten,SIP/${EXTEN})
exten => _7[0-4]X,2,Congestion()
exten => _7[0-4]X,103,Busy()
; Hier sind die Rufnummer der OMNIPCX
; in diesem Fall nutzen wird dort nur 2 Stellige Rufnummern
exten => _ZX,1,Dial(OH323/${EXTEN}@192.168.100.3)
exten => _ZX,2,Congestion()
exten => _ZX,103,Busy()
[trunk-international]
exten => _000Z.,1,DBput(CID/${UNIQUEID}=${CALLERIDNUM})
exten => _000Z.,2,SetCallerID(benutzernamevonsipsnip)
exten => _000Z.,3,DBget(TARGET=CID/${UNIQUEID})
exten => _000Z.,4,Dial(SIP/*33492117496999${TARGET}*${EXTEN:3}@sipsnip,,r)
exten => _000Z.,5,DBdel(CID/${UNIQUEID})
[trunk-deutschland]
exten => _00Z.,1,DBput(CID/${UNIQUEID}=${CALLERIDNUM})
exten => _00Z.,2,SetCallerID(benutzernamevonsipsnip)
exten => _00Z.,3,DBget(TARGET=CID/${UNIQUEID})
exten => _00Z.,4,Dial(SIP/*33492117496999${TARGET}*49${EXTEN:2}@sipsnip,,r)
exten => _00Z.,5,DBdel(CID/${UNIQUEID})