Sign in to follow this  
PeterK

Anzeige der original angerufenen Rufnummer bei Weiteleitungen

Recommended Posts

Hallo,

heute habe ich mal ein einfaches Problem - hoffe ich 🙂

Bei uns im Haus werden alle externen Anrufe bei einzelnen Mitarbeitern zur Zentrale durchgestellt, falls der jeweilige Teilnehmer nicht ans Telefon geht. Falls in der Zentrale auch niemand rangeht, wird eine Email an die Zentrale verschickt (z.B. für Rückrufe). Diese beinhaltet die Rufnummer des Anrufenden sowie Datum und Uhrzeit.
(z.B. es wird bei +49 XXX 27 angerufen, 27 geht nicht ran, damit wird auf die +49 XXX 0 weitergeleitet)

Gern hätten wir auch die Nummer, die original angerufen wurde, in die Email eingetragen (im obigen Beispiel also +49 XXX 27), damit die Zentrale weiß, wer wirklich angerufen wurde.

Leider finde ich aber in den vordefinierten Variablen keine, die die original gewählte Rufnummer beinhaltet. Wenn ich IpPbx.CallingNumber oder CalledNumber verwende, bekomme ich im obeigen Beispiel immer die 0, nicht jedoch die 27. Wenn man in die Einzelverbindungsliste schaut, sieht man auch, warum. Es sind 2 Einträge, der erste beinhaltet den Anruf auf der 27, während die zweite den weitergeleiteten Ruf zeigt. Und alle vordefinerten Variablen scheinen sich auf diesen zweiten Eintrag zu beziehen...

Ein Weg wäre, über SQL-Scripte dies abzufragen. Aber vielleicht geht es auch ganz einfach???

Peter

Share this post


Link to post
Share on other sites

Das löse ich meist wie folgt, Am Teilnehmer der Umleitet setze ich einen CallingName.

 

if callingname = „“ then callingname = „Bei Maier von :“ &callingnumber else callingname = „Bei Maier von :“&callingname

 

Die Korrekte Schreibweise musst du dir raus suchen oder ich tippe es dir am Laptop nochmal zusammen.

Damit hast du alle Informationen im CallingName und kannst diese Übergeben.

 

Hilft dir das so schön weiter ?

 

gruss Sven 

Share this post


Link to post
Share on other sites

Hallo Sven,

 

das wäre schon mal eine Idee! Vielleicht noch nicht optimal, aber könnte gehen. Danke

 

Peter

Share this post


Link to post
Share on other sites

Könntest dich auch damit beschäftigen

 

 

 

Share this post


Link to post
Share on other sites

Hallo,

 

ich denke, ich habe eine andere Lösung gefunden. Und diese könnte vielleicht auch für andere interessant sein...

 

Es scheint, dass CallId() immer die ID des originalen Anrufs enthält (und nicht die des weitergeleiteten Gesprächs). Damit vereinfacht sich ein VB-Script, dass die entsprechenden Daten aus der IpPbxCDR-Tabelle ausliest, stark:

 

    ' CursorTypeEnum Values
    Const adOpenForwardOnly = 0
    Const adOpenKeyset = 1
    Const adOpenDynamic = 2
    Const adOpenStatic = 3

 

    ' LockTypeEnum Values
    Const adLockReadOnly = 1
    Const adLockPessimistic = 2
    Const adLockOptimistic = 3
    Const adLockBatchOptimistic = 4

 

    ' CommandTypeEnum Values
    Const adCmdUnknown = &H8
    Const adCmdText = &H1
    Const adCmdTable = &H2
    Const adCmdStoredProc = &H4


    Function GetCalledNameFromCallId(ByVal callId)
        Dim sDsn
        Dim sSQL2
        Dim rs
        Dim db
        Dim TNr
        Dim sReturn
        sReturn = ""
        sDsn = "Provider=SQLOLEDB;Data Source=<MySource>;Initial Catalog=CDR;User ID=<MyUsername>;Password=<MyPassword>"
    Set db = CreateObject("ADODB.Connection")
    db.Open sDsn
    sSQL2 = "SELECT CalledName FROM IpPbxCDR WHERE (CallId = '" & callId & "')"
    Set rs = CreateObject("ADODB.Recordset")
    rs.Open sSQL2, db, adOpenDynamic, adLockOptimistic, adCmdText
    If Not rs.eof = True Then
            sReturn = Trim(rs("CalledName"))
        End If
        rs.Close
    Set rs = Nothing
    db.Close
    Set db = Nothing
    Set sSQL2 = Nothing    
    GetCalledNameFromCallId = sReturn
    End Function

 

(ersetzt man alle "CalledNme" durch "CalledNumber" kann man sich auch die Telefonnummer zurückgeben lassen)

 

Und hier die Zuweisung einer Variable:

image.png.5cf2f743ef6566d396a42f9acf5c5b98.png

 

Peter

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this