Rufnummernweitergabe bei Anrufweiterleitung (Nummer weitergeben)

stäubel

Neuer User
Mitglied seit
11 Aug 2006
Beiträge
198
Punkte für Reaktionen
0
Punkte
16
Hallo zusammen

Hätte da mal noch eine Frage bezüglich Weiterleitung.

Folgendes Szenario geschieht:

Externer Ruf kommt rein, Sekretariat hebt ab und leitet mir z.B.
das Telefonat weiter.
Nun sehe ich leider nur die interne Nummer des Sekretariats und nicht die externe des Anrufers.

Im Einsatz sind SNOM 360 Telefone
Die Anrufe werden durch die HOLD-Taste weitergeleitet.

Also z.B.:

[HOLD] + interne Nummer + [OK-Taste]

In meinem Buch steht bei dem Dial() Flag, o

o = Setzt die Caller-ID, die auf den eingehenden Anrufabschnitt empfangen wurde, auch als Caller-ID auf den ausgehenden Anrufabschnitt...

Nun diess funktioniert allerdings nur, wenn man eine direkte Weiterleitung mit der Transfertaste macht.

Nachteil bei Transfer ist allerdings, dass der Anrufer direkt übergeben wird, ohne zuerst sprechen zu können.

Hat jemand eine Idee, wie man das lösen könnte?

Aber ich glaube das ist ein grundsätzliches Problem von Asterisk,
Bei Transfer wird ein neuer Call vom Asterisk selber aufgebaut und bei der HOLD Weiterleitung, wird quasi ein internes Telefonat vom SNOM Telefon aufgebaut. Glaube hab das so irgendwo mal augeschnappt.

Die wichtigsten Zeilen in meinem Dialplan sehen zurzeit etwa so aus:

Code:
[default]
;Einstellungen für interne Telefonate 

exten => _[34578]X,1,Answer()
exten => _[34578]X,2,Dial(SIP/${EXTEN},${RINGTIME_INTRN},r)
exten => _[34578]X,3,Busy(30)
exten => _[34578]X,4,Hangup()

;Interne VoiceMail Konfiguration
exten => _9[789]X,1,VoiceMailMain(${EXTEN:1})


;Anrufe nach extern
;------------------

exten => _XXXXXXXXXX,1,Dial(CAPI/EICON/0441234560:${EXTEN:0:10}/b,30)
exten => _XXXXXXXXXXX,1,Dial(CAPI/EICON/0441234560:${EXTEN:0:11}/b,30)
exten => _XXXXXXXXXXXX,1,Dial(CAPI/EICON/0441234560:${EXTEN:0:12}/b,30)
exten => _XXXXXXXXXXXXX,1,Dial(CAPI/EICON/0441234560:${EXTEN:0:13}/b,30)
exten => _XXXXXXXXXXXXXX,1,Dial(CAPI/EICON/0441234560:${EXTEN:0:14}/b,30)
exten => _XXXXXXXXXXXXXXX,1,Dial(CAPI/EICON/0441234560:${EXTEN:0:15}/b,30)
exten => _XXXXXXXXXXXXXXXX,1,Dial(CAPI/EICON/0441234560:${EXTEN:0:16}/b,30)
exten => _XXXXXXXXXXXXXXXXX,1,Dial(CAPI/EICON/0441234560:${EXTEN:0:17}/b,30)

;Notruf und Servicenummern
exten => _1XX,1,Dial(CAPI/EICON/0441234560:${EXTEN}/b,30)
exten => _1XXX,1,Dial(CAPI/EICON/0441234560:${EXTEN}/b,30)


[incoming]

...

;FAX Ausserhalb Bürozeiten
exten => _71,1,Answer()
exten => _71,2,Dial(SIP/71,60,r)      ;wird direkt zum Fax gesnedet
exten => _71,3,Hangup()


...

;Einkommende Gespräche an die Hauptnummer
[weekday]

exten => _60,1,Dial(SIP/80,50,r)
exten => _60,2,Hangup()
Bin für jeden Tipp sehr dankbar.

Grüsse Stäubel
 

stäubel

Neuer User
Mitglied seit
11 Aug 2006
Beiträge
198
Punkte für Reaktionen
0
Punkte
16
Hallo zusammen

Habe dieses Problem ( 4 Monate später :rolleyes: )
wieder mal angepackt.

Erkenntnis:
Es wäre möglich die einkommende externe CALLERID
in eine Variable zwischen zu speichern und bei der internen
Weiterleitung wieder zu setzen.

Problematik:
Wenn zwei drei Telefonate gleichzeitig oder kurz hintereinander
reinkommen gibt es Überschreibprobleme der CALLERID.
Um das zu managen würde es sehr kompliziert.

