ASP.Net 응용 프로그램에서 점수를 확인할 수있는 방법이 있습니까? 닷넷과 비슷한 클래스 또는 무엇인가? 어때? 다른 스팸 필터는 어때? - 편집 된 버전 C#에서 이메일 메시지의 스팸 점수를 확인하는 방법을 찾고 있습니다.spamassassin 확인 점수 C# 코드
5
A
답변
1
내가 생각하는 당신이 검색되지만, 코드 프로젝트에 어쌔신 서버와의 통신을 단순화하는 C#을 래퍼가 무엇인지 정확히 확인하지 :
희망이 도와 줘요!
4
여기 내에 대해 작성한 C#에서 실행중인 스팸 어쌔신 이메일 확인에 연결하기위한 "점수 확인"코드가 있습니다. SA를 설정하여 서버에서 실행하고 액세스 권한을 설정하십시오.
그런 다음 당신은 그것을 호출하는 코드를 사용할 수 있습니다
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;
}
}
사용법은 매우 간단합니다 :
List<RuleResult> spamCheckResult = SimpleSpamAssassin.GetReport(IP OF SA Server, FULL Email including headers);
그것은 당신이 공격 스팸 검사 규칙 목록 및 결과 점수에 미치는 영향을 반환합니다.
관련 문제
- 1. 스팸 확인, 스팸 점수 방법?
- 2. 응답 코드 확인 C#
- 3. 계산 점수
- 4. 스파 스를 사용하여 C 코드 확인
- 5. 어떻게 3 개의 점수() 점수 합계를 구합니까?
- 6. 코드 숨김 함수 확인
- 7. 이맥스 코드 유효성 확인
- 8. j 기존 코드 확인
- 9. 코드 서명자 확인
- 10. 코드 서명자 유효성 확인
- 11. 게임 센터 점수 제출 문제
- 12. Facebook 게시 점수
- 13. 왜 "DISTINCT 1 AS 점수 점수 ORDER BY 점수 DESC;"수 없습니다 임시 테이블 생성 중 작업
- 14. 프로젝트의 크기를 결정하는 방법 (코드 행, 기능 점수, 기타)
- 15. Lucene 점수 결과
- 16. 텍스트 뷰에 점수 설정
- 17. XNA 게임에서 점수 유지하기
- 18. NHibernate.Search로 점수 얻기
- 19. 음악 점수 WYSIWYG
- 20. 점수 개요를 표시하는 방법
- 21. 플래시 게임의 점수 (PTS)
- 22. 앱의 점수 정보 업데이트
- 23. 게임 센터에 점수 제출하기
- 24. 점수 닌자 어댑터 API
- 25. OpenCalais의 관련성 점수 이해하기
- 26. 게임에서 점수 증가 컨트롤
- 27. 텍스트 파일에 점수 업로드
- 28. Solr 점수/정렬 제어
- 29. Facebook 최고 점수 서버
- 30. 최고 점수 데이터 저장
어떤 점수를 확인 하시겠습니까? 당신은 당신이하려고하는 것에 대해 더 자세하게 설명 할 수 있습니다. http://tinyurl.com/so-hints –
Ridvan, 서버에서 전자 메일을 가져 와서 스팸 및 양호한 내용을 확인하는 시스템을 구현 하시겠습니까? 그렇다면 좋고 나쁜 메시지로 무엇을하고 싶습니까? –
보낸 사람, 제목 및 본문이 제공되면 전자 메일 메시지의 스팸 점수를 확인하는 도구를 구현하려고합니다. 이메일을 받았을 때가 아니라 이메일을 보내기 전에 또는 이메일의 스팸 점수를 표시하는 웹 도구. 나는이 http://www.codeproject.com/KB/recipes/BayesianCS.aspx를 보았지만 나에게 그것은 실제로 스팸 어쌔신이 아니다. – Ridvan