рдЕрдХреНрд╕рд░, рдХрдВрдкрдиреА рдХреА рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдмрд╛рд░рдХреЛрдб рд╡рд╛рд▓реЗ рдкреНрд░рд▓реЗрдЦрди рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╢рд╛рдорд┐рд▓ рд╣реЛрддреА рд╣реИ, рдФрд░ рдлрд┐рд░ рдЙрдиреНрд╣реЗрдВ рдХреБрдЫ рд▓реЗрдЦрд╛рдВрдХрди рдкреНрд░рдгрд╛рд▓реА рдореЗрдВ рджрд░реНрдЬ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд░реЗрд▓рд╡реЗ рдкрд░рд┐рд╡рд╣рди рдЙрджреНрдпреЛрдЧ рдФрд░ рдПрдпрд░рд▓рд╛рдЗрдиреЛрдВ рдХреЗ рд▓рд┐рдП: рдЯрд┐рдХрдЯ рдирдВрдмрд░ рдХрдВрдкрдиреА рдПрдЬреЗрдВрдЯреЛрдВ рджреНрд╡рд╛рд░рд╛ рдИ-рдореЗрд▓ рдкрд░ рднреЗрдЬреЗ рдЧрдП рдХреВрдкрди рдХреЗ рдмрд╛рд░рдХреЛрдб рдореЗрдВ рд╕реБрд░рдХреНрд╖рд┐рдд рд╣реИрдВред рдСрдкрд░реЗрдЯрд░реЛрдВ рдХреЛ рдРрд╕реЗ рд╣рдЬрд╛рд░реЛрдВ рдХреВрдкрди рдХреЛ рдЖрдВрддрд░рд┐рдХ рд▓реЗрдЦрд╛ рдкреНрд░рдгрд╛рд▓реА рдореЗрдВ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдФрд░ рджрд░реНрдЬ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдХрд╛рд░реНрдп рдирд┐рдпрдорд┐рдд рд╣реИ, рдорд╛рдирд╡ рдХрд╛рд░рдХ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рднрдбрд╝рдХрд╛рддрд╛ рд╣реИред рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдХреИрд╕реЗ рдХрд░реЗрдВ рдФрд░ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдкрддреНрд░ рдФрд░ рдЙрдирдХреЗ рдЕрдиреБрд▓рдЧреНрдирдХреЛрдВ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╕реЗ рдСрдкрд░реЗрдЯрд░ рдХреЛ рдмрдЪрд╛рдПрдВ? рд╣рдореЗрдВ MS SharePoint рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рд╕рд░рд▓ рд╕рдорд╛рдзрд╛рди рдорд┐рд▓рд╛ред рд╣рдореЗрд╢рд╛ рдХреА рддрд░рд╣, рд╣рдордиреЗ рдореМрдЬреВрджрд╛ рд╕рд┐рд╕реНрдЯрдо рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛, рдореМрдЬреВрджрд╛ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдФрд░ рд╣рдорд╛рд░реЗ рдХреБрдЫ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдореИрдЬрд┐рдХ рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЛ рдЕрдзрд┐рдХрддрдо рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреАред
рдПрдХреНрд╕рдЪреЗрдВрдЬ рд╕реЗрдЯрдЕрдк
рдпрджрд┐ рдЖрдк
рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЛ рдкрдврд╝рддреЗ рд╣реИрдВ рдФрд░ рд╕рдм рдХреБрдЫ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреА рд╕реЗрдЯрд┐рдВрдЧ рдореЗрдВ рдХреБрдЫ рдЯреИрдк рдореЗрдВ рдЖрдкрдХреЗ рд▓рд┐рдП рд╕рдм рдХреБрдЫ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:


