| Author | 
         | 
         
      
        
         
         Guests Guest Group 
          
 
  Joined: 10 November 2003
 Online Status: Online Posts: 262
          | 
        
         
          
           | Posted: 24 May 2004 at 5:41pm | IP Logged
		     | 
                    
            		  
           | 
           
          
           
  | 
           
          
Hello,
 
 I am using Mailbee's pop3 object, how do i restrict my RetrieveMessages method to pnly new messages.
 
 Thanks
 prasad challa
         | 
       
       
        | Back to Top | 
         
          
         | 
       
       
       
        |   | 
      
        
         
         Alex AfterLogic Support 
          
  
  Joined: 19 November 2003
 Online Status: Offline Posts: 2207
          | 
        
         
          
           | Posted: 25 May 2004 at 5:24am | IP Logged
		     | 
                    
            		  
           | 
           
          
           
  | 
           
          
Basically, the POP3 protocol has no features to determine whether a message is new or not.
 
 However, the POP3 protocol allows you to get list of Unique-ID's of all messages in the mailbox.
 
 The procedure is as follows:
 
 On every connection to POP3 server, get list of Unique-ID's of all messages in the mailbox.
 
 Then, check which of these ID's are already in database. Those ID's which already in database, correspond to old messages. If particular ID is not in database, it is a new message: download it completely!
 
 Once all new messages are retrieved, update database with recent version of Unique-ID's list.
 
 Thus, on very first connection the database is empty (and all messages are new). Next times the procedure will retrieve only new messages.
 
 To get list of Unique-ID's, use Search method of POP3 object.
 
 Sample code below shows MailBee part of the procedure discussed above. IsNewMessage function is empty, in your code it should actually lookup passed Unique-ID value in the database.
 
 ' This is main function. It retrieves new messages from
 ' the POP3 server and shows "Subject:" field of each
 ' retrieved message.
 Sub RetrieveNewMessages()
   Dim objPOP3, objMsg, I
 
   ' Array of Unique-IDs (taken from the POP3 server)
   Dim arrIDs
 
   ' Create POP3 object
   Set objPOP3 = CreateObject("MailBee.POP3")
 
   ' Unlock POP3 object
   objPOP3.LicenseKey = "put your license key here"
 
   ' Set POP3 server name
   objPOP3.ServerName = "mail.server.com"
 
   ' Set user credentials
   objPOP3.UserName = "username"
   objPOP3.Password = "password"
 
   ' Connect to the server and log in the mailbox
   If objPOP3.Connect Then
 
     ' Get Unique-IDs for all messages in the mailbox
     arrIDs = objPOP3.Search
 
     ' Iterate through all messages in the mailbox
     For I = 1 To objPOP3.MessageCount
 
       ' Search Unique-ID of the message in the database
       If IsNewMessage(arrIDs(I)) Then
       
         ' Download new message entirely
         Set objMsg = objPOP3.RetrieveSingleMessage(I)
         
         ' Display the message's Subject
         MsgBox objMsg.Subject
       End If
     Next
 
     ' Close the connection
     objPOP3.Disconnect
   Else
     ' Display error information
     MsgBox "Error #" & objPOP3.ErrCode
     MsgBox "Server response: " & objPOP3.ServerResponse
   End If
 End Sub
 
 ' This helper function should lookup the ID in the
 ' database, and then return True if the ID does not
 ' exist in the list of already downloaded messages.
 Function IsNewMessage(ID)
   ' For demo purposes, the function always returns True.
   IsNewMessage = True
 End Function
         | 
       
       
        | Back to Top | 
         
          
         | 
       
       
       
        |   | 
      
        
         
         Guests Guest Group 
          
 
  Joined: 10 November 2003
 Online Status: Online Posts: 262
          | 
        
         
          
           | Posted: 14 September 2004 at 8:55pm | IP Logged
		     | 
                    
            		  
           | 
           
          
           
  | 
           
          
            
         | 
       
       
        | Back to Top | 
         
          
         | 
       
       
       
        |   | 
      
        
         
         Alex AfterLogic Support 
          
  
  Joined: 19 November 2003
 Online Status: Offline Posts: 2207
          | 
        
         
          
           | Posted: 15 September 2004 at 6:01am | IP Logged
		     | 
                    
            		  
           | 
           
          
           
  | 
           
          
Could you describe in more detail what did you mean?
 
 Regards,
 Alex
         | 
       
       
        | Back to Top | 
         
          
         | 
       
       
       
        |   |