Frage an euch:
Hat jemand bessere Lösungsansätze, Hinweise
oder vielleicht bereits mal was umgesetzt?

Wäre sehr dankbar um jeden Kommentar,
denn diese Option wäre sehr wichtig.

Viele Grüsse

Stäubel
 

snoopy_spy

Neuer User
Mitglied seit
19 Mai 2007
Beiträge
108
Punkte für Reaktionen
0
Punkte
0
stäubel schrieb:
Erkenntnis:
Es wäre möglich die einkommende externe CALLERID
in eine Variable zwischen zu speichern und bei der internen
Weiterleitung wieder zu setzen.

Problematik:
Wenn zwei drei Telefonate gleichzeitig oder kurz hintereinander
reinkommen gibt es Überschreibprobleme der CALLERID.
Um das zu managen würde es sehr kompliziert.
Hi, auch wenn der Thread schon älter ist, würds mich interessieren, ob du ne lösung hast (eventuell möchte ich auch soetwas später umsetzen) ...

wegen deiner Problematik, es gibt ja CHANNEL Variablen, und diese sollten ja pro Channel eindeutig sein, dh. die sollte von den Channel variabeln der anderen channeln getrennt sein, daher sollte man die doch ohne probs verwenden können.

gruß
snoopy
 

KaMe

Neuer User
Mitglied seit
12 Feb 2007
Beiträge
63
Punkte für Reaktionen
0
Punkte
0
Hi Leuts,

ich wäre auch sehr an einer Lösung interessiert.

THX
 

baschdieh

Mitglied
Mitglied seit
15 Sep 2005
Beiträge
416
Punkte für Reaktionen
0
Punkte
0
Also das wäre mein Vorschlag....:

extensions.conf
Code:
[intern]
exten => _XX,1,Set(__OriginalCaller=${CALLERID(number)})
exten => _XX,2,Set(__TRANSFER_CONTEXT=transfercontext)
exten => _XX,3,Dial(SIP/${EXTEN},Tt)
exten => _XX,4,Hangup()

[transfercontext]
exten => _XX,1,Answer()
exten => _XX,2,Set(CALLERID(number)=${CALLERIDNUM:5} <${OriginalCaller}>)
exten => _XX,3,Dial(SIP/${EXTEN},t)
exten => _XX,4,Hangup
exten => _XX,101,Playtones(busy)
exten => _XX,102,Wait(4)
exten => _XX,103,StopPlaytones
exten => _XX,104,Hangup
Den Transfer leite ich über die im features.conf definierte Weiterleitung ein (z.B. "*"). Im Display des B-Teilnehmers sieht man dann "int rufnummer <externe rufnummer>".

Bei Snom ab FW >7 kann man hinter den Tasten "DTMF" Töne legen. Somit sollte man die Möglichkeit haben die "Transfer Taste" mit einem "DTMF-Tone" in unserem Falle mit einem "*" hinterlegen.

Waere nun mein Vorschlag - vielleicht gibt es bessere ?

Gruesse
basty
 

stäubel

Neuer User
Mitglied seit
11 Aug 2006
Beiträge
198
Punkte für Reaktionen
0
Punkte
16
Hallo baschdieh

Endlich habe ich auch mal Zeit das ganze nochmals anzuschauen.
Vielen Dank für dein Lösungsvorschlag.
Leider brachte ich das jedoch mit meinem Asterisk 1.6.X nicht hin :cry:

Kennt jemand vielleicht inzwischen auch noch andere Lösungsansätze?

Wäre sehr dankbar, denn ich würde dieses Thema so gerne auch mal lösen.

Viele Grüsse

Stäubel
 

wpfundstein

Mitglied
Mitglied seit
24 Nov 2005
Beiträge
267
Punkte für Reaktionen
0
Punkte
16
Hallo zusammen,

Hatte das Problem auch. Kommischerweise ist es jetzt weg.

Kann es sein dass es an der Firmware vom Snom liegt. Bei mir funktioniert das mit der Übergabe der Rufnummer.

Anruf kommt rein und ich nehme an
Drücke die Taste Hold und rufe meinen Kollegen an
Der nimmt an und sieht erst mal meine Rufnummer
Dann lege ich auf
Und siehe da. Er sieht die Rufnummer des Anrufers

Beide Telefone haben Firmware 7.3.27
Asterisk ist bristuff 1.2.30.4

Grüße, Werner
 

stäubel

Neuer User
Mitglied seit
11 Aug 2006
Beiträge
198
Punkte für Reaktionen
0
Punkte
16
Hallo wpfundstein

Vielen Dank für deinen Lichtblick!!!
Jetzt habe ich wieder Hoffnung..

