HorstBox Pro: Telefonterror durch Callcenter abwehren

Nachdem ich ja schon beschrieben habe, wie man sich mit Hilfe von Asterisk auf der HorstBox vor anonymen Anrufen durch CallCenter schützen kann, habe ich das System nun noch etwas verfeinert und erweitert. Statt einfach aufzulegen, bekommen die unerwünschten Anrufer nun die Nachricht, dass die gewählte Telefon-Nummer nicht vergeben ist (Danke an alfhh im ip-phone.de Forum).

    1 = Unallocated number
   16 = Normal call clearing
   17 = User busy
   18 = No user responding (telephone device not connected)
   21 = Call rejected
   22 = Number changed
   27 = Destignation out of order
   38 = Network out of order
   41 = Temporary failure

(siehe auch VOIP forum)
Ausserdem habe ich eine Liste von bekannten CallCentern MIT Rufnummern begonnnen.

Leider weigern sich die Callcenter hartnäckig, einen in Ruhe zu lassen. Zitat: “Ich kann Sie nicht von der Liste löschen. Die Liste gilt bis zum September”. Na dann viel Spass beim Anrufen.

Für alle Leidgeprüften nun der aktuelle Ausschnitt aus meiner extensions.conf:

[isdn-in]
 exten => 123456,1,ModifyCallerID(doit)
 exten => 123456,2,Set(CALLERID(num)=${CALLERID(num)})
 exten => 123456,3,GotoIf($["${CALLERID(num)}" = ""]?istanalog:ist180) ; keine Nummer?
 exten => 123456,40(istanalog),GotoIf($["${TRANSFERCAPABILITY}" = "3K1AUDIO"])?annehmen:spam) ; kein Analog
 exten => 123456,50(ist180),GotoIf($["${CALLERID(num):0:4}" = "0180"]?spam:ist800) ; wenn mit 0180 beginnt->auflegen, sonst waehlen
 exten => 123456,51(ist800),GotoIf($["${CALLERID(num):0:4}" = "0800"]?spam:ist034) ; wenn 0800
 exten => 123456,52(ist034),GotoIf($["${CALLERID(num)}" = "034567840123"]?spam:annehmen)
 exten => 123456,60(annehmen),Dial(local/002002@local&local/002001@local&local/002004@local, 90,t)
 exten => 123456,61,Goto(auflegen)
 exten => 123456,68(spam),Goto(auflegen)
 exten => 123456,69(spam1),Playback(teltest)
 exten => 123456,70(auflegen),Hangup(1)
 exten => 123457,1,ModifyCallerID(doit)
 exten => 123457,2,Set(CALLERID(num)=${CALLERID(num)})
 exten => 123457,3,Dial(local/001002@local&local/001001@local&local/001004@local, 90,t)
 exten => 123457,4,Hangup(17)

Der Befehl HangUp(1) bewirkt, dass der Anrufer die Nachricht erhält, dass die Nummer nicht vergeben ist.
Übrigens haben wir an einem Freitag 11 Anrufe von Callcentern nicht entgegennehmen müssen. Am Montag waren es ‘nur’ 7.