Jump to content

Rufnummernblockierung mit SQL-Datenbank


DeLe
 Share


Go to solution Solved by Tom Wellige,

Recommended Posts

Hallo Zusammen,

 

wir sind momentan daran Rufnummern mit hilfe vom "PreProcessing" und Callrouting zu Blockieren.

 

Der Allgemeine Vorgang hierbei ist

1. Anruf kommt an

2. PreProcessing führt VBA Script im Callrouting aus

3. Script gibt an, ob der Anrufer in der BlockierungsDatenbank ist oder nicht

4. Durchstellen oder Anruf ablehnen.

 

Dazu haben wir folgendes Script und CallRouting gebaut

 

function KnownCallerId ( callerID )



Dim connection
Set connection = CreateObject("ADODB.Connection")



Dim server_name
Dim database_name 
server_name = "localhost\SQLExpress"
database_name = "Caller"




With connection
.ConnectionString = "Provider=SQLNCLI11;Server=" & server_name & _
";database=" & database_name & ";Integrated Security=SSPI;"
.ConnectionTimeout = 10
.Open
End With



If connection.State = 1 Then
PBXScript.OutputTrace "DLDLDL Connected!"
Else
PBXScript.OutputTrace "DLDLDL NOT Connected!"
End If



Dim sqlQuery As String
sqlQuery = "select * from dbo.callers where callerid = '" & callerID & "'"



Dim rsSql
rsSql = CreateObject("ADODB.Recordset")

PBXScript.OutputTrace "DLDLDL RS "
rsSql.Open sqlQuery, connection, adOpenStatic
PBXScript.OutputTrace "DLDLDL RS OPEN "
bReturn = not rsSQL.EOF
PBXScript.OutputTrace "DLDLDL" & bReturn
KnownCallerId = bReturn



rsSQL.Close
Set rsSQL = Nothing




connection.Close
Set connection = Nothing
end function

 

 

Dies ist gebaut aus dem offiziellen "Block Users using SQL" Skript von Swyx selbst (Updated vor 10 Jahren oder sowas...) und eigenem Probieren.

 

Leider wird der Anruf sofort mit "Rufnummer nicht vergeben" abgelehnt und im Log findet man auch garnichts dazu.

 

image.thumb.png.4a4fa3e7312f560aca4793399856d48f.png

 

 

 

Hat irgendjemand hiermit Erfahrung und/oder ein Script, dass er Teilen kann?

Link to comment
Share on other sites


Als erstes würde ich das aus dem PreProcessing heraus nehmen und auf einem normalen Benutzer an den Start bringen. Dort kann es problemlos getestet und erweitert werden bis es wie gewünscht läuft. Erst danach sollte es ins PreProcessing überführt werden.

 

Irgendetwas muss zu Deinen Testanrufen im Server Trace erscheinen. Filter Dir doch mal einen solchn Ruf entsprechend aus dem Trace heraus und verfolge ihn. Wie man da macht, wird hier beschrieben.

 

Link to comment
Share on other sites


Hi,

sorry falsch ausgedrückt. Es soll später mal ins PreProcessing. Für den moment teste ich es natürlich an meinem eigenen User :)

 

Danke für den Tipp mit dem Filtern. Sehr praktisch!

Allerdings kann ich (mit meinem "ungeschulten" Auge) nichts ausschlaggebendes finden.

 

Das Log hier zu Posten wäre jetzt aber auch etwas dämlich da einige sensible Daten darin stehen^^

Link to comment
Share on other sites


Wenn Du willst, kannst Du es mir hier im Forum als private Nachtricht schicken. Dazu geh einfach mit der Maus über mein Profil Bild und warte einen kleinen Augenblick. Es tut sich dann ein kleines Fenster auf wo Du unten links einen "Message" Schalter findest.

 

Ich bräuchte dann noch Datum/Uhrzeit Deines Testanrufes, und von welcher Nummer Du welche Nummer angerufen hast.

 

Link to comment
Share on other sites


  • 2 weeks later...

Kann man das PreProcessing auch auf Gruppennummern legen?

 

Die Rufnummern werden jetzt zwar blockiert, wenn Sie einen User direkt anrufen, wenn man aber die Gruppennummer anwählt, geht der Anruf ohne Probleme durch

Link to comment
Share on other sites


Nein. Gruppen haben kein eigenes Call Routing. Hier greift ausschliesslich die Art der Rufzustellung die man in den Gruppeneigenschaften in der Administration konfiguriert hat.

 

Wenn man ein Call Routing für eine Gruppe braucht, richtet man einfach einen Dummy Benutzer ein, gibt ihm die Gruppennummer und läßt sein Call Routing die Zustellung auf die Gruppe machen. Der Gruppe gibt man dann eine andere Nummer die auch nicht im Telefonbuch angezeigt wird (um zu verhindern, dass jemand das Call Routing umgeht).

 

Link to comment
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
 Share


×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use and have taken note of our Privacy Policy.
We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.