Subscribe to news items comments: Implement ICommentNotificationsStrategy interface

You need to implement the ICommentNotificationsStrategy interface with a new CustomCommentNotificationsStrategy class that inherits from the  Telerik.Sitefinity.Services.Comments.Impl.Notifications.CommentNotificationsStrategy. To do this:

  1. In Visual Studio, open your Sitefinity CMS project.
  2. In the context menu of the project, click Add » Class...
  3. Name the class CustomCommentNotificationsStrategy.
    The new class must inherit the CommentNotificationStrategy class.
  4. Override the ShouldNotify method.
    The ShouldNotify method discriminates notifications based on the current comment event. By default, this method specifies that only published comments should raise notifications. Therefore, you need to override this method to return true without checking the comment status.
  5. Provide custom subscription keys.
    Sitefinity CMS uses different patterns for constructing the subscription keys for the different types of subscription. That is, the structure of the subscription key used for notification by thread differs from the structure of the subscription key used for notification by thread type. The unique structure of the subscription keys enables you to get the subscription list that is associated with certain event.

    You need to provide a unique pattern for constructing the subscription keys associated with the custom notification strategy and to integrate them with the existing notification type

  6. Notify the subscribers that have subscribed for this specific comment status.
    By default, when a comment event occurs Sitefinity CMS notifies all subscribers that have subscribed for the respective thread key or type.  

Use the following code sample:

Create a new class and name it CustomSubscriptionData.
The methods of the ICommentNotificationsStrategy interface for subscriptions expect a SubscriptionData object as a parameter. You can extend the SubscriptionData class to provide any additional information that you might need to use - in this case the comment status:

Use the following code sample:

Increase your Sitefinity skills by signing up for our free trainings. Get Sitefinity-certified at Progress Education Community to boost your credentials.

Web Security for Sitefinity Administrators

The free standalone Web Security lesson teaches administrators how to protect your websites and Sitefinity instance from external threats. Learn to configure HTTPS, SSL, allow lists for trusted sites, and cookie security, among others.

Foundations of Sitefinity ASP.NET Core Development

The free on-demand video course teaches developers how to use Sitefinity .NET Core and leverage its decoupled architecture and new way of coding against the platform.

Was this article helpful?