Check for no-reply when executing auto-reply rule

pull/217/head
M66B 10 months ago
parent 8c1d8fb21a
commit b94cf503cd

@ -1011,13 +1011,24 @@ public class EntityRule {
boolean attached = jargs.optBoolean("attached"); boolean attached = jargs.optBoolean("attached");
boolean attachments = jargs.optBoolean("attachments"); boolean attachments = jargs.optBoolean("attachments");
if (TextUtils.isEmpty(to) && if (TextUtils.isEmpty(to)) {
message.auto_submitted != null && message.auto_submitted) { if (Boolean.TRUE.equals(message.auto_submitted)) {
EntityLog.log(context, EntityLog.Type.Rules, message, EntityLog.log(context, EntityLog.Type.Rules, message, "Auto submitted rule=" + name);
"Auto submitted rule=" + name); return false;
}
Address[] recipients = (message.reply == null || message.reply.length == 0 ? message.from : message.reply);
if (recipients.length == 0) {
EntityLog.log(context, EntityLog.Type.Rules, message, "No recipients rule=" + name);
return false; return false;
} }
if (MessageHelper.isNoReply(recipients)) {
EntityLog.log(context, EntityLog.Type.Rules, message, "No-reply rule=" + name);
return false;
}
}
boolean complete = true; boolean complete = true;
if (!message.content) { if (!message.content) {

@ -5885,6 +5885,10 @@ public class MessageHelper {
return false; return false;
} }
static boolean isNoReply(Address[] addresses) {
return (addresses != null && isNoReply(Arrays.asList(addresses)));
}
static boolean isNoReply(@NonNull List<Address> addresses) { static boolean isNoReply(@NonNull List<Address> addresses) {
for (Address address : addresses) for (Address address : addresses)
if (isNoReply(address)) if (isNoReply(address))

Loading…
Cancel
Save