SharePoint рд╡рд╛рд▓реЗ рд╕рд░реНрд╡рд░ рдкрд░, рдкрддреНрд░ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореЗрд▓ рд╕рд░реНрд╡рд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЗрдирдмреЙрдХреНрд╕ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдЗрдирдмреЙрдХреНрд╕ рдЕрдХреНрд╖рд░ рдЗрдирдмреЙрдХреНрд╕ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдкрд░ рджрд┐рдЦрд╛рдИ рджреЗрддреЗ рд╣реИрдВред SharePoint рдкреНрд░рддреНрдпреЗрдХ рджреЛ рдорд┐рдирдЯ рдореЗрдВ рдЗрдирдмреЙрдХреНрд╕ рдлрд╝реЛрд▓реНрдбрд░ рдХреА рдЬрд╛рдБрдЪ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдпрджрд┐ рд╡рд╣рд╛рдБ рдлрд╝рд╛рдЗрд▓реЗрдВ рд╣реИрдВ, рддреЛ рдпрд╣ рдЙрдиреНрд╣реЗрдВ рд╕рдВрд╕рд╛рдзрд┐рдд рдФрд░ рд╣рдЯрд╛рддрд╛ рд╣реИред
рдпрд╣ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐ рдПрдХ рдкрдВрдХреНрддрд┐ рдореЗрдВ рд╕рднреА рдлрд╛рдЗрд▓реЗрдВ (рдПрдХ рдЧрд▓рдд рдкреНрд░рд╛рдкреНрддрдХрд░реНрддрд╛ рдкрддреЗ рдХреЗ рд╕рд╛рде, рдЧрд▓рдд рдЕрддрд┐рд░рд┐рдХреНрдд рдЯреИрдЧ рдпрд╛ рдЖрдЙрдЯрд▓реБрдХ рдПрдХреНрд╕рдкреНрд░реЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмрдирд╛рдИ рдЧрдИ) рд╕рдВрд╕рд╛рдзрд┐рдд рдирд╣реАрдВ рдХреА рдЬрд╛рдПрдВрдЧреА - рдлрд╝рд╛рдЗрд▓ рдХреЛ IIS рд╕реЗ SMTP рд╕рд░реНрд╡рд░ рджреНрд╡рд╛рд░рд╛ рдмрдирд╛рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рдЗрд╕ рдкрддреЗ рдкрд░ рдЖрдиреЗ рд╡рд╛рд▓реЗ рд╕рднреА рдкрддреНрд░ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдореЗрдВ рдЖрддреЗ рд╣реИрдВ:

рдкреНрд░рддреНрдпреЗрдХ рдЕрдХреНрд╖рд░ рдореЗрдВ jpg, png, tiff, pdf рдлреЙрд░рдореЗрдЯ рдореЗрдВ рдПрдХ рдпрд╛ рдЕрдзрд┐рдХ рдЕрдЯреИрдЪрдореЗрдВрдЯ рд╣реЛрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдореЗрдВ рдмрд╛рд░рдХреЛрдб рдХреЗ рд╕рд╛рде рдПрдХ рдпрд╛ рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рджрд╕реНрддрд╛рд╡реЗрдЬ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ:

