Zwei Accounts beim selben Provider, der zweite Account kann nicht telefonieren

philwo

Neuer User
Mitglied seit
7 Mai 2005
Beiträge
99
Punkte für Reaktionen
0
Punkte
6
Hallo,

ich habe hier folgende Situation: Ein Asterisk soll zwei Accounts bei einem VoIP-Provider benutzen, um eine getrennte Abrechnung von dienstlichen und privaten Gesprächen einfach lösen zu können. Also habe ich Asterisks sip.conf wie folgt aufgebaut:

Code:
[general]
bindport=5060
bindaddr=0.0.0.0
context=sonstige
srvlookup=yes
realm=asterisk.firma.de
fromdomain=asterisk.firma.de
language=de
useragent=tollePBX/1.0
checkmwi=10
allowoverlap=yes
dtmfmode=rfc2833
videosupport=no
allowguest=no
allowsubscribe=no
notifyringing=yes
notifyhold=yes
useclientcode=yes
nat=no
directrtpsetup=no
canreinvite=no
qualify=no
rtptimeout=60
rtpkeepalive=10
progressinband=never

disallow=all
allow=alaw
allow=ulaw

register => 491805111222333:[email protected]/491805111222333
register => 491805444555666:[email protected]/491805444555666

[provider_out_buero]
type=peer
username=491805111222333
fromuser=491805111222333
secret=xxxxxx
host=provider.de
fromdomain=provider.de
insecure=port,invite
amaflags=billing

[provider_out_privat]
type=peer
username=491805444555666
fromuser=491805444555666
secret=xxxxxx
host=provider.de
fromdomain=provider.de
insecure=port,invite
amaflags=billing

[provider_inbound]
type=peer
fromdomain=provider.de
host=provider.de
context=von_provider
amaflags=documentation

[buero]
callerid="Meine Firma" <492222456789>
type=friend
host=dynamic
secret=xxxxxx
context=buero
qualify=yes
accountcode="kd12345_1"

[privat]
callerid=Familie Mustermann" <492222456789>
type=friend
host=dynamic
secret=xxxxxx
context=privat
qualify=yes
accountcode="kd12345_2"

Die Telefonanlage wählt dann jenachdem ob vom privaten oder vom Bürotelefon angerufen wird über den entsprechenden User raus.. bloß gehen die Gespräche über den User "privat" nicht, über "buero" geht es einwandfrei. Ich sehe Asterisk im sip debug log fleißig INVITEs an den Provider schicken, doch es kommt nie eine Antwort. Über "buero" geht es sofort.

Hat jemand eine Idee, woran sowas liegen könnte?

Viele Grüße,
Philipp
 
Zuletzt bearbeitet:
Deine sip.conf ist ziemlich unsinnig - aber das lassen wir mal außen vor. (man verwendet z.B. keinen type=friend in Providerkontexten)

Vermutlich liegt Dein Fehler in der extensions.conf - und die hast Du uns genausowenig gezeigt wie die CLI Ausgabe bei einem VErbindungsversuch.

Wie soll man Dir mit so wenig Informationen weiterhelfen können :noidea:
 
Moment mal Betateilchen :D Erstens ist die sip.conf ziemlich genau nach deinem Kurs erstellt ;) Außerdem hab ich soweit alle Informationen gegeben, die ich hatte (das Setup läuft in einem Büro, wo ich gerade nicht mehr bin und deswegen keinen Anruf tätigen kann, um CLI-Ausgaben des Asterisks zu erhalten)

Aber zu deinen konkreten Fragen (erstmal danke für die Hilfe):
* Die "type=friend"s sind keine Provider sondern Telefone (genauer: Ein Smartnode 4638, an der eine Auerswald Commander Basic Anlage angeschlossen ist, der Smartnode verwendet dann je nach MSN die raustelefonieren will den "buero"-User oder den "privat"-User)

* CLI-Ausgaben: Ich kann gerade keine Testanrufe tätigen, bin nicht mehr im Büro und leider hat mein Debian-Asterisk genau die Sachen nicht geloggt :roll:

* Ich dachte nicht, dass es an der extensions.conf liegt, weil Gespräche über buero funktionieren und über privat nicht... aber hier ist sie, die extensions.conf:

Code:
[general]
static=yes
writeprotect=no

[buero]
include => intern
include => voicemail
include => echotest
include => musictest
include => outbound_buero
exten => i,1,Playback,invalid
exten => i,n,Hangup

[privat]
include => intern
include => voicemail
include => echotest
include => musictest
include => outbound_privat
exten => i,1,Playback,invalid
exten => i,n,Hangup

[intern]
; noch nichts definiert, interne Gespräche macht die Auerswald-Anlage derzeit selbst

