Ausgehende Rufnummer mit Asterisk/FreePBX übertragen

zfxn

Neuer User
Mitglied seit
20 Okt 2008
Beiträge
5
Punkte für Reaktionen
0
Punkte
0
Hallo,

ich möchte meine Festnetznummer über sipgate bei ausgehenden Anrufen übertragen. Telefonieren funktioniert in beide Richtungen einwandfrei.

Funktioniert die Rufnummerübermittlung bei jemandem mit FreePBX bzw.
Trixbox (müsste die gleiche Konfiguration sein) ?
Bzw. kann mir jemand sagen, welche Variable in der Asterisk Konfiguration genau die Rufnummer enthalten muss?
Bei mir wird soweit ich das im Debug-Output vom Asterisk gesehen hab nur CALLERID(all) gesetzt !?!

Ich verwende folgende Versionen:
Ubuntu Server 8.04
bristuff-0.4.0-RC4-xr4
Asterisk 1.4.22
freepbx-2.5.0

Viele Grüße.
 

zfxn

Neuer User
Mitglied seit
20 Okt 2008
Beiträge
5
Punkte für Reaktionen
0
Punkte
0
Gelöst

Problem gelöst...

hab in der extensions_override_freepbx.conf
den context [macro-outbound-callerid] (aus der extensions_additional.conf)
so überschrieben, dass die "Variable" CALLERID(name)=4989${USEROUTCID}
gesetzt wird.

[macro-outbound-callerid]
include => macro-outbound-callerid-custom
exten => s,1,ExecIf($["${CALLINGPRES_SV}" != ""],SetCallerPres,${CALLINGPRES_SV})
exten => s,n,ExecIf($["${REALCALLERIDNUM:1:2}" = ""],Set,REALCALLERIDNUM=${CALLERID(number)})
exten => s,n(start),GotoIf($[ $["${REALCALLERIDNUM}" = ""] | $["${KEEPCID}" != "TRUE"] | $["${OUTKEEPCID_${ARG1}}" = "on"] ]?normcid)
exten => s,n,Set(USEROUTCID=${REALCALLERIDNUM})
exten => s,n,GotoIf($["foo${DB(AMPUSER/${REALCALLERIDNUM}/device)}" = "foo"]?bypass)
exten => s,n(normcid),Set(USEROUTCID=${DB(AMPUSER/${REALCALLERIDNUM}/outboundcid)})
exten => s,n(bypass),Set(EMERGENCYCID=${DB(DEVICE/${REALCALLERIDNUM}/emergency_cid)})
exten => s,n,Set(TRUNKOUTCID=${OUTCID_${ARG1}})
exten => s,n,GotoIf($[ $["${EMERGENCYROUTE:1:2}" = ""] | $["${EMERGENCYCID:1:2}" = ""] ]?trunkcid)
exten => s,n,Set(CALLERID(all)=${EMERGENCYCID})
exten => s,n(exit),MacroExit()
exten => s,n(trunkcid),ExecIf($["${TRUNKOUTCID:1:2}" != ""],Set,CALLERID(all)=${TRUNKOUTCID})
exten => s,n(usercid),GotoIf($["${USEROUTCID:1:2}" = ""]?exit)
exten => s,n,Set(CALLERID(all)=${USEROUTCID})
exten => s,n(usercid),GotoIf($["${USEROUTCID:1:2}" = ""]?exit)
exten => s,n,Set(CALLERID(all)=${USEROUTCID})
exten => s,n,ExecIf($["${TRUNKOUTCID}" = "4989123456789"],Set,CALLERID(name)=4989${USEROUTCID})
exten => s,n(hidecid),ExecIf($["${CALLERID(name)}"="hidden"],SetCallerPres,prohib_passed_screen)


Die eingefügte Zeile bewirkt, dass CALLERID(name) nur neugesetzt wird wenn im verwendete Trunk als "Outbound Caller ID" 4989123456789 gesetzt ist.

