November Happy Hour will be moved to Thursday December 5th.

WTF Is... - "Notification Dispatcher" and "Notification Message Truncate" jobs

Vote:
 

Hi

Episerver has internal scheduled jobs "Notification Dispatcher" and "Notification Message Truncate" that don't have any job description or documentation (at least one that I could find). The dispatcher result is only "OK" which is not very informative. What are these jobs for?

#139420
Oct 01, 2015 23:11
Vote:
 

My best guess is that those are related to workflow email notifications.

#139429
Oct 02, 2015 8:33
Vote:
 

They are currently in BETA phase and is part of upcoming project notification/collaboration funcitonality where users will be able to collaborate/get notifications around changes in project.

#139456
Oct 02, 2015 14:37
Vote:
 

Nice feature leaking out in production and not documented =) 

 
You can make this scheduled job disappear in module setting in admin mode.

#139457
Oct 02, 2015 14:45
Vote:
 
<p>I am not sure what you mean with leaking?&nbsp;</p> <p>The backend API&nbsp;(including those scheduled jobs) is done and in production quality (even though BETA tagged to get possibility to change it if required due to UI implementation). This is one consequence of having weekly releases where we roll out features that gets more complete over time.</p> <p>We prefer to have continuous releases where a feature can grow over time instead of shelving things and release them at bigbang releases.</p>
#139458
Oct 02, 2015 14:57
Vote:
 

This is a draft of the documentation of these two new jobs:

Notification Dispatcher
The settings in the Notification Dispatcher job determine how often EPiServer CMS sends notifications of new or updated comments or replies posted in projects by a notification provider (for example, an e-mail provider). Notification messages are sent to the user who created the comment, or if it is a reply to a comment, both to the user who posted the original comment and to the user who replied. No notification is sent if no new comments or replies have been posted since the job last executed.

The job is enabled by default, and set to run every half hour.

Notification Message Truncate
The Notification Message Truncate job truncates or deletes 3 month old notification messages. It is a clean-up job that deletes messages that could not be sent and are still in the system.

The job is enabled by default, and set to run every day.

#139459
Oct 02, 2015 14:58
Vote:
 
<p>Johan if you would leave your car in for a service, and while driving home from the dealer.</p> <p>Noticing that you have a new button and that button is default pressed, and nobody have told you about it and what it does, wouldn't you get a bit confused?</p> <p></p> <p></p>
#139460
Oct 02, 2015 15:25
Vote:
 

The latest CMS nuget (9.8.1) had the NotificationDispatcherJob namespace changed which causes errors.

2016-04-21 02:02:35,362 ERROR EPiServer.DataAbstraction.ScheduledJob: Failed to load type 'EPiServer.Notification.NotificationDispatcherJob' from assembly 'EPiServer' to remove this job permanent remove the contents of tblScheduledItemLog and tblScheduledItem for the job with jobId ='9fddf6f2-30a5-4835-8fa2-4b5c09b2efe7' from the database
System.TypeLoadException: Could not load type 'EPiServer.Notification.NotificationDispatcherJob' from assembly 'EPiServer, Version=9.8.1.0, Culture=neutral, PublicKeyToken=8fe83dea738b45b7'.
   at System.Reflection.RuntimeAssembly.GetType(RuntimeAssembly assembly, String name, Boolean throwOnError, Boolean ignoreCase, ObjectHandleOnStack type)
   at System.Reflection.RuntimeAssembly.GetType(String name, Boolean throwOnError, Boolean ignoreCase)
   at EPiServer.DataAbstraction.ScheduledJob.InternalExec(Boolean startThread)
System.TypeLoadException: Could not load type 'EPiServer.Notification.NotificationDispatcherJob' from assembly 'EPiServer, Version=9.8.1.0, Culture=neutral, PublicKeyToken=8fe83dea738b45b7'.
   at System.Reflection.RuntimeAssembly.GetType(RuntimeAssembly assembly, String name, Boolean throwOnError, Boolean ignoreCase, ObjectHandleOnStack type)
   at System.Reflection.RuntimeAssembly.GetType(String name, Boolean throwOnError, Boolean ignoreCase)
   at EPiServer.DataAbstraction.ScheduledJob.InternalExec(Boolean startThread)

Easy to fix by deleting the obsolete scheduled item entry from the DB:

DELETE FROM [EpiserverDB].[dbo].[tblScheduledItemLog] where [fkScheduledItemId] = '9FDDF6F2-30A5-4835-8FA2-4B5C09B2EFE7';
DELETE FROM [EpiserverDB].[dbo].[tblScheduledItem] where pkID = '9FDDF6F2-30A5-4835-8FA2-4B5C09B2EFE7';s
#147671
Apr 21, 2016 1:54
Vote:
 

Thanks Jouni, we will fix that.

#147681
Apr 21, 2016 10:02
This topic was created over six months ago and has been resolved. If you have a similar question, please create a new topic and refer to this one.
* You are NOT allowed to include any hyperlinks in the post because your account hasn't associated to your company. User profile should be updated.