DE: Unterscheidung von Analog-Anrufen von echten CID Withheld Anrufen
Vor einiger Zeit verspürte ich den Wunsch im Telefon-Log der Horstbox die Spam-Anrufe von Analog-Anrufern unterscheiden zu können.
Ich startete mit der Erweiterung meiner Spam-Behandlung in der extensions.conf, war aber erst nicht erfolgreich, da ich Asterisk denn doch nicht so gut kenne.
Glücklicherweise halfen mir die netten Leute im ip-phone Forum und nun kann ich Spam-Anrufe und Analog-Anrufe in den Telefon-Logs unterscheiden. Demnächst kann ich dann eine Statistik über eingegangene Spam-Anrufe erstellen.
Hier die Modifikation der extenstions.conf damit statt keiner Nummer die Nummer 999 erscheint:
[isdn-in] ... exten => 123456,1,ModifyCallerID(doit) exten => 123456,n,Set(CALLERID(num)=${CALLERID(num)}) exten => 123456,n,Set(CALLERID(num)=${IF($[ "${TRANSFERCAPABILITY}" = "3K1AUDIO"]?"999":CALLERID(num))}) ; exten => 123456,n,NoOp("iSDN-in : ${CALLERID(num)} Transfercapability: ${TRANSFERCAPABILITY}") exten => 123456,n,GotoIf($["${CALLERID(num)}" = "CID withheld"]?spam:) ; keine Nummer? exten => 123456,n,GotoIf($["${CALLERID(num)}" = ""]?istanalog:ist216) ; keine Nummer? exten => 123456,n(istanalog),GotoIf($["${TRANSFERCAPABILITY}" = "3K1AUDIO"])?annehmen:spam) ; kein Analog exten => 123456,n(ist216),GotoIf($["${CALLERID(num)}" = "216"]?spam:ist180) ; wenn 200 exten => 123456,n(ist180),GotoIf($["${CALLERID(num):0:4}" = "0180"]?spam:ist800) ; wenn mit 0180 beginnt->spam, sonst weiter ...
Die korrekte Zeile in der extensions.conf muss so lauten:
[isdn-in] ... exten => 123456,1,ModifyCallerID(doit) exten => 123456,n,Set(CALLERID(num)=${CALLERID(num)}) exten => 123456,n,Set(CALLERID(num)=${IF($[${TRANSFERCAPABILITY} = 3K1AUDIO]?999:${CALLERID(num)})}) exten => 123456,n,NoOp("iSDN-in : ${CALLERID(num)} Transfercapability: ${TRANSFERCAPABILITY}") exten => 123456,n,GotoIf($["${CALLERID(num)}" = "CID withheld"]?spam:) ; keine Nummer? exten => 123456,n,GotoIf($["${CALLERID(num)}" = ""]?istanalog:ist216) ; keine Nummer? exten => 123456,n(istanalog),GotoIf($["${TRANSFERCAPABILITY}" = "3K1AUDIO"])?annehmen:spam) ; kein Analog exten => 123456,n(ist216),GotoIf($["${CALLERID(num)}" = "216"]?spam:ist180) ; wenn 200 exten => 123456,n(ist180),GotoIf($["${CALLERID(num):0:4}" = "0180"]?spam:ist800) ; wenn mit 0180 beginnt->spam, sonst weiter ...
Hier mal ein Auszug aus dem Telefon-Log nach der Änderung (man beachte die fettgedruckten Einträge:
Eingehender Anruf | – | 08.03.2010 10:12:33 | 00:00 | |
Eingehender Anruf | – | 08.03.2010 12:59:45 | 00:00 | |
Eingehender Anruf | – | 999 | 08.03.2010 14:03:27 | 00:16 |
Eingehender Anruf | – | 08.03.2010 14:14:49 | 00:00 | |
Eingehender Anruf | – | xxxx | 08.03.2010 14:41:59 | 00:16 |
Eingehender Anruf | – | xxxx | 08.03.2010 16:26:53 | 00:00 |
Ausgehender Anruf | analoges Telefon an Tel1 <21> | xxxx | 08.03.2010 16:58:45 | 00:43 |
Eingehender Anruf | – | 01805777344 | 08.03.2010 18:08:04 | 00:00 |
Eingehender Anruf | – | 01805777344 | 08.03.2010 18:08:11 | 00:00 |
Ausgehender Anruf | analoges Telefon an Tel1 <21> | xxxx | 08.03.2010 18:32:53 | 07:30 |
Eingehender Anruf | – | 01805777344 | 08.03.2010 18:48:43 | 00:00 |
Eingehender Anruf | – | 01805777344 | 08.03.2010 18:48:51 | 00:00 |
Eingehender Anruf | – | 01805777344 | 09.03.2010 15:12:33 | 00:00 |
Eingehender Anruf | – | 01805777344 | 09.03.2010 15:12:41 | 00:00 |
Eingehender Anruf | – | xxxx | 09.03.2010 17:05:43 | 00:00 |
Eingehender Anruf | – | 01805777344 | 10.03.2010 12:01:35 | 00:00 |
Eingehender Anruf | – | 01805777344 | 10.03.2010 12:01:43 | 00:00 |
Manche Spam-Anrufer kapieren aber auch nix oder wieso rufen die im Sekundentakt an?