Hatte das Problem auch. Kommischerweise ist es jetzt weg.
Kann es sein dass es an der Firmware vom Snom liegt.
Habe gleich auch 3 Telefone auf die Firmware 7.3.27 upgedatet.
Aber leider funktioniert es doch nicht.

Ich glaube jetzt hilft nur noch eins -> Telefoneinstellungen vergelichen.
Hättest du Lust mir deine Telefoneinstellungen zu senden?

Das wäre der Hammer.

Viele Grüsse Stäubel
 

wpfundstein

Mitglied
Mitglied seit
24 Nov 2005
Beiträge
267
Punkte für Reaktionen
0
Punkte
16
ok, versuch mal die angehängte Settinsdatei.

Wichtig: Ändere die Endung auf .xlm



Grüße
 

Anhänge

jackfritt

Mitglied
Mitglied seit
28 Dez 2005
Beiträge
325
Punkte für Reaktionen
0
Punkte
16
Der eine hat mISDN und der andere bristuff ?

hf,

Jörg
 

stäubel

Neuer User
Mitglied seit
11 Aug 2006
Beiträge
198
Punkte für Reaktionen
0
Punkte
16
ok, versuch mal die angehängte Settinsdatei.
Vielen Dank für deine Umstände!!!

Hatte es jedoch gerade getestet und es funktioniert auch mit deinen
Einstellungen nicht. Irgendwie muss es wohl doch am Asterisk liegen.
Aber ich habe viele Asterisk Version getestet.
Auch die neuste 1.6.X..

Hast du den in deinem Dial Plan auch ganz einfach sowas drin:

Code:
[default]

...

exten => _[345678]X,1,Dial(SIP/${EXTEN},${RINGTIME_INTRN},fo)
exten => _[345678]X,2,Busy(30)
exten => _[345678]X,3,Hangup()

...


;Einkommende Gespräche an die Hauptnummer
[weekday]

exten => _50,1,Dial(${MAINCALL},${RINGTIME},r)
exten => _50,n,Dial(${RINGCALL},${RINGTIME_RING},r)
exten => _50,n,VoiceMail(su93)   ;Mailbox wenn niemand abgehbt, nicht bei DND
exten => _50,n,Hangup()
                                 
...
Ich wag es fasst nicht zu fragen,
aber könntest du diesen vielleicht auch posten?
Ode einfach den Teil daraus?

Leider kenne ich diese bristuff Geschichte gar nicht.
Könnte es vielleicht an dem liegen... hmm.

Nochmal vielen Dank für deine grosse Hilfe.
Wenn ich schaffe dies einzurichten,
werde ich es hier ausführlich erklären.

Viele Grüsse Stäubel
 

wpfundstein

Mitglied
Mitglied seit
24 Nov 2005
Beiträge
267
Punkte für Reaktionen
0
Punkte
16
Hallo,


Dial(${DialString}|${ringtime}|trWwo)

Das "o" ist glaube ich wichtig.

Grüße
 

stäubel

Neuer User
Mitglied seit
11 Aug 2006
Beiträge
198
Punkte für Reaktionen
0
Punkte
16
Dial(${DialString}|${ringtime}|trWwo)