exten => s,n,ExecIf($["${TRUNKOUTCID}" = 4989123456789"],Set,CALLERID(name)=4989${USEROUTCID})


Die Lösung ist sicher nicht die sauberste aber funktioniert...
...vielleicht kann man auch in irgendeinem Trunk-spezifischen context CALLERID(name) setzen und die Vorwahl ohne 0 mit 49 davor aus irgendeiner Variable ziehen.

Grüße
 

zfxn

Neuer User
Mitglied seit
20 Okt 2008
Beiträge
5
Punkte für Reaktionen
0
Punkte
0
Problem gelöst...

hab in der extensions_override_freepbx.conf
den context [macro-outbound-callerid] (aus der extensions_additional.conf)
so überschrieben, dass die "Variable" CALLERID(name)=4989${USEROUTCID}
gesetzt wird.

[macro-outbound-callerid]
include => macro-outbound-callerid-custom
exten => s,1,ExecIf($["${CALLINGPRES_SV}" != ""],SetCallerPres,${CALLINGPRES_SV})
exten => s,n,ExecIf($["${REALCALLERIDNUM:1:2}" = ""],Set,REALCALLERIDNUM=${CALLERID(number)})
exten => s,n(start),GotoIf($[ $["${REALCALLERIDNUM}" = ""] | $["${KEEPCID}" != "TRUE"] | $["${OUTKEEPCID_${ARG1}}" = "on"] ]?normcid)
exten => s,n,Set(USEROUTCID=${REALCALLERIDNUM})
exten => s,n,GotoIf($["foo${DB(AMPUSER/${REALCALLERIDNUM}/device)}" = "foo"]?bypass)
exten => s,n(normcid),Set(USEROUTCID=${DB(AMPUSER/${REALCALLERIDNUM}/outboundcid)})
exten => s,n(bypass),Set(EMERGENCYCID=${DB(DEVICE/${REALCALLERIDNUM}/emergency_cid)})
exten => s,n,Set(TRUNKOUTCID=${OUTCID_${ARG1}})
exten => s,n,GotoIf($[ $["${EMERGENCYROUTE:1:2}" = ""] | $["${EMERGENCYCID:1:2}" = ""] ]?trunkcid)
exten => s,n,Set(CALLERID(all)=${EMERGENCYCID})
exten => s,n(exit),MacroExit()
exten => s,n(trunkcid),ExecIf($["${TRUNKOUTCID:1:2}" != ""],Set,CALLERID(all)=${TRUNKOUTCID})
exten => s,n(usercid),GotoIf($["${USEROUTCID:1:2}" = ""]?exit)
exten => s,n,Set(CALLERID(all)=${USEROUTCID})
exten => s,n(usercid),GotoIf($["${USEROUTCID:1:2}" = ""]?exit)
exten => s,n,Set(CALLERID(all)=${USEROUTCID})
exten => s,n,ExecIf($["${TRUNKOUTCID}" = "4989123456789"],Set,CALLERID(name)=4989${USEROUTCID})
exten => s,n(hidecid),ExecIf($["${CALLERID(name)}"="hidden"],SetCallerPres,prohib_passed_screen)


Die eingefügte Zeile bewirkt, dass CALLERID(name) nur neugesetzt wird wenn im verwendete Trunk als "Outbound Caller ID" 4989123456789 gesetzt ist.

exten => s,n,ExecIf($["${TRUNKOUTCID}" = 4989123456789"],Set,CALLERID(name)=4989${USEROUTCID})


Die Lösung ist sicher nicht die sauberste aber funktioniert...
...vielleicht kann man auch in irgendeinem Trunk-spezifischen context CALLERID(name) setzen und die Vorwahl ohne 0 mit 49 davor aus irgendeiner Variable ziehen.

Grüße
Zu erwähnen wäre vielleicht noch, dass ich bei meinen Extensions die Outbound CID immer auf die MSN ohne Vorwahl gesetzt hab.
 
3CX

Neueste Beiträge

Statistik des Forums

Themen
239,009
Beiträge
2,121,040
Mitglieder
362,066
Neuestes Mitglied
jboecker

Erhalten Sie 3CX für 1 Jahr kostenlos!

Gehostet, in Ihrer privaten Cloud oder on-Premise! Ganz ohne Haken. Geben Sie Ihren Namen und Ihre E-Mail an und los geht´s:

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.
oder via

IPPF im Überblick

Neueste Beiträge

Website-Sponsoren


Kontaktieren Sie uns bei Interesse