Example #1
0
        public static List <PhotoData> GetPhotoData(bool deleteMessages)
        {
            var imagesData = new List <PhotoData>();

            OpenPOP.POP3.POPClient client = new POPClient("mail.shockbyte.com.ar", 110, "*****@*****.**", "Password11", AuthenticationMethod.USERPASS);
            Console.WriteLine("Connected");
            var count = client.GetMessageCount( );

            Console.WriteLine("Message Count: " + count);
            for (int i = 1; i <= count; i++)
            {
                Console.WriteLine("Message");
                var message = client.GetMessage(i, false);

                foreach (Attachment att in message.Attachments)
                {
                    Console.WriteLine("Att: " + att.ContentFileName);
                    var extPos = att.ContentFileName.LastIndexOf(".");
                    if (extPos >= 0)
                    {
                        var ext = att.ContentFileName.Substring(extPos + 1).ToLowerInvariant( );

                        var photo = new PhotoData( )
                        {
                            Data = att.DecodedAsBytes( ), From = message.From, Title = message.Subject, FileName = att.ContentFileName
                        };

                        switch (ext)
                        {
                        case "jpg":
                        case "jpeg":
                            photo.ImageType = "image/jpeg";
                            imagesData.Add(photo);

                            break;

                        case "gif":
                            photo.ImageType = "image/gif";
                            imagesData.Add(photo);

                            break;

                        case "png":
                            photo.ImageType = "image/png";
                            imagesData.Add(photo);

                            break;
                        }
                    }
                }
            }

            if (deleteMessages)
            {
                client.DeleteAllMessages( );
            }

            client.Disconnect( );

            return(imagesData);
        }