Das "o" ist glaube ich wichtig.
Geht leider auch nicht...:(

Aber verstehe ich das richtig,
bristuff hat doch einfach mehr Patches drin.
Das müsste doch bedeuten, dass das Problem
vielleicht ein Patch bei dir löst.

Weisst du was für Patches du drin hast?
Gemäss diesem Eintrag müssten sich deine Patches einfach im
Patches-Verzeichnis befinden:
http://ting.ip-phone-forum.de/showthread.php?t=81035

Und sonst müssen wir die Operation wirklich langsam abbrechen.
Aber es kann doch nicht sein, dass dies einfach nicht möglich ist.:(

Viele Grüsse

Stäubel
 

wpfundstein

Mitglied
Mitglied seit
24 Nov 2005
Beiträge
267
Punkte für Reaktionen
0
Punkte
16
Schick mal eine Mail

dann kann ich Dir die Patches zusenden.

Grüße
 
Zuletzt bearbeitet:

fme

Neuer User
Mitglied seit
13 Jan 2007
Beiträge
24
Punkte für Reaktionen
0
Punkte
0
Würde mich freuen wenn hier dann irgendwann das Ergebnis stehen würde.
Das ist auch mein letztes großes Asterisk Problem (mit Ausnahme von SRTP, aber das kommt ja mit 1.8 ).

Habe auch schon viel versucht, aber die Nummer stimmte nie.
Selbst ein Update auf die V8 Beta Firmware von snom brachte keine Abhilfe.
 

wpfundstein

Mitglied
Mitglied seit
24 Nov 2005
Beiträge
267
Punkte für Reaktionen
0
Punkte
16
Hallo zusammen,

Probiert mal folgende Einstellung in der sip.conf unter general

calleridupdate=info

Grüße
 

jackfritt

Mitglied
Mitglied seit
28 Dez 2005
Beiträge
325
Punkte für Reaktionen
0
Punkte
16
Das kannte ich noch nich. Allerdings funktioniert das bei mir auch nicht :)

Gruss,

Jrög
 

stäubel

Neuer User
Mitglied seit
11 Aug 2006
Beiträge
198
Punkte für Reaktionen
0
Punkte
16
Hallo zusammen

Habe die Patches angeschaut,
aber man findet kaum Beschreibungen darüber.
Vielen Dank nochmals für die Unterstützung!

Wenn jemand miträtseln möchte, dass sind die Patches
welche etwa in BRIstuff drin sind:
(Mit BRIstuff scheint es ja zu funktionieren)

Code:
100-uniqueid.diff
101-devicestate_with_callerid.diff
102-asterisk_version.diff
103-send_answer_first.diff
104-message_sending.diff
105-hangup_cause.diff
106-copyright_doc_changes_typos.diff
107-userevent_multiline_body.diff
108-agi_xagi.diff
109-isdn_fixes.diff
110-rtp_symptom_fix.diff
111-monitor_script.diff
112-esel.diff
113-ami_dbget.diff
114-apps_Makefile.diff
115-app-callingpres.diff
116-app_dial.diff
117-app_meetme.diff
118-app_milliwatt.diff
119-app_segfault.diff
120-pickup_chan_etc.diff
121-sip_changes.diff
122-chan_zap_changes.diff
123-features_changes.diff
124-isdnguard.diff
125-unlock_channel_list.diff
200-zapata.conf.sample.diff
201-channels_Makefile.diff
202-useable_cdrs.diff
Welcher Patch ist wohl zuständig für unser Problem hier? :gruebel:

Da mir leider die Zeit wegrennt, habe ich jetzt für mich
eine passende Notlösung erarbeitet:

Call kommt beim Sekretariat rein:

Code:
[isdn-in]

exten => _XXXXXX,1,Dial(SIP/36,60,TtrWwo)
exten => _XXXXXX,n,Hangup()
Nun darf das Sekretariat nicht mehr mit Hold verbinden,
sondern muss mit einem Attended Transfer den ich
wie folgt in der features.conf konfiguriert habe, verbinden:

Code:
[featuremap]

disconnect => #*     
atxfer => #*
Infos zu diesem Thema unter http://www.das-asterisk-buch.de/1.0/onechunk/features.html

Dies bedeutet, dass man anstatt Hold einfach die Tasten #*
drücken muss um einen Transfer zu starten und wieder zu beenden.

Der Attended Transfer zeichnet sich dadurch aus,
dass man doch noch mit der Gegenstelle vor dem Transfer sprechen kann.

Nachteil, es wird dem internen Teilnehmer, dem man den Anruf weiter gibt,
immer die Nummer des Anrufenden angezeigt. Nie die interne.

Deshalb habe ich einfach noch den Namen wie folgt angepasst,
damit man wenigstens weiss, dass es über intern kommt:

Code:
exten => _XX,1,Set(CALLERID(name)=INTERN ${CALLERID(num)})
exten => _XX,n,Dial(SIP/${EXTEN},60,TtrHhWwo)
exten => _XX,n,Hangup()
Vorsicht, das ganze ist noch alles nur in der Testphase,
aber ich denke ich werde es etwa so umsetzen.

Damit man nicht jedesmal #* drücken muss wenn man einen
Transfer machen möchte, wollte ich dies noch auf die Transfer Taste
programmieren. Aber das ging nicht.

Dazu mehr hier: http://www.ip-phone-forum.de/showthread.php?p=1440338

Also habe ich es einfach auf die
Snom Taste programmiert:

Code:
Taste  Typ   Nummer
SNOM   DTMF   #*
Weiter bin ich leider auch noch nicht.

Probiert mal folgende Einstellung in der sip.conf unter general

calleridupdate=info
Bei mir funktionierte das leider nicht.

Viele Grüsse

Stäubel
 

jackfritt

Mitglied
Mitglied seit
28 Dez 2005
Beiträge
325
Punkte für Reaktionen
0
Punkte
16
Es scheint hier noch eine alternative
zu geben. Allerdings bekomme ich das mit meiner Anlage noch nicht ans laufen.

Werde aber dran bleiben.


Gruss,

Jörg
 

Zurzeit aktive Besucher

3CX PBX - GRATIS
Linux / Win / Cloud

Statistik des Forums

Themen
232,831
Beiträge
2,027,214
Mitglieder
350,920
Neuestes Mitglied
askmeforit79