jj für ms

This commit is contained in:
Digital Data - Marlon Schreiber
2019-01-08 16:05:41 +01:00
parent 1198b1004e
commit 60ed01009a
81 changed files with 252991 additions and 131 deletions

Binary file not shown.

Binary file not shown.

View File

@@ -5,6 +5,7 @@ Imports DigitalData.EMLProfiler.ClassCurrent
Imports DigitalData.Modules.Logging
Public Class clsEmailIMAP
Private Shared Logger As DigitalData.Modules.Logging.Logger
Sub New(LogConf As LogConfig)
Logger = LogConf.GetLogger
End Sub
@@ -28,7 +29,6 @@ Public Class clsEmailIMAP
client.SelectFolder("Inbox")
Dim envelopes As Envelope() = client.ListMessages()
For i As Integer = 0 To envelopes.Length - 1
If Not IsNothing(envelopes(i).Subject) Then
'If envelopes(i).Subject.ToString.ToUpper.Contains("[PROCESSMANAGER]") Or envelopes(i).Subject.ToString.ToUpper.Contains("[ADDI]") Then
Logger.Info($"Working on email: UniqueID: {envelopes(i).UniqueID} - Subject:{envelopes(i).Subject} - Date {envelopes(i).Date.ToString}")
@@ -38,30 +38,46 @@ Public Class clsEmailIMAP
End If
'End If
End If
Next
client.Disconnect()
Logger.Debug("IMAP_COLLECT finished!")
Return True
' MAIL_LIST
'client.ValidateRemoteCertificate = False
'client.Connect()
'client.Login(MAIL_USER, MAIL_USER_PW)
'Dim messages As Message() = client.GetMessages("Inbox")
'For i As Integer = 0 To messages.Length - 1
' MAIL_LIST.Add(messages(i))
'Next
'Logger.Debug(String.Format("MAIL_LIST.Count: {0}", MAIL_LIST.Count))
'client.Disconnect()
Catch ex As Exception
Logger.Error(ex, "Unexpected Error in IMAP COLLECT:")
Return False
End Try
End Function
Public Function TEST_IMAP_COLLECT(INBOXNAME As String, MYMAIL_SERVER As String, MYMAIL_PORT As Integer, MYMAIL_USER As String, MYMAIL_USER_PW As String)
Try
Logger.Info(String.Format("Working on TEST_IMAP_COLLECT....."))
Dim client As New ImapClient(MYMAIL_SERVER, MYMAIL_PORT)
'If LOG_ERRORS_ONLY = False Then
' Dim emaillogger As New Independentsoft.Email.Logger(My.Application.Info.DirectoryPath & "\Log\IDSoftMailLog.txt")
' AddHandler emaillogger.WriteLog, AddressOf OnWriteLog
'client.Logger = emaillogger
'End If
client.Connect()
client.Login(MYMAIL_USER, MYMAIL_USER_PW)
client.SelectFolder(INBOXNAME)
Dim envelopes As Envelope() = client.ListMessages()
For i As Integer = 0 To envelopes.Length - 1
If Not IsNothing(envelopes(i).Subject) Then
'If envelopes(i).Subject.ToString.ToUpper.Contains("[PROCESSMANAGER]") Or envelopes(i).Subject.ToString.ToUpper.Contains("[ADDI]") Then
MsgBox($"Working on email: UniqueID: {envelopes(i).UniqueID} - Subject:{envelopes(i).Subject} - Date {envelopes(i).Date.ToString}")
Dim message As Mime.Message = client.GetMessage(envelopes(i).UniqueID)
End If
Next
client.Disconnect()
Logger.Info("TEST_IMAP_COLLECT finished!")
Return True
Catch ex As Exception
Logger.Error(ex, "Unexpected Error in TEST_IMAP_COLLECT:")
Return False
End Try
End Function
End Class

View File

