Probleme beim blockieren von Spam-Anrufen

Comments

3 comments

  • Avatar
    Thomas Honolke

    Hallo Roquefort,

    wie sieht denn das Script aus? Hast du vielleicht CDRs mit den Anrufen?


    Gruss, Thomas

    0
    Comment actions Permalink
  • Avatar
    Roquefort

    Hey Thomas, 

    das Skript sieht aus wie folgt:

    '$$$GSEScript$$$
    'GSE rule: rulePreProcessing; GSEVersion: 10.40.0.5
    Function rulePreProcessing(ByRef rInputParams)
    PBXScriptOutputTrace "Begin GSE Script (Rule: rulePreProcessing)"
    PBXScriptOutputTrace "GSEVersion: 10.40.0.5"
    Dim szState, retVal, rcDummy, bWasDisconnect, UseExit, bRuleResult
    bRuleResult = False
    szState = "Start0"
    bWasDisconnect = False

    Do
    Select Case szState

    '////////////////////////
    Case "Start0"
    PBXScriptOutputTrace " case [Start0]"
    retVal = gseStart()
    Select Case retVal
    Case gseStateStarted
    szState = "Call4"
    Case Else
    PBXScriptOutputTrace "Error: Abnormal case thread"
    Exit Do
    End Select

    '////////////////////////
    Case "End1"
    PBXScriptOutputTrace " case [End1]"
    bRuleResult = True
    Exit Do

    '////////////////////////
    Case "Skip2"
    PBXScriptOutputTrace " case [Skip2]"
    bRuleResult = False
    Exit Do

    '////////////////////////
    Case "Disconnect3"
    PBXScriptOutputTrace " case [Disconnect3]"
    If (Not bWasDisconnect) Then
    szState = "End1"
    bWasDisconnect = True
    Else
    PBXScriptOutputTrace "GSE anti-LOOP script executed"
    bRuleResult = True
    Exit Do
    End If

    '////////////////////////
    Case "Call4"
    PBXScriptOutputTrace " case [Call4]"
    retVal = gseCalls((CallsWithCallerID("000442175925064")))
    CheckIfCallIsDisconnected retVal

    Select Case retVal
    Case gseStateTrue
    szState = "Terminate5"
    Case gseStateFalse
    szState = "Skip2"
    Case gseStateDisconnected
    szState = "Disconnect3"
    Case Else
    PBXScriptOutputTrace "Error: Abnormal case thread"
    Exit Do
    End Select

    '////////////////////////
    Case "Terminate5"
    PBXScriptOutputTrace " case [Terminate5]"
    retVal = gseTerminate("2")
    Select Case retVal
    Case gseStateTerminated
    szState = "Disconnect3"
    Case Else
    PBXScriptOutputTrace "Error: Abnormal case thread"
    Exit Do
    End Select

    '////////////////////////
    Case Else
    'Something wrong
    Exit Do
    End Select

    Loop


    rulePreProcessing = bRuleResult
    PBXScriptOutputTrace "Rule result: " & bRuleResult
    PBXScriptOutputTrace "End GSE Script (Rule: rulePreProcessing)"
    End Function

    Im GSE sieht es so aus:

    CDRs habe ich nicht.

    Gruß

    Roquefort

     

    0
    Comment actions Permalink
  • Avatar
    Thomas Honolke

    Dein Script scheint ja prinzipiell zu funktionieren. Ich vermute die Spammer rotieren die Durchwahlen?
    hier:

    https://www.swyx.de/produkte/support/wissensdatenbank/artikel-details/swyxknowledge/kb2219.html

    gibts eine schönes Script bzw. Funktion um Nummern abzuprüfen. Wenn du eine MYSQL datenbank nimmst, kannst du auch mit LIKE im Statement die Kopfnummer eintragen und dann ein % auch ganze Bereiche sperren.

    Und du musst bei einer zusätzlichen Rufnummer nicht immer im Preprocessing rummachen sondern einfach einen neuen Eintrag in die DB.

    0
    Comment actions Permalink

Please sign in to leave a comment.