External Review Email Sharing Issue - Sender Email Missing

Vote:
 

I've recently installed version 0.9.3 of the Advanced CMS - Add-on for Advanced & External Reviews on Optimizely 11. However, I'm encountering an issue with the functionality to share external review emails. The error message indicates that the sender email is missing.

To troubleshoot, I created a blank Alloy site with the latest 1.3.6 version to check if the issue persists. Surprisingly, I encountered the same error on the Alloy demo site, which suggests it might not be related to the version or my project structure.

Here's the error message captured in console on Alloy Demo site.

https://ibb.co/ZXT5ks9

I have included notification settings in appsettings as well to see if it makes any difference except that now the console error is gone but email is still not sent.Found a closed ticket on github that still seems to be an issue.

Could there be some configuration that I'm missing? Any insights or suggestions would be greatly appreciated.

#320737
Edited, Apr 19, 2024 19:45
Vote:
 

Can you share your SMTP settings?

#320814
Apr 21, 2024 22:12
Farhin - Apr 22, 2024 19:18
Hi Ronil,
For SMTP settings, only the SMTP host name is defined in my configuration file. By default, the port is 25, which in my case is not specified, but I am assuming it is 25. Is this what you are asking for?
Vote:
 

Which SMTP server are you using and does the email get sent for standard Opti notifications?

Try using the pickup directory delivery method. If you get email files in the maildrop folder, that would indicate an issue with your SMTP settings or when connecting to it

"EPiServer": {
    "CMS": {
      "Smtp": {
        "DeliveryMethod": "SpecifiedPickupDirectory",       
        "SpecifiedPickupDirectory": {
           "PickupDirectoryLocation": "c:/MailDrop"
         }
      }
    }
}
#320913
Edited, Apr 23, 2024 1:33
Vote:
 

Hi Farhin,

Did you see Ronil's questions? (above)

>>>> Which SMTP server are you using and does the email get sent for standard Opti notifications?

Could you share this section (without the password, of course) from your Web.config file?

<mailSettings>
    <smtp from="***@***.***">
        <network host="***.***.***" password="************" userName="***" port="***" />
    </smtp>
</mailSettings>

#321460
May 03, 2024 13:48
Vote:
 
Here are a few trials I did on Optimizely 11 & 12. In version 11, it worked even without additional configuration for DeliveryMethod. Setting the notification email address through code settings didn't work; however, setting it in the web.config file did.
Here's the config settings on 11

<episerver>
<applicationSettings defaultNotificationEmailAddress="noreply@***.com" 
defaultNotificationEmailDisplayName="NoReply"  
globalErrorHandling="RemoteOnly" 
uiSafeHtmlTags="b,i,u,br,em,strong,p,a,img,ol,ul,li"
disableVersionDeletion="false" 
httpCacheability="Public"
httpCacheExpiration="02:00:00"
uiEditorCssPaths="~/Static/css/Editor.css"
urlRebaseKind="ToRootRelative"
pageUseBrowserLanguagePreferences="false" 
uiShowGlobalizationUserInterface="false" 
subscriptionHandler="EPiServer.Personalization.Internal.SubscriptionMail,EPiServer.Cms.AspNet"
uiMaxVersions="20" pageValidateTemplate="false"
uiUrl="~/EPiServer/CMS/" /> 
</episerver>
<mailSettings>
<smtp>
<network host="***smtp.***.com" />
</smtp>
</mailSettings>
For Optimizely 12, here's the configuration which is still not working. I know for a fact that the SMTP doesn't have any issues. If that were the case, it would not have worked for version 11 as well. So, I am still unsure what the issue is.

"Episerver":{
 "Cms": {
  "Smtp": {
    "DeliveryMethod": "SpecifiedPickupDirectory",
    "SpecifiedPickupDirectory": "./MailDrop"
    },
  "Network": {
    "Host": "***smtp.***.com", 
    "Port": "25"
  },
  "Notification": {
    "NotificationEmailDisplayName": "NoReply",
    "NotificationEmailAddress": "noreply@***.com"
  },
}
}

#321600
May 06, 2024 13:54
Vote:
 

Hi Farhin

Your appsettings json doesn't look correct. The Network settings should be inside the Smtp object as per below, also note the correction to the SpecifiedPickupDirectory syntax

"EPiServer": {
  "Cms": {    
    "Smtp": {
      "DeliveryMethod": "Network",
      "SpecifiedPickupDirectory": {
        "PickupDirectoryLocation": "c:/MailDrop"
      },
      "Network": {
       "Host": "***smtp.***.com", 
       "Port": "25"
      }
    },
    "Notification": {
     "NotificationEmailDisplayName": "NoReply",
     "NotificationEmailAddress": "noreply@***.com"
    }
  }
}

If it still doesn't work using the above, try setting the DeliveryMethod to SpecifiedPickupDirectory and see if you get email files in the MailDrop folder (note you will need to create this folder first in the specified location).

#321637
May 07, 2024 2:02
Farhin - May 07, 2024 12:54
Ronil, I've implemented the suggestions you provided, but despite that, the emails aren't being sent out, and I can't find any relevant information in the stack trace. Regarding the specifiedPickupDirectory, I'm still uncertain why that is required. In Episode 11, the emails were sent even without the special network settings, which I assumed should be the case. Nevertheless, to test it out, I corrected those settings you mentioned, but still, no emails are being sent. I discovered that someone posted the same issue on GitHub just a day ago: https://github.com/advanced-cms/advanced-reviews/issues/247



Vote:
 

I am using the package in both CMS 11 and CMS 12 sites and both work fine. Following is what I have: Try delivery method as Network

CMS 11:

In my web.config file under <system.net>  I have as listed below

    <mailSettings>
      <smtp configSource="Configs\mailsettings.config"/>
    </mailSettings>

Then my mailSettings file under Configs folder has as mentioned below. Make sure to have the smtp from in a valid email format.

<smtp from="noreply@abc.com">
  <network  host="*****" password="***************************" userName="***" port="**" />
</smtp>

CMS 12:

Under Cms node of appSettings,

      "SmtpOptions": {
        "DeliveryMethod": "Network",
        "network": {
          "host": "*******",
          "password": "**************",
          "port": "***",
          "userName": "*****"
        },
        "NotificationOptions": {
          "NotificationEmailAddress": "noreply@abc.com",
          "NotificationEmailDisplayName": "Display Name"
        }
      }
    },

#321826
May 10, 2024 14:49
* 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.