Notification Service : Delivery Failure for E-Mail.

Unanswered Notification Service : Delivery Failure for E-Mail.

  • Tuesday, April 06, 2010 8:55 AM
     
     

    Hi,

             I am running a Notification serivce at my local system. Its  trigger  all  the events sucessfully . But i get Delivery Failure Description in  NSPrNotificationsNotificationDistribution Table while Email is trigger

    I even didnt find any message in mailroot folder .

     

     

    Application XML

     

     

    <?xml version="1.0" encoding="utf-8" ?>

    <Application xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.microsoft.com/MicrosoftNotificationServices/ApplicationDefinitionFileSchema">

     

    <Database>

    <DatabaseName>ABCPress</DatabaseName>

    <SchemaName>NSC</SchemaName>

    </Database>

     

    <EventClasses>

    <EventClass>

    <EventClassName>PressRelease</EventClassName>

    <Schema>

    <Field>

    <FieldName>PrId</FieldName>

    <FieldType>Int</FieldType>

    <FieldTypeMods>NOT NULL</FieldTypeMods>

    </Field>

    <Field>

    <FieldName>PrTitle</FieldName>

    <FieldType>Varchar(250)</FieldType>

    <FieldTypeMods>NOT NULL</FieldTypeMods>

    </Field>

    <Field>

    <FieldName>PdfFileName</FieldName>

    <FieldType>Varchar(250)</FieldType>

    <FieldTypeMods>NOT NULL</FieldTypeMods>

    </Field>

    <Field>

    <FieldName>PrDate</FieldName>

    <FieldType>datetime</FieldType>

    <FieldTypeMods>NOT NULL</FieldTypeMods>

    </Field>

    <Field>

    <FieldName>PrType</FieldName>

    <FieldType>int</FieldType>

    <FieldTypeMods>NOT NULL</FieldTypeMods>

    </Field>

    </Schema>

     

     

    <ChronicleRule>

    <RuleName>PrChronRule</RuleName>

    <Action>

    Insert into PrChron (PrId,PrTitle,PdfFileName,PrDate,PrType)

    Select e.PrId,e.PrTitle,e.PdfFileName,e.PrDate,e.PrType

    From  PressRelease e

    where e.PrId not in (select  PrChron.PrId from PrChron)

     

    Update PrChron

    set PrTitle=e.PrTitle,

    PdfFileName=e.PdfFileName,

    PrDate=e.PrDate,

    PrType=e.PrType

     

    from PressRelease e,PrChron c

    where  e.PrId=c.PrId

    </Action>

     

    </ChronicleRule>

     

    <Chronicles>

    <Chronicle>

    <ChronicleName>PrChron</ChronicleName>

    <SqlSchema>

    <SqlStatement>

    If Exists (Select name from dbo.Sysobjects where name='PrChron')

    drop table PrChron

    Create Table PrChron

    ( PrId int,

    PrTitle Varchar(250),

    PdfFileName Varchar(250),

    PrDate datetime,

    PrType int

     

    )

    Create Index ixPrId on PrChron (PrId)

     

    </SqlStatement>

    </SqlSchema>

    </Chronicle>

    </Chronicles>

    </EventClass>

    </EventClasses>

     

    <SubscriptionClasses>

    <SubscriptionClass>

    <SubscriptionClassName>PrSubscription</SubscriptionClassName>

    <Schema>

     

    <Field>

    <FieldName>SubscriberDeviceName</FieldName>

    <FieldType>nvarchar(250)</FieldType>

    <FieldTypeMods>Not Null</FieldTypeMods>

    </Field>

    <Field>

    <FieldName>SubscriberLocale</FieldName>

    <FieldType>nvarchar(10)</FieldType>

    <FieldTypeMods>Not Null</FieldTypeMods>

    </Field>

    <Field>

    <FieldName>PrType</FieldName>

    <FieldType>int</FieldType>

    <FieldTypeMods>Not Null</FieldTypeMods>

    </Field>

    </Schema>

     

    <EventRules>

    <EventRule>

    <EventClassName>PressRelease</EventClassName>

    <RuleName>PrEventRule</RuleName>

    <Action>

    Insert into PrNotifications (SubscriberId,DeviceName,SubscriberLocale,PrTitle,PdfFileName)

    select s.SubscriberId,s.SubscriberDeviceName,s.SubscriberLocale,e.PrTitle,e.PdfFileName

    from PressRelease e,PrSubscription s where e.PrType=s.PrType

    </Action>

     

    </EventRule>

    </EventRules>

     

     

    <ScheduledRules>

    <ScheduledRule>

    <RuleName>PrSubscriptionSchedRule</RuleName>

    <Action>

    Insert into PrNotifications(SubscriberId,DeviceName,SubscriberLocale,PrTitle,PdfFileName)

    select s.SubscriberId,s.SubscriberDeviceName,s.SubscriberLocale,e.PrTitle,e.PdfFileName

    from PressRelease e,PrSubscription s where e.PrType=s.PrType

     

    </Action>

     

    </ScheduledRule>

    </ScheduledRules>

     

    </SubscriptionClass>

    </SubscriptionClasses>

     

    <NotificationClasses>

    <NotificationClass>

    <NotificationClassName>PrNotifications</NotificationClassName>

    <Schema>

    <Fields>

    <Field>

    <FieldName>PrTitle</FieldName>

    <FieldType>Varchar(250)</FieldType>

    </Field>

     

    <Field>

    <FieldName>PdfFileName</FieldName>

    <FieldType>Varchar(250)</FieldType>

    </Field>

    </Fields>

    </Schema>

    <ExpirationAge>P0DT08H00M00S</ExpirationAge>

     

    <ContentFormatter>

    <ClassName>XsltFormatter</ClassName>

    <Arguments>

    <Argument>

    <Name>XsltBaseDirectoryPath</Name>

    <Value>%_ApplicationBaseDirectoryPath_%\XslTransforms</Value>

    </Argument>

    <Argument>

    <Name>XsltFileName</Name>

    <Value>Application.xslt</Value>

    </Argument>

    </Arguments>

    </ContentFormatter>

    <DigestDelivery>true</DigestDelivery>

    <MulticastDelivery>false</MulticastDelivery>

    <Protocols>

    <Protocol>

    <ProtocolName>SMTP</ProtocolName>

    <Fields>

    <Field>

    <FieldName>Subject</FieldName>

    <SqlExpression>&apos;  Details - &apos; + convert (Nvarchar(30), Getdate(),101)</SqlExpression>

    </Field>

    <Field>

    <FieldName>BodyFormat</FieldName>

    <SqlExpression>&apos;html&apos;</SqlExpression>

    </Field>

    <Field>

    <FieldName>From</FieldName>

    <SqlExpression> &apos;XX@XX.com&apos;</SqlExpression>

    </Field>

    <Field>

    <FieldName>Priority</FieldName>

    <SqlExpression>&apos;Normal&apos;</SqlExpression>

    </Field>

    <Field>

    <FieldName>To</FieldName>

    <SqlExpression>DeviceAddress</SqlExpression>

    </Field>

    </Fields>

    <ProtocolExecutionSettings>

    <RetrySchedule>

    <RetryDelay>P0DT01H00M00S</RetryDelay>

    <RetryDelay>P0DT02H00M00S</RetryDelay>

    <RetryDelay>P0DT04H00M00S</RetryDelay>

    </RetrySchedule>

    <FailuresBeforeAbort>4</FailuresBeforeAbort>

    <WorkItemTimeout>P0DT02H00M00S</WorkItemTimeout>

    </ProtocolExecutionSettings>

    </Protocol>

    </Protocols>

    </NotificationClass>

    </NotificationClasses>

     

     

     

    <Providers>

    <HostedProvider>

    <ProviderName>SqlPrEP</ProviderName>

    <ClassName>SQLProvider</ClassName>

    <SystemName>%_NSServer_%</SystemName>

    <Schedule>

    <Interval>P0DT00H00M15S</Interval>

    </Schedule>

    <Arguments>

    <Argument>

    <Name>EventsQuery</Name>

    <Value>Select PrId,PrTitle,PdfFileName,PrDate,PrType from StoneWorks.dbo.StoneTable    </Value>

    </Argument>

     

    <Argument>

    <Name>EventClassName</Name>

    <Value>PressRelease</Value>

    </Argument>

    </Arguments>

     

    </HostedProvider>

    </Providers>

     

     

    <Generator>

    <SystemName>%_NSServer_%</SystemName>

    </Generator>

     

    <Distributors>

    <Distributor>

    <SystemName>%_NSServer_%</SystemName>

    <QuantumDuration>PT15S</QuantumDuration>

    </Distributor>

    </Distributors>

     

    <ApplicationExecutionSettings>

    <QuantumDuration>PT15S</QuantumDuration>

    </ApplicationExecutionSettings>

     

     

    </Application>

     

     

     

    INSTANCE Config.XML

     

     

     

    <?xml version="1.0" encoding="utf-8"?>

    <NotificationServicesInstance xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.microsoft.com/MicrosoftNotificationServices/ConfigurationFileSchema">

     

    <InstanceName>ABCPress</InstanceName>

     

    <ParameterDefaults>

    <Parameter>

    <Name>_SQLServer_</Name>

    <Value>##SQL_SERVER##</Value>

    </Parameter>

    <Parameter>

    <Name>_NSServer_</Name>

    <Value>%COMPUTERNAME%</Value>

    </Parameter>

    <Parameter>

    <Name>_InstanceBaseDirectoryPath_</Name>

    <Value>##INSTANCE_BASE_DIRECTORY_PATH##</Value>

    </Parameter>

    </ParameterDefaults>

     

    <SqlServerSystem>%_SqlServer_%</SqlServerSystem>

     

    <Database>

    <DatabaseName>ABCPress</DatabaseName>

    <SchemaName>NSC1</SchemaName>

    </Database>

     

    <Applications>

    <Application>

    <ApplicationName>PressReleases</ApplicationName>

    <BaseDirectoryPath>%_InstanceBaseDirectoryPath_%\NSC</BaseDirectoryPath>

    <ApplicationDefinitionFilePath>ApplicationDefinition.xml</ApplicationDefinitionFilePath>

    <Parameters>

    <Parameter>

    <Name>_NSServer_</Name>

    <Value>%_NSServer_%</Value>

    </Parameter>

    <Parameter>

    <Name>_ApplicationBaseDirectoryPath_</Name>

    <Value>%_InstanceBaseDirectoryPath_%\NSC</Value>

    </Parameter>

    </Parameters>

    </Application>

    </Applications>

     

    <DeliveryChannels>

    <DeliveryChannel>

    <DeliveryChannelName>EmailChannel</DeliveryChannelName>

    <ProtocolName>SMTP</ProtocolName>

    <Arguments>

    <Argument>

    <Name>SmtpServer</Name>

    <Value>IP address</Value>

    </Argument>

    <Argument>

    <Name>BodyEncoding</Name>

    <Value>utf-8</Value>

    </Argument>

    </Arguments>

    </DeliveryChannel>

     

     

    </DeliveryChannels>

     

    <EncryptArguments>false</EncryptArguments>

    </NotificationServicesInstance>


     

    Application.xslt

     

     

     

    <?xml version="1.0" encoding="UTF-8" ?>

    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

     

        <xsl:output method="text"/>

     

        <xsl:template match="notifications">

    New songs are available for download from the music store!

                <xsl:apply-templates/>

        </xsl:template>

     

        <xsl:template match="notification">

           PrTitle: <xsl:value-of select="PrTitle" />

         PdfFileName: <xsl:value-of select="PdfFileName" />

           <xsl:text>

           </xsl:text>

        </xsl:template> 

    </xsl:stylesheet>