Look in Sitecore.Analytics.config
in the app_config/include
folder.
In there you'll find a reference to Sitecore.Analytics.Pipelines.InsertRenderings.Personalization
which is a processor in the insertRenderings
pipeline.
If you decompile that class (it's in Sitecore.Analytics.dll) you will see that it is responsible for taking action when personalization conditions are met.
I think you could probably extend this class to add the functionality you require. Then you can replace the original class reference in the config file with your new one.