MS Changes Firebird due to wisag
This commit is contained in:
67
App/DigitalData.EMLProfiler/clsEmail.IMAP.vb
Normal file
67
App/DigitalData.EMLProfiler/clsEmail.IMAP.vb
Normal file
@@ -0,0 +1,67 @@
|
||||
Imports Independentsoft.Email
|
||||
Imports Independentsoft.Email.Imap
|
||||
Imports Independentsoft.Email.Mime
|
||||
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
|
||||
'Private Shared Sub OnWriteLog(ByVal sender As Object, ByVal e As WriteLogEventArgs)
|
||||
' Logger.Info(e.Log)
|
||||
'End Sub
|
||||
Public Function IMAP_COLLECT()
|
||||
Try
|
||||
Logger.Info(String.Format("Working on IMAP_COLLECT....."))
|
||||
Logger.Debug(String.Format("Working on IMAP_COLLECT....."))
|
||||
Dim client As New ImapClient(MAIL_SERVER, MAIL_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.ValidateRemoteCertificate = False
|
||||
client.Connect()
|
||||
client.Login(MAIL_USER, MAIL_USER_PW)
|
||||
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}")
|
||||
Dim message As Mime.Message = client.GetMessage(envelopes(i).UniqueID)
|
||||
If Not IsNothing(message) Then
|
||||
MAIL_LIST.Add(message)
|
||||
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
|
||||
End Class
|
||||
Reference in New Issue
Block a user