CRM plugin not firing for emails sent from console application
I have a plugin written that is registered for the DeliverIncoming message on the email entity in CRM. The plugin fires normally when emails arrive into a queue.
I also have a console application that connects to the CRM service, checks the followupby attribute of cases and depending on the date sends out a reminder/overdue notification.
The problem is that these emails aren't causing the plugin to fire. The email activities are created in 开发者_如何学JAVACRM and the emails are sent and delivered without any issue but the plugin doesn't fire. I also tried registering the plugin against the Create message of the email entity and that doesn't fire either.
The emails are sent using the SendEmailFromTemplateRequest as the request object being passed into the CrmService.Execute() method
The plugin fires for all other instances of emails being delivered. The emails sent from the console application are the only ones experiencing this issue. Does anybody know why this would occur?
Thanks, Neil
DeliverIncoming
only fires for eMails routed into the CRM queues by the eMail Router. It will not fire on eMails you send from the CRM system.
Finding out what exact message a plugin needs to be registered against to fire on a certain action is sometimes a case of trial and error. Write a simple plugin that just logs the time and context.MessageName
somewhere and register it against any message valid for the email
entity. Then send an eMail through your application and have a look at what the plugin logged.
Turns out the plugin was firing, but when run from the console application it was throwing an exception when trying to log to a file it didn't have permission to. I had a break point on the second line, the first line was the logging line.
精彩评论