рдмрд╛рд░рдХреЛрдб рдкрд╣рдЪрд╛рди рдХреЗ рд▓рд┐рдП, рд╣рдордиреЗ рдУрдкрди рд╕реЛрд░реНрд╕ рдЬрд╝рдХреНрд╕рд┐рдВрдЧ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛, рдЬрд┐рд╕рдХреЗ рд╕рд╛рде рдЖрдк рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рдХрд╛рд░ рдХреЗ рдмрд╛рд░рдХреЛрдб рдХреЛ рд╕реНрдХреИрди рдФрд░ рдкреНрд░реЛрд╕реЗрд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣рд╛рдВ рд╣рдореЗрдВ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреА рдХреНрд╖рдорддрд╛рдУрдВ рдХреЛ рдереЛрдбрд╝рд╛ рдкрд░рд┐рд╖реНрдХреГрдд рдХрд░рдирд╛ рдерд╛, рдпрд╛ рдпреЛрдВ рдХрд╣реЗрдВ рдХрд┐ рд╕рдорд╛рдкреНрдд рд╣реЛрдиреЗ рд╡рд╛рд▓реЗ рдкреНрд░рддреАрдХ рдХреЗ рд▓рд┐рдП рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо, рдХреНрдпреЛрдВрдХрд┐ рдЧреНрд░рд╛рд╣рдХ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдЬрд╝реЙрдХреНрд╕рд┐рдВрдЧ рдореЗрдВ рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИ (рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рдХреЛрдбрдмрд╛рд░ рдХреЗ рд╕рдорд╛рди рд╣реИ)ред
рдЗрд╕рдХреЗ рдмрд╛рдж, рд╣рдордиреЗ рдИрд╡реЗрдВрдЯ рд╣реИрдВрдбрд▓рд░ рдХреЛ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛, рд╣рд░ 15 рдорд┐рдирдЯ рдореЗрдВ zax рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдИрдореЗрд▓ рдЕрдЯреИрдЪрдореЗрдВрдЯ рдореЗрдВ рджрд╕реНрддрд╛рд╡реЗрдЬреЛрдВ рдХреА рдкрд╣рдЪрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬреЛ рдХрд┐ рдПрдХреНрд╕рдЪреЗрдВрдЬ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдкреЛрд░реНрдЯрд▓ рддрдХ рдкрд╣реБрдВрдЪрддреЗ рд╣реИрдВред рдлрд┐рд░ рд╡рд╣ рдЙрдиреНрд╣реЗрдВ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЙрдард╛рддрд╛ рд╣реИ, рд╕рдВрд▓рдЧреНрдирдХ, рдкреНрд░реЗрд╖рдХ рдХрд╛ рдкрддрд╛ рдФрд░ рдкреНрд░реЗрд╖рдХ рдХреЛрдб (рдХрдВрдкрдиреА рдПрдЬреЗрдВрдЯ рдХрд╛ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛) рдХреЛ рдмрд╛рд╣рд░ рдирд┐рдХрд╛рд▓рддрд╛ рд╣реИред
рдЪреЗрддрд╛рд╡рдиреА! рдлрд┐рд░ рд╕реАрдбреАрдУ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдИрдореЗрд▓ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдФрд░ рдЗрд╕рдХреЗ рд╕реНрдЯреНрд░реАрдо-рдПрд╕ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╣реБрдд рд╕рд╛рд░реЗ рд░реВрдЯреАрди рдХреЛрдб рд╣реИрдВред
рдХреЛрдбusing System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text.RegularExpressions; using ADODB; using CDO; using ETR.REBT.BarcodeReader; using Stream = System.IO.Stream; namespace ETR.BusinessLogic.EBTBlanks { internal class EBTMailParser { private static readonly string[] SupportedExtensions = { "application/pdf" , "image/jpeg" , "image/bmp" , "image/png" , "image/tiff" }; private static readonly Regex AgencyCodePattern = new Regex(@"{\w*}"); public static EBTMailParseResult ParseEmail(Stream emlStream) { var result = new EBTMailParseResult { Success = true }; Message msg = new MessageClass(); ADODB.Stream stream = new StreamClass(); try { CopyStream(emlStream, stream); msg.DataSource.OpenObject(stream, "_Stream"); result.FromAddress = msg.From; result.SendDate = msg.SentOn; result.ReceivedDate = msg.ReceivedTime; string agentCode; if (TryParseAgencyCode(msg.Subject, out agentCode)) { result.AgencyCode = agentCode; } else { result.Status = " . , . , {12345}"; return result; } if (msg.Attachments.Count == 0) { result.Status = " "; return result; } result.Attachments = ParseAttachments(msg.Attachments).ToList(); return result; } catch (Exception ex) {
рдпрджрд┐ рд╣реИрдВрдбрд▓рд░ рдХреЛ рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХреА рддреНрд░реБрдЯрд┐ (рдЧрд▓рдд рдлрд╝рд╛рдЗрд▓ рдПрдХреНрд╕рдЯреЗрдВрд╢рди, рдПрдЬреЗрдВрдЯ рдХреЛрдб рдкрд╣рдЪрд╛рдирд╛ рдирд╣реАрдВ рдЬрд╛рддрд╛ рд╣реИ, рдЖрджрд┐) рдорд┐рд▓ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЗрд╕рдХреЗ рд╡рд┐рд╡рд░рдг рд╡рд╛рд▓реА рдПрдХ рдШрдЯрдирд╛ EventBus рдореЗрдВ рд▓реЙрдЧ рдЗрди рд╣реЛрддреА рд╣реИред
рдпрджрд┐ рдХреЛрдИ рддреНрд░реБрдЯрд┐ рдирд╣реАрдВ рд╣реИ, рддреЛ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЕрдЯреИрдЪрдореЗрдВрдЯ рдкрд╛рд░реНрд╕ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ, рдмрд╛рд░рдХреЛрдб рдЬрд┐рд╕рдореЗрдВ рд╕реЗ рдЬрд╛рдирдХрд╛рд░реА рдкрдврд╝реА рдЬрд╛рддреА рд╣реИ, рдЙрдирд╕реЗ "рдЦреАрдВрдЪрд╛ рдЬрд╛рддрд╛ рд╣реИ"ред рдкреНрд░рддреНрдпреЗрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдмрд╛рд░рдХреЛрдб рдХреЗ рд▓рд┐рдП, SharePoint рдореЗрдВ рдПрдХ рдлреЙрд░реНрдо рдмрдирд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреЛ рдореВрд▓ рджрд╕реНрддрд╛рд╡реЗрдЬ рдкреНрд░рд╛рдкреНрдд рд╣реЛрдиреЗ рдкрд░ рдСрдкрд░реЗрдЯрд░реЛрдВ рджреНрд╡рд╛рд░рд╛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЕрдВрдд рдореЗрдВ, рдПрдХ рдШрдЯрдирд╛ EventBus рдХреЛ рдПрдХ рд╕рдВрджреЗрд╢ рдХреЗ рд╕рд╛рде рднреЗрдЬрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдкрддреНрд░ рдХреЛ рдкрд╛рд░реНрд╕ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬрд╛рдирдХрд╛рд░реА рд╣реИ рдХрд┐ рдЗрд╕рдореЗрдВ рдХрд┐рддрдиреА рдлрд╛рдЗрд▓реЗрдВ рдорд┐рд▓реА рд╣реИрдВ, рдХрд┐рддрдиреЗ рдХреВрдкрди рдЕрдЯреИрдЪрдореЗрдВрдЯ рдореЗрдВ рд╣реИрдВ, рдХрд┐рддрдиреЗ рдЯрд┐рдХрдЯ рдХреВрдкрди рдореЗрдВ рд╣реИрдВред рд╕рднреА рдЗрдЪреНрдЫреБрдХ рдкрд╛рд░реНрдЯрд┐рдпреЛрдВ рдХреЛ рдПрдХ рдзрдХреНрдХрд╛ рд╕реВрдЪрдирд╛ рдорд┐рд▓рддреА рд╣реИред

рдпрд╣ рд╡реНрдпрд╡рд╕рд╛рдп рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдПрдХ рдмрдбрд╝реА рдкрд░рд┐рд╡рд╣рди рдХрдВрдкрдиреА рдХреЗ рдмрдбрд╝реЗ рдХрд╛рд░реНрдпрд╛рд▓рдп рдХреЗ рдХрд╛рдо рдХрд╛ рдПрдХ рдЫреЛрдЯрд╛ рд╕рд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИред рдЗрд╕реЗ рдЕрдиреНрдп рдХреНрд╖реЗрддреНрд░реЛрдВ рдореЗрдВ рднреА рдЖрд╕рд╛рдиреА рд╕реЗ рдЕрдиреБрд╡рд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдЬрд╣рд╛рдВ рдЖрдкрдХреЛ рдЖрдиреЗ рд╡рд╛рд▓реЗ рдкреНрд░рд▓реЗрдЦрди рдХреЛ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдФрд░ рдирд┐рдпрдорд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдФрд░ рдЬрд╣рд╛рдВ SharePoint рдФрд░ Exchange рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдЗрд╕ рддрд░рд╣ рдХреА рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ рд╣рдорд╛рд░рд╛ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдореМрдЬреВрджрд╛ рдкреНрд░рдгрд╛рд▓реА рдореЗрдВ рд╕реБрдзрд╛рд░ рдХреЛ рд░реЛрдХрдирд╛ рдирд╣реАрдВ рд╣реИ, рдЙрдкрд▓рдмреНрдз рд╕рд╛рдзрдиреЛрдВ, рд╕рд░рд▓рддрд╛ рдФрд░ рд╣рдорд╛рд░реЗ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреМрд╢рд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рднреА рджрд┐рдирдЪрд░реНрдпрд╛ рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдХрд░рдирд╛ рд╣реИред