¿Hay alguna forma de verificar el puntaje en una aplicación ASP.Net? ¿Una clase o algo similar para .Net? ¿Qué hay de otros filtros de correo no deseado por ahí. - Editado Estoy buscando una forma de verificar la puntuación de spam de los mensajes de correo electrónico en C#.spamassassin check score C# code
5
A
Respuesta
1
No estoy muy seguro de si eso es lo que está buscando, pero hay un C# envoltorio que simplifica la comunicación con un servidor de SpamAssassin en Proyecto Código:
la esperanza de que ayuda!
4
Aquí está mi código súper simplificado de "simplemente compruebe el puntaje" para conectarse a un correo electrónico en ejecución de Spam Assassin desde C# que escribí para http://elasticemail.com. Simplemente configure SA para que se ejecute en un servidor y configure los permisos de acceso.
continuación, puede utilizar este código para llamarlo:
public class SimpleSpamAssassin
{
public class RuleResult
{
public double Score = 0;
public string Rule = "";
public string Description = "";
public RuleResult() { }
public RuleResult(string line)
{
Score = double.Parse(line.Substring(0, line.IndexOf(" ")).Trim());
line = line.Substring(line.IndexOf(" ") + 1);
Rule = line.Substring(0, 23).Trim();
Description = line.Substring(23).Trim();
}
}
public static List<RuleResult> GetReport(string serverIP, string message)
{
string command = "REPORT";
StringBuilder sb = new StringBuilder();
sb.AppendFormat("{0} SPAMC/1.2\r\n", command);
sb.AppendFormat("Content-Length: {0}\r\n\r\n", message.Length);
sb.AppendFormat(message);
byte[] messageBuffer = Encoding.ASCII.GetBytes(sb.ToString());
using (Socket spamAssassinSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp))
{
spamAssassinSocket.Connect(serverIP, 783);
spamAssassinSocket.Send(messageBuffer);
spamAssassinSocket.Shutdown(SocketShutdown.Send);
int received;
string receivedMessage = string.Empty;
do
{
byte[] receiveBuffer = new byte[1024];
received = spamAssassinSocket.Receive(receiveBuffer);
receivedMessage += Encoding.ASCII.GetString(receiveBuffer, 0, received);
}
while (received > 0);
spamAssassinSocket.Shutdown(SocketShutdown.Both);
return ParseResponse(receivedMessage);
}
}
private static List<RuleResult> ParseResponse(string receivedMessage)
{
//merge line endings
receivedMessage = receivedMessage.Replace("\r\n", "\n");
receivedMessage = receivedMessage.Replace("\r", "\n");
string[] lines = receivedMessage.Split('\n');
List<RuleResult> results = new List<RuleResult>();
bool inReport = false;
foreach (string line in lines)
{
if (inReport)
{
try
{
results.Add(new RuleResult(line.Trim()));
}
catch
{
//past the end of the report
}
}
if (line.StartsWith("---"))
inReport = true;
}
return results;
}
}
El uso es muy fácil:
List<RuleResult> spamCheckResult = SimpleSpamAssassin.GetReport(IP OF SA Server, FULL Email including headers);
le proporcione la lista de reglas de verificación de spam se golpea y el impacto puntuación resultante.
Cuestiones relacionadas
- 1. C++ is_trivially_copyable check
- 2. Lucene Score results
- 3. "Bueno" Flay Score
- 4. ACL Check/Management en C#
- 5. C# ToDictionary con ContainsKey check
- 6. Implementando Wilson Score en SQL
- 7. C++ Code Generation
- 8. C# Code Analysis CA2000
- 9. C++ Code Profiler
- 10. C# Code Generation
- 11. Optimizar C# Code Fragment
- 12. Android Score de predicción de gestos Rango
- 13. android radiobutton check after clearing check issue
- 14. Herramienta gratuita Code-to-Flowchart/UML para C# code
- 15. C# EventHandler Beautiful Code (¿Cómo?)
- 16. C# a VB.NET Code Converter
- 17. RELAX NG C++ Code Generator?
- 18. extraer 7zip en C# code
- 19. C# code to class diagram
- 20. Instrumenting C/C++ code using LLVM
- 21. Mezcla de C# Code y umanaged C++ code en Windows con Visual Studio
- 22. C# Code Minification Tools and Techniques
- 23. Off-the-Shelf C++ Hex Dump Code
- 24. estático Code Analyzer para C++ en Linux
- 25. Iniciando otra aplicación desde C# code
- 26. C++ code dependency/call-graph "viewer"?
- 27. Crear DataGridTemplateColumn a través de C# Code
- 28. .NET Spell Check control?
- 29. iPhone UIScrollView Speed Check
- 30. JQuery Check Input File
¿Qué puntuación? Puede ser más detallado sobre lo que está tratando de hacer. http://tinyurl.com/so-hints –
Ridvan, ¿desea implementar un sistema que reciba los correos electrónicos del servidor y compruebe qué es correo no deseado y qué es bueno? si es así, ¿qué quieres hacer con buenos y malos mensajes? –
Estoy tratando de implementar una herramienta que verifique el puntaje de spam de un mensaje de correo electrónico si se proporciona From, Subject and Body. No cuando recibo el correo electrónico, pero antes de que se envíe un correo electrónico, o una herramienta web para mostrar el puntaje de correo electrónico no deseado. He visto este http://www.codeproject.com/KB/recipes/BayesianCS.aspx pero para mí no es realmente Spam Assasin – Ridvan