It is reasonably straight forward to "intercept" messages using qtmobility. I found it a little slow at times. In short the mobility API allows you to listen to any message and act on it (delete etc). The dbus interface allows you to handle the notification system. I could write something like this although isn't there a SMS blocker already. That could be modified to save the message somewhere.