Hallo allerseits,
nach >>ein wenig Gefummel<< habe ich es geschafft, die Rufnummern von ankommenden Anrufen in der CALLERID(num) immer ins internationale Format zu übersetzen.
Somit steht in der ${CALLERID(num)} nun immer eine vollständige, internationale Nummer.
Die Anrufe werden an Nebenstelle 30 (DECT Handteil an einer Fritz!Box 7390) signalisiert.
Wenn nun ein Anruf ankommt, dessen Nummer geändert wurde, erscheint im Display für ~0.5 Sekunden die veränderte, korrekte Nummer. Danach springt die Nummer wieder auf das ursprüngliche Format zurück. In der Anruferliste der Fritz wird ebenfalls die "falsche" nationale Nummer gespeichert.
Kurzfassung der Frage wäre also: "Welche Variable wird über die Fritz! im Display des Endgerätes angezeigt?"
Dank und Gruss,
Christian
Für den Fall dass es hilft, hier noch die extensions.conf:
In der Konsole sehe ich, dass das (zumindest in der ${CALLERID(num)} ) auch korrekte Ergebnisse liefert:
nationaler ankommender Anruf mit Veränderung:
internationaler ankommender Anruf ohne Veränderung:
nach >>ein wenig Gefummel<< habe ich es geschafft, die Rufnummern von ankommenden Anrufen in der CALLERID(num) immer ins internationale Format zu übersetzen.
Somit steht in der ${CALLERID(num)} nun immer eine vollständige, internationale Nummer.
Die Anrufe werden an Nebenstelle 30 (DECT Handteil an einer Fritz!Box 7390) signalisiert.
Wenn nun ein Anruf ankommt, dessen Nummer geändert wurde, erscheint im Display für ~0.5 Sekunden die veränderte, korrekte Nummer. Danach springt die Nummer wieder auf das ursprüngliche Format zurück. In der Anruferliste der Fritz wird ebenfalls die "falsche" nationale Nummer gespeichert.
Kurzfassung der Frage wäre also: "Welche Variable wird über die Fritz! im Display des Endgerätes angezeigt?"
Dank und Gruss,
Christian
Für den Fall dass es hilft, hier noch die extensions.conf:
Code:
exten => 123,1,NoOp(CALLERID(num): ${CALLERID(num)})
exten => 123,n,GotoIf($["${CALLERID(num):0:2}"="00"]?prefixok:fixprefix)
exten => 123,n(fixprefix),Set(CALLERID(num)=0041${CALLERID(num):1})
exten => 123,n(prefixok),NoOp(CALLERID(num): ${CALLERID(num)})
exten => 123,n,Dial(SIP/30,,rtT)
exten => 123,n,Hangup
In der Konsole sehe ich, dass das (zumindest in der ${CALLERID(num)} ) auch korrekte Ergebnisse liefert:
nationaler ankommender Anruf mit Veränderung:
Code:
== Using SIP RTP CoS mark 5
-- Executing [123@incoming:1] NoOp("SIP/NETVOIP_OUT-00000000", "CALLERID(num): 076409xxxx") in new stack
-- Executing [123@incoming:2] GotoIf("SIP/NETVOIP_OUT-00000000", "0?prefixok:fixprefix") in new stack
-- Goto (incoming,123,3)
-- Executing [123@incoming:3] Set("SIP/NETVOIP_OUT-00000000", "CALLERID(num)=004176409xxxx") in new stack
-- Executing [123@incoming:4] NoOp("SIP/NETVOIP_OUT-00000000", "CALLERID(num): 004176409xxxx") in new stack
-- Executing [123@incoming:5] Dial("SIP/NETVOIP_OUT-00000000", "SIP/30,,rtT") in new stack
== Using SIP RTP CoS mark 5
-- Called SIP/30
-- SIP/30-00000001 is ringing
internationaler ankommender Anruf ohne Veränderung:
Code:
== Using SIP RTP CoS mark 5
-- Executing [123@incoming:1] NoOp("SIP/NETVOIP_OUT-00000000", "CALLERID(num): 0044790671xxxx") in new stack
-- Executing [123@incoming:2] GotoIf("SIP/NETVOIP_OUT-00000000", "1?prefixok:fixprefix") in new stack
-- Goto (incoming,123,4)
-- Executing [123@incoming:4] NoOp("SIP/NETVOIP_OUT-00000000", "CALLERID(num): 0044790671xxxx") in new stack
-- Executing [123@incoming:5] Dial("SIP/NETVOIP_OUT-00000000", "SIP/30,,rtT") in new stack
== Using SIP RTP CoS mark 5
-- Called SIP/30
-- SIP/30-00000001 is ringing