2'te ISDN-MSN auf SIP-Gerät -> extension.conf

pixel

Neuer User
Mitglied seit
25 Jan 2006
Beiträge
105
Punkte für Reaktionen
0
Punkte
16
Hallo zusammen,

ich betreibe einen Asterisk 1.4.11 mit der aktuelle chan_capi HEAD. Ist ne ganz minimale Config aber die tuts. Als Telefon hängt ein Snom360 dran. Demnächst kommen aber weitere SIP-Geräte dazu-

Im Moment ist es so dass das Snome360 intern unter der Nummer 100 erreichbar ist und von extern unter der MSN 123456 was auch funktioniert. Der relevante Teil der extension.conf sieht so aus:
Code:
[capi-in]
exten => 123456,1,Dial(Sip/100,20)
exten => 123456,n,Goto(s-${DIALSTATUS},1)
exten => s-NOANSWER,1,VoiceMail(100,u)
exten => s-BUSY,1,VoiceMail(100,b)
exten => s-ANSWER,1,Hangup()
exten => _s-.,1,Goto(s-NOANSWER,1)

In der sip.conf ist als incoming MSN lediglich die 123456 definiert. Nun soll nächste Woche ein weiteres SIP-Telefon hinzu kommen. Die soll intern die 101 bekommen und auf die externe MSN 345678 reagieren.
Wie bilde ich das mit möglichst wenig Zeilen in der extension.conf ab?

Viele Grüße
pixel
 
so, ich habe mal soweit möglich die Dokus konsultiert. Mit den eingehend Anrufen ist es kein Problem. Hier habe ich es so:
Code:
[capi-in]
; Zielrufnummer in Variable schreiben
exten => 943250,1,Set(ZIEL=100,g)
exten => 943250,n,Goto(incoming,_ZXX,1)
exten => 250265,1,Set(ZIEL=101,g)
exten => 250265,n,Goto(incoming,_ZXX,1)
exten => 250272,1,Answer()
exten => 250272,n,Goto(mailbox,80,1)

[incoming]
exten => _ZXX,1,Dial(SIP/${ZIEL},20)
exten => _ZXX,n,Goto(s-${DIALSTATUS},1)
exten => s-NOANSWER,1,VoiceMail(${ZIEL},u)
exten => s-BUSY,1,VoiceMail(${ZIEL},b)
exten => s-ANSWER,1,Hangup()
exten => _s-.,1,Goto(s-NOANSWER,1)
In [capi-in] setze ich die Variable $ZIEL mit der internen Durchwahl in Abhängigkeit der angerufenen MSN. In [incomming] wird dann der interne Teilnehmer angewählt. Ist das so ok oder läßt sich das evtl. eleganter lösen?

Schlimmer ist es jetz bei den ausgehenden Anrufen. Hier soll natürlich die entsprechende MSN als ${CALLERID} gesetzt werden und das bekomme ich nicht hin. Ich bräuchte eine Möglichkeit die Variable ${QUELLE} (siehe unten) mit der MSN in abhängikeit vom Teilnehmer zu setzen.

Also:

Wählt der interne SIP-Teilnehmer 100 raus (Anmeldeuser=100) setze die Variable QUELLE=123456. Wählt der SIP-User 101 raus setze sie auf 4567890.
Code:
[outgoing]
exten => _XX.,1,Set(${CALLERID(num)}=${QUELLE})
exten => _XX.,n,Dial(CAPI/contr1/${EXTEN})
exten => _XX.,hint,CAPI/${EXTEN}
geht das irgendwie?

Viele Grüße
pixel
 
das Goto muss m. E. so aussehen damit es klappt:

Code:
exten => 943250,n,Goto(incoming,{ZIEL},1)

für beide Nummern bitte. Oder funktioniert es schon?
 
Mich würde auch interessieren, wie man ausgehende Anrufe je nach interner MSN unterschiedlich behandelt. Weiss das jemand?
 
Weiss das jemand?

Ich habe das so gelöst:

[user1]
exten => _XXX.,1,Set(voipjet-id=49762191)
exten => _XXX.,n,Set(sipgate-id=5555)
exten => _XXX.,n,Set(axxeso-id=02237)
exten => _XXX.,n,Set(zap-id=76217)

Jeder User (wobei ein User natürlich mehrere Telefone haben kann) hat seinen Kontext. Dort werden die Variablen gesetzt.

Ein Anruf würde dann z.B so aussehen:

[sipgate]
exten => _X.,1,Dial(SIP/${EXTEN}@${sipgate-id},60,Tt)
Die verschiedenen Sipgateaccounts in der sip.conf heissen wie die sipgate-id.
oder für ISDN

[zap-ext]
exten => _X.,1,Set(CALLERID(number)=(${zap-id}))
exten => _X.,2,Dial(Zap/g3/${EXTEN},60,Tt)
 
Danke für die Antwort, aber es bleibt noch eine Frage offen:
wie erkennt Asterisk die unterschiedlichen User, wenn sie am internen ISDN-Bus hängen?
Beispiel: User 1 hat MSN 111, User 2 hat MSN 222. Wie kann man für ausgehende Anrufe von MSN 111 den Kontext [user1] verwenden und für die von MSN 222 den Kontext[user2].

Bei SIP-Anbindung ist das dank direkter Registrierung ja kein Problem, aber wie macht man es für den internen S0-Bus?
 
Bei SIP-Anbindung ist das dank direkter Registrierung ja kein Problem, aber wie macht man es für den internen S0-Bus?

Versuche es mal so:

[zap-in]; ermitteln der internen MSN
exten => _X.,1,NoOp()
exten => _X.,2,Goto(${CALLERIDNUM},${EXTEN},1)
exten => _X.,n,Hangup


[111];Msn1
exten => _XXX.,1,Set(voipjet-id=49762191)
exten => _XXX.,n,Set(sipgate-id=5555)

[222];Msn2
exten => _XXX.,1,Set(voipjet-id=49762191)
exten => _XXX.,n,Set(sipgate-id=5555)
 
Cool, danke!
Funktioniert. Hatte es schonmal damit probiert aber es lag an dem ${CALLERIDNUM}.

Das gibt es bei 1.4 nicht mehr, es heisst jetzt ${CALLERID(num)}.
Damit sollte auch das GOTO klappen.
 
Kostenlos!

Neueste Beiträge

Statistik des Forums

Themen
248,876
Beiträge
2,303,699
Mitglieder
378,541
Neuestes Mitglied
FR6r24