Outside the default notification sounds?
I have the app called Tasker loaded which is still in beta and not in the market which has an event setting for 'SMS Receive'. So, I setup a profile event for SMS Receive and left the Sender and Message fields blank which placed a '*' in each field. I guess that means you can setup different things for different contacts and message contents if you populate the fields with data. Anyway, I set the task for this profile to play a whistle sound and repeat it ten times using variables (like a script loop), and it does it! I simply removed the default alarm setting in the default SMS application so I don't hear both alarms, but now it plays the SMS alarm ten times vice just once.
Tasker is in beta, but available from the author at
Dinglisch Forums - Latest Version (0.11b). I sideloaded it using ASTRO file manager. The author believes that it will probably be put in the market in April for $4 which is when the beta release currently expires.
As for plugging and unplugging, there are States in Tasker for those too which are; Power AC, or Power USB, or USB Plugged. So, you should be able to add them all to a single Profile and create the tasks you want to happen when the State change occurs.
Tasker does Application, Time, Day, Location, State, and Event profiles, and it has an impressive amount of various tasks it can be setup to perform in each profile. Check out the authors homepage at
Tasker for Android.