[voicemail]
exten => 800,1,NoCDR
exten => 800,n,VoicemailMain,${CALLERID(num)}|s
exten => asterisk,1,VoicemailMain,${CALLERID(num)}|s

[echotest]
exten => 801,1,NoCDR
exten => 801,n,Answer
exten => 801,n,Wait,1
exten => 801,n,Playback,demo-echotest
exten => 801,n,Echo
exten => 801,n,Playback,demo-echodone
exten => 801,n,Hangup

[musictest]
exten => 802,1,NoCDR
exten => 802,n,Answer
exten => 802,n,MusicOnHold

[macro-inboundruf]
exten => s,1,NoOp,macro-inboundruf called
exten => s,n,Set,dst=${ARG1}
exten => s,n,Set,voicemail=${ARG2}
exten => s,n,Set,calltime=${STRFTIME(${EPOCH},UTC,%Y\-%m\-%d\ %H\-%M)}
exten => s,n,Dial,${dst}|20
exten => s,n,Goto,s-${DIALSTATUS}|1
exten => s-BUSY,1,VoiceMail,${voicemail}|b
exten => s-BUSY,n,Hangup
exten => s-NOANSWER,1,VoiceMail,${voicemail}|u
exten => s-NOANSWER,n,Hangup
exten => _s-.,1,Goto,s-NOANSWER|1

[macro-outboundruf]
exten => s,1,NoOp,macro-outboundruf called
exten => s,n,Set,dst=${ARG1}
exten => s,n,Dial,${dst}
exten => s,n,Goto,s-${DIALSTATUS}|1
exten => s,n,Hangup
exten => s-BUSY,1,Playtones,busy
exten => s-BUSY,n,Busy,5
exten => s-CANCEL,1,Hangup
exten => s-CONGESTION,1,Playtones,congestion
exten => s-CONGESTION,n,Congestion,5
exten => s-CONGESTION,n,Hangup

[outbound_buero]
; Der gewählten Nummer fehlt noch Landesvorwahl und Ortsnetzvorwahl
exten => _Z.,1,macro,outboundruf|SIP/00492222${EXTEN}@provider_out_buero
; Der gewählten Nummer fehlt noch Landesvorwahl
exten => _0Z.,1,macro,outboundruf|SIP/0049${EXTEN:1}@provider_out_buero
; Die gewählte Nummer ist schon vollständig
exten => _00.,1,macro,outboundruf|SIP/${EXTEN}@provider_out_buero

[outbound_privat]
; Der gewählten Nummer fehlt noch Landesvorwahl und Ortsnetzvorwahl
exten => _Z.,1,macro,outboundruf|SIP/00492222${EXTEN}@provider_out_privat
; Der gewählten Nummer fehlt noch Landesvorwahl
exten => _0Z.,1,macro,outboundruf|SIP/0049${EXTEN:1}@provider_out_privat
; Die gewählte Nummer ist schon vollständig
exten => _00.,1,macro,outboundruf|SIP/${EXTEN}@provider_out_privat

[von_provider]
; Büro (soll erstmal alles auf die Zentrale, Durchwahl -0)
exten => 491805111222333,1,macro,inboundruf|SIP/buero@0|buero
; Privat (privates Telefon hat Durchwahl -30 an der PBX)
exten => 491805444555666,1,macro,inboundruf|SIP/privat@30|privat

[sonstige]

Fehlt noch etwas? Ich habe einen Tippfehler in meiner sip.conf gefunden.. bei der CallerID des Users privat fehlt ein Anführungszeichen vor dem Namen. Habe es jetzt korrigiert, kann aber leider keinen Test machen, ob das den Fehler löst...

Gibt es denn sonst etwas, was du an der sip.conf "ziemlich unsinnig" findest? (Ich lern immer gern dazu, habe sie nach bestem Wissen so erstellt)

Edit: Die disallow/allow Sachen die bei den einzelnen Kontexten noch drinstanden waren natürlich überflüssig nach dieser Config, die stammen noch von Experimenten mit dem g729 Codec (den mein Provider zwar im SDP anbietet, dann aber den Call einfach verwirft, das ist aber eine Sache :roll:)

Edit 2: So wie es aussieht geht es jetzt, nachdem ich den Tippfehler in der CallerID behoben habe. Ich liebe Asterisk noch immer dafür, dass er jegliche Fehler, die im Vorfeld feststellbar wären, einfach verschweigt.. Betateilchen, wenn dir noch etwas auffällt, was an der sip.conf nicht gut wäre, immer her damit :) Wie gesagt, über Verbesserungen freu ich mich immer.
 
Zuletzt bearbeitet:
Kostenlos!

Statistik des Forums

Themen
248,915
Beiträge
2,304,954
Mitglieder
378,626
Neuestes Mitglied
0xFaB1