I ran into this with a customer recently and wanted to document what I found. The customer is using Cisco Unity Connections 9.1 for voicemail with Single Inbox and Exchange 2010 SP3.
Cisco's Single Inbox provides a UM experience similar to Exchange Unified Messaging, where voicemails are delivered to the user's Inbox as emails with attached WAV files. The voicemail messages are linked by Unity Connections so that if a user deletes a voicemail in Unity, the email message is also deleted. Likewise, if the user deletes the voicemail email message in Exchange the voicemail is deleted in Unity.
Unity Connections 8.5.x and later uses Exchange Web Services (EWS) for connectivity to Exchange 2007 and Exchange 2010 mailboxes using a service account. How Unity programmatically does this is a mystery since it is not documented anywhere in Cisco's documentation.
The issue here is that the way Unity Connections Single Inbox creates the message in the recipient's mailbox bypasses the rules table associated with the mailbox. The result is that rules don't fire for these messages. For example, it's common for users to create an Inbox rule that moves messages from Unity Connections to a custom folder like "Voicemails". If you manually run the rule it works as expected.
https://supportforums.cisco.com/docs/DOC-17854. A comment in this forum post implies this is an Exchange bug, but I've confirmed that Inbox rules fire correctly when messages are sent via EWS in a normal manner. Fellow Exchange MCM, Mike Pfeiffer, has a great post on Sending Email with PowerShell and the EWS Managed API. I used this PowerShell function to send emails using EWS and test Inbox rules, which worked perfectly.
I've tried every creative trick I know to work around this issue, to no avail. In the end, there's really nothing that can be done to fix this until Cisco changes to the way it sends Single Inbox messages using EWS.