Hi,
tolles Forum, ich habe schon für viele meiner Probleme eine Lösung oder zumindest einen Lösungsansatz gefunden. Aber an dem letzten Problem beiß ich mir die Zähne aus.
Konfiguration: Hinter einer Fritzbox 7170 sitzt ein Server (Ubuntu 10.04 LTS, Asterisk 1.6.2.5), der als Asterisk-Server fungiert. Ich verwende (bzw. will verwenden) die Fritzbox als SIP-Gateway für die ISDN Anrufe. Ich habe das Ganze mit einem Client auch zum laufen gebracht und erfolgreich getestet (Anrufe von drin nach draußen und von draußen nach drin).
Problem: Sobald ich einen Client mehr aufnehme, bricht alles irgendwie zusammen und plötzlich lässt sich nicht einmal der vorher funktionierende Client anrufen. Ausgehende Anrufe funktionieren aber. Komischerweise funktioniert selbst die funktionierende Konfiguration mit nur einem Client dann auch nicht mehr. Weshalb ich schon die Hardware (speziell die Festplatte, die aus Flashbausteinen besteht) im Verdacht hatte, es aber noch nicht getestet habe.
Man sieht in der CLI nur bei einem eingehenden Anruf:
danach ist Ruhe. Bei der Konfiguration mit dem einen Client wurde dann immer die entsprechende Funktion aufgerufen, die man verfolgen konnte.
Anmerkungen: Ich bin noch recht neu in dem Thema Asterisk und deshalb lässt sich vermutlich noch viel vereinfachen oder verbessern (auch das Thema Sicherheit ist häufig ausgeklammert um zumindest von dieser Seite keine Fehler bei den Tests herzubekommen). Trotzdem bin ich natürlich über Anregungen immer froh und dankbar.
SIP.conf (ohne PW und IPs)
Extensions.conf
Bei Fragen, was ich mit dem Menü bezwecken will stehe ich natürlich gern zur Verfügung.
tolles Forum, ich habe schon für viele meiner Probleme eine Lösung oder zumindest einen Lösungsansatz gefunden. Aber an dem letzten Problem beiß ich mir die Zähne aus.
Konfiguration: Hinter einer Fritzbox 7170 sitzt ein Server (Ubuntu 10.04 LTS, Asterisk 1.6.2.5), der als Asterisk-Server fungiert. Ich verwende (bzw. will verwenden) die Fritzbox als SIP-Gateway für die ISDN Anrufe. Ich habe das Ganze mit einem Client auch zum laufen gebracht und erfolgreich getestet (Anrufe von drin nach draußen und von draußen nach drin).
Problem: Sobald ich einen Client mehr aufnehme, bricht alles irgendwie zusammen und plötzlich lässt sich nicht einmal der vorher funktionierende Client anrufen. Ausgehende Anrufe funktionieren aber. Komischerweise funktioniert selbst die funktionierende Konfiguration mit nur einem Client dann auch nicht mehr. Weshalb ich schon die Hardware (speziell die Festplatte, die aus Flashbausteinen besteht) im Verdacht hatte, es aber noch nicht getestet habe.
Man sieht in der CLI nur bei einem eingehenden Anruf:
Using SIP RTP CoS mark 5
danach ist Ruhe. Bei der Konfiguration mit dem einen Client wurde dann immer die entsprechende Funktion aufgerufen, die man verfolgen konnte.
Anmerkungen: Ich bin noch recht neu in dem Thema Asterisk und deshalb lässt sich vermutlich noch viel vereinfachen oder verbessern (auch das Thema Sicherheit ist häufig ausgeklammert um zumindest von dieser Seite keine Fehler bei den Tests herzubekommen). Trotzdem bin ich natürlich über Anregungen immer froh und dankbar.
SIP.conf (ohne PW und IPs)
Code:
[general]
; Port für Asterisk ändern, da Fritzbox auf dem Standartport horcht
bindport=xxx
; Adresse des Tel Servers
bindaddr=xxx
srvlookup=yes
;Absicherung, damit falsche Anmeldungen nie bestätigt bekommen, ob sie einen ri$
alwaysauthreject=yes
;Absicherung, dass keine unangemeldeten Geräte telefonieren können
allowguest=no
; deutsche Sprachsteine verwenden
language=de
register=625:geheim@xxx/625
;register=626:geheim@xxx/626
[625]
type=friend
username=625
fromuser=625
defaultuser=625
;host=dynamic
host=xxx
fromdomain=fritz.box
notifyringing=yes
secret=geheim
canreinvite=no
context=ISDN_in
bindport=5060
qualify=no
;insecure=invite
dtmfmode=rfc2833
nat=yes
;Absicherung
;disallow=all
;allow=alaw
;[626]
;type=friend
;username=626
;fromuser=626
;defaultuser=626
;host=dynamic
;host=xxx
;fromdomain=fritz.box
;notifyringing=yes
;secret=geheim
;canreinvite=no
;context=ISDN_in
;bindport=5060
;qualify=no
;insecure=invite
;dtmfmode=rfc2833
:nat=yes
;Absicherung
;disallow=all
;allaw=alaw
; EVT Anja
[*625]
callerid=ARP <*625>
;call-limit=2
context=ISDN_out
dtmfmode=rfc2833
host=dynamic
domain=xxx
type=friend
allow=all
user=*625
secret=geheim
nat=yes
canreinvite=no
mailbox=*625
; EVT Eva
[*626]
callerid=EMW <*626>
context=ISDN_out
dtmfmode=rfc2833
host=dynamic
domain=xxx
type=friend
allow=all
user=*626
secret=geheim
nat=yes
canreinvite=no
mailbox=*626
Extensions.conf
Code:
[general]
static=yes
writeprotect=no
;autofallthrough=no
[default]
; ein Makro, um mit der richtigen Nummer rauszurufen (über ISDN)
[macro-callout]
exten => s,1,SET(CALLERID(num)=${ARG2})
same => n,Dial(SIP/${ARG1}@${ARG2},45,r)
;Kontext um mit ISDN rauszutelefonieren
[ISDN_out]
exten => _ZX.,1,Macro(callout,${EXTEN},${CALLERID(num):1})
exten => _ZX.,n,Hangup()
exten => _0ZX.,1,Macro(callout,${EXTEN},${CALLERID(num):1})
exten => _0ZX.,n,Hangup()
exten => _+49X.,1,Macro(callout,${EXTEN:3},${CALLERID(num):1})
exten => _+49X.,n,Hangup()
exten => _+X.,1,Macro(callout,00${EXTEN:1},${CALLERID(num):1})
exten => _+X.,n,Hangup()
exten => _0049X.,1,Macro(callout,${EXTEN:4},${CALLERID(num):1})
exten => _0049X.,n,Hangup()
exten => _00X.,1,Macro(callout,${EXTEN},${CALLERID(num):1})
exten => _00X.,n,Hangup()
exten => *62X,1,Dial(SIP/${EXTEN},45,r)
exten => *62X,n,Hangup()
; ein Makro um die Funktionen des Menüs aufzurufen
[macro-callin]
; Innerhalb der Geschäftszeiten
exten => s,1,MusicOnHold(Welcome,11,r)
same => n,Dial(SIP/${ARG1},15,r)
same => n,GotoIf($["${DIALSTATUS}" = "BUSY"] ?busy:noanswer)
; keiner geht ran
same => n(noanswer),Wait(1)
same => n,Dial(SIP/${ARG1},60,m(default)) ; weiter klingeln lassen
same => n,GotoIf($["${DIALSTATUS}" = "BUSY"] ?busy:noanswer)
same => n,Hangup()
; besetzt oder weggedrückt
same => n(busy),Answer()
same => n,Wait(1)
same => n,Dial(SIP/${ARG1},30,m(Busy))
same => n,Wait(1)
same => n,Dial(SIP/${ARG1},300,m(default))
same => n,Hangup()
; eingehende Anrufe auf ISDN
[ISDN_in]
exten => _62X,1,Answer
exten => _62X,n,Wait(1)
exten => _62X,n,GotoIfTime(09:00-20:00,mon-fri,*,*?ISDN_righttime,${EXTEN},1)
; Außerhalb der Geschäftszeiten
exten => _62X,n,MusicOnHold(Outoftime,30)
exten => _62X,n,Wait(1)
exten => _62X,n,VoiceMail(*${EXTEN},su)
exten => _62X,n,Hangup()
; in der Geschäftszeit
[ISDN_righttime]
exten => _62X,1,Macro(callin,*${EXTEN})
exten => _62X,n,Hangup()
Bei Fragen, was ich mit dem Menü bezwecken will stehe ich natürlich gern zur Verfügung.