我有一个邮件服务器X,它充当我们的反馈小程序的客户(A),创build用于他们的网站和客户(B)的客户之间的中间人。
所以,每当B发送一封电子邮件给A,它就会通过X,在那里我们装饰相同,以便给它一个特定的外观。 我们有一个特定的转发方法,其中我们给通过服务器的每个消息附加一个ID。
问题:如果A和C都有自动响应,则会创build无限循环。
怎样才能防止呢?
到目前为止的解决scheme:
维护一个可以在“离开”方法中使用的似是而非的词汇的字典。
问题:并不详尽。
在一天之内不允许超过两个“X”信息。
问题:限制合法使用。
在一天之内不允许超过两个“X”信息。
几乎正确的是,现在考虑自动响应发生得多快,而不是合法的消息。 如果实施洪水限制,则允许典型的消息,同时由于自动响应而不允许快速洪泛。
所以,设置“每Y分钟X个消息”或其他东西。
更多的信息将是伟大的,但在没有这个,我会认为你可以做任何你喜欢的。 我也将假设这些自动回复报价他们回应的消息。
因此,假设您的音量和计算能力允许这样做,为什么不在ABAB模式中寻找重复的响应呢? 也就是说,如果您看到以下内容,请回复一条友善的消息,说明响应的相似性类似于自动响应所产生的响应:
From: Adam Sent: Wednesday, January 03, 2013 9:10 AM To: Box Co Subject: RE: That thing I'm on vacation and will get back to you on January 10. -Adam From: Box Co Sent: Wednesday, January 03, 2013 9:11 AM To: Adam Subject: RE: That Thing We are closed in order to observe the Tamaseseri Festival and will return tomorrow. Box Co Where the boxes are best! From: Adam Sent: Wednesday, January 03, 2013 9:10 AM To: Box Co Subject: RE: That thing I'm on vacation and will get back to you on January 10. -Adam From: Box Co Sent: Wednesday, January 03, 2013 9:08 AM To: Adam Subject: RE: That Thing We are closed in order to observe the Tamaseseri Festival and will return tomorrow. Box Co Where the boxes are best! From: Adam Sent: Wednesday, January 03, 2013 9:07 AM To: Box Co Subject: That thing Do you have that thing I put in the box? -Adam
按照/\nSubject.*\n([.\n]*?)\nFrom/做一些事情,找出每个参与方发送的内容,并比较ABAB模式中的相同性。 你将不得不去除自动缩进等的影响
这不是一个简单的解决scheme,但我相信它可以工作,并应尽量减less误报和漏报。
除了“在每个地址的时间量上限制x个消息量”之外,还有几个指示器自动生成消息,因此可能不会被转发。
检查例如下面的头文件(并在你的邮件转发器中设置THEME,所以行为外的实现甚至不会回复你的应用程序)
precedence: bulk/list/junk x-precedence: bulk/list/junk auto-submitted: auto-replied X-Auto-Response-Suppress: ALL/DR/NDR/RN/NRN/OOF/AutoReply x-autoresponse
此外,一些外出实现不使用用户电子邮件作为信封发件人,但像postmaster @或null发件人。
我在这个stackoverflow问题中列出了几个指标,但我不确定它们适用于你的情况。