@@ -1,13 +1,15 @@
Imports Independentsoft.Email
Imports Independentsoft.Email.Pop3
Imports Independentsoft.Email.Smtp
Imports Independentsoft.Email.Mime
Imports Independentsoft.Email.Imap
Imports DigitalData.EMLProfiler.ClassCurrent
Imports DigitalData.Modules.Logging
Imports Independentsoft.Email.Smtp
Public Class clsEmail
Private Shared Logger As DigitalData.Modules.Logging.Logger
Public Shared EMAIL_INBOX_LIST As New ArrayList()
Sub New(LogConf As LogConfig)
Logger = LogConf.GetLogger
End Sub
@@ -18,12 +20,6 @@ Public Class clsEmail
Try
Logger.Debug(String.Format("Working on POP3_COLLECT....."))
Dim client As New Pop3Client(MAIL_SERVER, MAIL_PORT)
'If LOG_ERRORS_ONLY = False Then
' Dim logger As New Logger(My.Application.Info.DirectoryPath & "\Log\IDSoftMailLog.txt")
' AddHandler logger.WriteLog, AddressOf OnWriteLog
' client.Logger = logger
'End If
client.ValidateRemoteCertificate = False
client.Connect()
@@ -35,7 +31,12 @@ Public Class clsEmail
For i As Integer = 0 To messageInfo.Length - 1
Dim message As Message = client.GetMessage(messageInfo(i).Index)
MAIL_LIST.Add(message)
Logger.Debug(String.Format("Message [{0}] added", message.Subject))
Try
Logger.Debug(String.Format("Message [{0}] added", message.Subject))
Catch ex As Exception
End Try
'client.Delete(messageInfo(i).Index)
Next
@@ -50,16 +51,37 @@ Public Class clsEmail
Return False
End Try
End Function
Public Function TEST_POP3_COLLECT(MYMAIL_SERVER As String, MYMAIL_PORT As Integer, MYMAIL_USER As String, MYMAIL_USER_PW As String) As Boolean
Try
Logger.Debug(String.Format("Working on TEST_POP3_COLLECT..."))
Dim client As New Pop3Client(MYMAIL_SERVER, MYMAIL_PORT)
client.ValidateRemoteCertificate = False
client.Connect()
Logger.Debug(String.Format("..connected!"))
client.Login(MYMAIL_USER, MYMAIL_USER_PW)
Dim messageInfo As MessageInfo() = client.List()
For i As Integer = 0 To messageInfo.Length - 1
Dim message As Message = client.GetMessage(messageInfo(i).Index)
MsgBox(String.Format("Message [{0}] added", message.Subject))
Next
client.Disconnect()
MsgBox(String.Format("TEST_POP3_COLLECT finished!"))
Return True
Catch ex As Exception
Logger.Error(ex)
Return False
End Try
End Function
Public Function DELETE_EMAIL(msgid As String)
Try
If CURRENT_POLL_TYPE = "POP" Then
Dim client As New Pop3Client(MAIL_SERVER, MAIL_PORT)
'If LOG_ERRORS_ONLY = False Then
' Dim logger As New Independentsoft.Email.Logger(My.Application.Info.DirectoryPath & "\Log\IDSoftMailLog.txt")
' AddHandler logger.WriteLog, AddressOf OnWriteLog
' client.Logger = logger
'End If
client.ValidateRemoteCertificate = False
client.Connect()
client.Login(MAIL_USER, MAIL_USER_PW)
@@ -79,10 +101,6 @@ Public Class clsEmail
ElseIf CURRENT_POLL_TYPE = "IMAP" Then
Dim client As New ImapClient(MAIL_SERVER, MAIL_PORT)
'Dim logger As New Logger(My.Application.Info.DirectoryPath & "\Log\IDSoftMailLog.txt")
'AddHandler logger.WriteLog, AddressOf OnWriteLog
'client.Logger = logger
client.ValidateRemoteCertificate = False
client.Connect()
client.Login(MAIL_USER, MAIL_USER_PW)
@@ -242,4 +260,5 @@ Public Class clsEmail
Return False
End Try
End Function
End Class

View File

