DTMF? and caller ID info

I'll revive this old thread :wink: it came up first in a search for arduino and caller-id.

I'm annoyed by telemarketers and bill collectors that have the wrong person and yet still won't remove me from their list. I want to have a 'gate' that opens and closes based on passing a pass/block list. if the pattern or string matches, the relay clicks and the phone can ring. if the number is on the block list, the relay stays open and the call is logged but the phone is never rung. ie, I'm not disturbed by the idiots :wink:

anyone have anything that does stuff close to this?

what I'm thinking of using is a regular modem that supports callerid and has true serial out. that could go into soft-serial or the real serial port on the arduino. it should not be hard to send the setup string to the modem (to enable callerid) and then poll the serial port waiting for incoming calls.

what I have not found is any good regex style pattern matcher for the arduino. anyone have one or any ideas?

I suppose I'll also need to have some storage. maybe sd-card is the right thing to use. you can have a larger white/black list as a file on the card and you can also log data to the card. I suppose a pc app could also be written to manage larger lists on the card and then use the arduino simply as an engine to permit/deny calls based on the pattern match.