3 Replies Latest reply on Jul 7, 2015 12:26 PM by anuj.pathak

    Issue with custom scheduled email timer task

    anuj.pathak

      Hi Everyone,

       

      We are facing some issue with our custom created email notification timer task (applicable only for our custom created content type in Jive)

      Based on some logic , We wanted to send daily one email notification to user list populated in each space extended properties.

       

      The issue is that this custom email timer task is messing up other timer tasks used for processing other types of email queues and because of this we observer below two issues.

       

      1. No emails were send out when a thread/discussion get updated or new comment added to thread which you are following or thread created by you get updated or

          commented and when other user reply to your posting /comment.

      2.  Blog post were not published on schedule time and user had to publish it manually when discovered.

       

      We did received email as we designed the custom email task as well as @mentioned notification email from Jive but other Jive emails were queued all the time but never delivered to user inbox. Once I removed custom code from Jive instance, I received all pending emails in bulk pending since our code was deployed on jive instance.

       

       

      Here is what we have in our custom plugin Spring.xml for this task.

       

      <bean id="voteThresholdEmailProcessor" class="com.issue.mail.VoteThresholdEmailProcessor">

         <property name="voteThresholdHelper" ref="voteThresholdHelper"/>

         <property name="emailManager" ref="emailManager"/>

         <property name="localeManager" ref="localeManager"/>

      <property name="globalResourceResolver" ref="globalResourceResolver"/>

        </bean>

       

        <bean id="voteThresholdEmailProcessorTask"
         class="com.jivesoftware.community.lifecycle.spring.task.SimpleTaskDefinitionBean">

         <property name="task" ref="voteThresholdEmailProcessor"/>

         <property name="delay" value="1"/>

         <property name="delayMultiplier">

         <util:constant static-field="com.jivesoftware.community.JiveConstants.MINUTE"/>

         </property>

         <!-- since this task is simply looking at a queue generated by the hourly task, we'll run once per minute -->
         <property name="period" value="1"/>

         <property name="periodMultiplier">

         <util:constant static-field="com.jivesoftware.community.JiveConstants.DAY" />

         </property>

         <property name="validApplicationStates" ref="defaultApplicationStateList"/>

         <property name="allowMultiple" value="false"/>

         <property name="runOnlyOnMasterNode" value="false"/>

        </bean>

       

       

      Please help if anyone faced similar issue or anything is wrong/missing in task definition.

       

      Jason New   I would appreciated any help on this issue.

       

      Thanks,

      Anuj