@@ -123,8 +123,8 @@ Public Class clsWorkEmail
WM_IDX_BODY_SUBSTR_LENGTH = row("WM_IDX_BODY_SUBSTR_LENGTH")
COPY2HDD(row("COPY_2_HDD"), row("PATH_EMAIL_TEMP"), row("PATH_EMAIL_ERRORS"), True)
EXTRACT_BODY()
EXTRACT_ATTACHMENTS(row("PATH_EMAIL_TEMP"), row("PATH_EMAIL_ERRORS"))
EXTRACT_BODY()
oDel_email = row("DELETE_MAIL")
Next
EMAIL_DELETE(oDel_email)
@@ -273,7 +273,7 @@ Public Class clsWorkEmail
If Not IsNothing(m.Value) Then
If m.Value.Length > WM_IDX_BODY_SUBSTR_LENGTH Then
Try
Logger.Info($"Getting the Substring of body - Length: {WM_IDX_BODY_SUBSTR_LENGTH}...")
Logger.Debug($"Getting the Substring of body - Length: {WM_IDX_BODY_SUBSTR_LENGTH}...")
CURRENT_MAIL_BODY_Substr2 = m.Value.Substring(0, WM_IDX_BODY_SUBSTR_LENGTH)
Catch ex As Exception
Logger.Warn("Error in Substring 168: " & ex.Message)
@@ -289,27 +289,9 @@ Public Class clsWorkEmail
End If
End If
'Dim matchcount As Integer = 0
'Do While m.Success
' matchcount += 1
' Console.WriteLine("Match" & (matchcount))
' Dim i As Integer
' For i = 1 To 2
' Dim g As Group = m.Groups(i)
' Console.WriteLine("Group" & i & "='" & g.ToString() & "'")
' Dim cc As CaptureCollection = g.Captures
' Dim j As Integer
' For j = 0 To cc.Count - 1
' Dim c As Capture = cc(j)
' Console.WriteLine("Capture" & j & "='" & c.ToString() _
' & "', Position=" & c.Index)
' Next
' Next
' m = m.NextMatch()
'Loop
Logger.Info(String.Format("MailBody-Substring After RecognizeString:...[{0}]", CURRENT_MAIL_BODY_Substr2))
Logger.Debug(String.Format("MailBody-Substring After RecognizeString:...[{0}]", CURRENT_MAIL_BODY_Substr2))
End If
Catch ex As Exception
@@ -403,8 +385,12 @@ Public Class clsWorkEmail
Return children
End Function
Private Function EMAIL_DELETE(del As Boolean)
If del = True And MessageError = False And _worked_email = True Then
If del = True And MessageError = False Then
_email.DELETE_EMAIL(CURRENT_MAIL_MESSAGE.MessageID)
Else
If MessageError = True Then
Logger.Warn($"Could not delete Message {CURRENT_MAIL_MESSAGE.MessageID} as there was an MessageError!")
End If
End If
End Function
Private Function WORK_POLL_STEPS() As Boolean

View File

@@ -113,7 +113,7 @@ Public Class clsWorker
End Select
If pollresult = False Then
Logger.Warn(String.Format("Error while polling emails...."))
Continue For
End If
If MAIL_LIST.Count() > 0 Then
Logger.Info(String.Format("Worked/Pulled: {0} E-Mails", MAIL_LIST.Count()))

View File

@@ -17,7 +17,6 @@ E:\SchreiberM\Visual Studio\GIT\DD_EmailProfiler\App\DigitalData.EMLProfiler\bin
E:\SchreiberM\Visual Studio\GIT\DD_EmailProfiler\App\DigitalData.EMLProfiler\bin\Debug\Independentsoft.Email.xml
E:\SchreiberM\Visual Studio\GIT\DD_EmailProfiler\App\DigitalData.EMLProfiler\bin\Debug\NLog.xml
E:\SchreiberM\Visual Studio\GIT\DD_EmailProfiler\App\DigitalData.EMLProfiler\bin\Debug\FirebirdSql.Data.FirebirdClient.pdb
E:\SchreiberM\Visual Studio\GIT\DD_EmailProfiler\App\DigitalData.EMLProfiler\obj\Debug\DigitalData.EMLProfiler.vbprojAssemblyReference.cache
E:\SchreiberM\Visual Studio\GIT\DD_EmailProfiler\App\DigitalData.EMLProfiler\obj\Debug\DigitalData.EMLProfiler.Resources.resources
E:\SchreiberM\Visual Studio\GIT\DD_EmailProfiler\App\DigitalData.EMLProfiler\obj\Debug\DigitalData.EMLProfiler.vbproj.GenerateResource.cache
E:\SchreiberM\Visual Studio\GIT\DD_EmailProfiler\App\DigitalData.EMLProfiler\obj\Debug\DigitalData.EMLProfiler.vbproj.CoreCompileInputs.cache