|
09.05.2018, 19:19 | #1 |
Участник
|
Обработка из DAX2009 писем в разных почтовых серверах по каким-то общим технологиям
Коллеги, добрый день.
Имеем DAX2009, Интересует концептуальный вопрос - чем пользоваться для обработки разных почтовых ящиков по отправленным и входящим письмам, которые не отправлялись и DAX, но нужно иметь данные как по отправленным, так и по входящим письмам на нескольких почтовых ящиках, которые расположены на разных типах почтовых серверах и письма рассортированы по разным папкам? Естественно, интересует обработка программно из DAX. В общем виде задача от больших боссов выглядит так:
По частям что и как использовать понимаю:
В общем, есть ли какой-либо стандарт, пусть сложный, непонятный, но единый, для обращения и ко входящим и к отправленным письмам для семейства почтовых серверов когда мы не отправляем, мы не получаем письма сами, а только запрашиваем их данные? |
|
09.05.2018, 21:10 | #2 |
Banned
|
Если поставлю под сомнение уместность решения делать это в AX2009, будет ли это злобным оффтопом?
|
|
|
За это сообщение автора поблагодарили: TDV (1). |
10.05.2018, 07:17 | #3 |
Участник
|
Не, оффтопом не будет - сам в шоке от задачи. Но делать придется - очень уж хотят, чтобы при общении с клиентом того же Callcenter сотрудник, подняв карточку клиента знал об истории общения с ним через разные каналы коммуникаций.
|
|
10.05.2018, 19:15 | #4 |
Banned
|
Цитата:
Цитата:
CRM/HelpDesk к примеру http://osticket.com/editions или https://oroinc.com/orocrm/orocrm-features и внедрить нормальную CRM И на том же PHP все будет несколько проще http://php.net/manual/en/function.im...h-overview.php https://stackoverflow.com/questions/...-inbox-folders Засовывать все это в AX2009 не дальновидно. C точки зрения бизнеса конечно, а не AX программиста. Но и для AX программиста это возможность научиться чему-то новому. IMHO конечно, но всегда если техническое решение требует чесания в голове значит надо пересматривать саму постановку задачи. |
|
09.05.2018, 23:35 | #5 |
Участник
|
Про MS Exchange 2010SP2
Цитата:
"Получить список входящих и отправленных писем независимо от того, в общей папке они находятся или разбросаны по разным папкам. " Да "Зная конкретное письмо (по предыдущему пункту) получить его данные (включая, например, вложения)." Да можно, в html формате само письмо скачивается(eml) и приложения скачать в виде файлов. Сложного ничего нет. PHP код:
Последний раз редактировалось TDV; 09.05.2018 в 23:37. Причина: добавлено eml |
|
|
За это сообщение автора поблагодарили: Raven Melancholic (5), sukhanchik (4). |
10.05.2018, 07:26 | #6 |
Участник
|
Спасибо за пример.
Пока хочется найти что-либо более не завязанное на конкретный тип сервера. Типа как есть стандарты отправки/получения SMTP, POP3, так же хочется понять есть ли какие-либо стандарты пусть даже неофициальные, но которых большинство почтовиков придерживается с точки зрения выбора нужных папок, получения информации о количестве писем в этих папках и т.п. |
|
10.05.2018, 10:52 | #7 |
Участник
|
|
|
|
За это сообщение автора поблагодарили: Raven Melancholic (10), ax_mct (3). |
10.05.2018, 11:53 | #8 |
Участник
|
|
|
10.05.2018, 11:57 | #9 |
Боец
|
А не думали в сторону ограничиться интреграцией AX с одним сервером, нарп. Exсhange; на остальных же, настроить переадресацию входящих на основной. Сложность и надежность решения на порядок упрощается.
|
|
|
За это сообщение автора поблагодарили: Ivanhoe (2), ax_mct (3). |
10.05.2018, 12:51 | #10 |
Участник
|
Может возникнуть потребность делать ответ с Exchange клиенту от имени почтового ящика на который он высылал письмо. У самих 4 разных почтовых адреса(4 ящика), и периодически приходится делать подмену почтового адреса отправки что-бы получатель не путался(на что отправил, с того и ответ получил). В Exchage не получится нормально без прав send As на учетку к привязанному(mailbox) изменить адрес отправки(send as), с этим были небольшие мучения.
|
|
10.05.2018, 13:09 | #11 |
Боец
|
Цитата:
Сообщение от TDV
Может возникнуть потребность делать ответ с Exchange клиенту от имени почтового ящика на который он высылал письмо. У самих 4 разных почтовых адреса(4 ящика), и периодически приходится делать подмену почтового адреса отправки что-бы получатель не путался(на что отправил, с того и ответ получил). В Exchage не получится нормально без прав send As на учетку к привязанному(mailbox) изменить адрес отправки(send as), с этим были небольшие мучения.
P.S. На гитхабе лежит готовый проект на C# для парсинга аутлуковских фалов *.msg, без участия последнего: достает всё что можно достать из письма, включая аттачменты и раскладывает по полкам. Это до кучи, может вам и не пригодится. Проект рабочий, мне очень помог в свое время. Последний раз редактировалось DSPIC; 10.05.2018 в 13:19. |
|
|
За это сообщение автора поблагодарили: TDV (1), Raven Melancholic (10). |
10.05.2018, 13:19 | #12 |
Участник
|
Все правильно, варианты решения здесь есть, просто хотел уточнить про send as в Exchange, ведет себя не очевидно при подмене адреса отправителя, но в конечном итоге заработало.
|
|
10.05.2018, 13:40 | #13 |
Участник
|
Цитата:
Нужно подумать, пообсуждать с коллегами. |
|
10.05.2018, 13:20 | #14 |
Участник
|
как минимум требования связанные с папками будет трудно соблюсти
Последний раз редактировалось potential; 10.05.2018 в 14:25. |
|
10.05.2018, 13:38 | #15 |
Участник
|
Со входящими, скорее всего, можно будет подумать в сторону этого. Непонятно что с отправленными из этих почтовых ящиков. Да и не очень понятно как определить от какого клиента изначально было письмо.
|
|
10.05.2018, 13:57 | #16 |
Участник
|
и для этого пришлось свой helpdesk с тикетами разрабатывать на базе Enterprise portal, с автоответами с номером входящего для последующей переписки. Вот это очень не просто было внедрить. EP потому что сразу из письма по гиперссылке к заявке можно переходить и всю историю переписки видеть с прилагаемыми файлами и согласованиями. При том что уже был успешный опыт 4летнего использования стороннего HelpDesk (тоже было много вопросов пока внедрял), где себя этот HD зарекомендовал очень хорошо, переучивать отдел поддержки не пришлось
Последний раз редактировалось TDV; 10.05.2018 в 14:13. Причина: ошибки в тексте |
|
10.05.2018, 19:22 | #17 |
Banned
|
Но если .NET то возможно так
Simple IMAP CLIENT System.Net.Sockets.TcpClient System.Net.Security.SslStream https://code.msdn.microsoft.com/wind...LIENT-b249d2e6 |
|
11.05.2018, 09:31 | #18 |
Участник
|
Есть библиотека openPop.net использовал ее для получения почты, дело было в 2012 версии, но как вариант рассмотреть можно.
https://www.codeproject.com/Articles...th-OpenPop-NET |
|
|
За это сообщение автора поблагодарили: Raven Melancholic (5). |
12.05.2018, 16:14 | #19 |
Участник
|
Так.
Судя по всему, я нарушил основное армейское правило по поводу спешки в выполнении приказов и колхозное правило трех гвоздей. Задача очень резко поменялась - нужно обрабатывать только письма с корпоративного почтового ящика. По поводу внешних почтовых ящиков это были неуемные фантазии маретологов и CRMщиков, там такой бардак, что пользы от этих данных как от козла молока. Отрезвили многих еще и заявления админов, что на Ecxhange протокол IMAP не поднят и ни при каких условиях поднят не будет. А мысли про замену Exchange чем-то другим в практически обозримом будущем это опять же только фантазии. В общем, наш выбор это EMS. Всем спасибо ,благодаря ветке узнал много новых и полезных слов - время потрачено не зря. |
|
23.06.2018, 14:34 | #20 |
Участник
|
TVD, как прошедший мой путь, просьба прокомментировать.
Использую EWS. Немного доработал библиотеку MS в части тех вещей, которые не поддерживаются в DAX (вложенные классы, статические свойства readonly, определенные не через get/set, а присваиванием и т.п.). Могу подключаться как хочу - к своему ящику, олицетворением, делегированием и т.п. От разных пользователей тоже все работает (задание пользователя/пароля, по доменной учетке). Могу подключиться к любому ящику, для которого есть доступ, получить все что там есть (вообще, мне нужно только письма, но пробовал подключаться и к календарям, задачам - все доступно). Только вот проблема - мне нужно понимать адресата и адресанта письма. Пока письмо отправлено внутри экземпляра Excange, все хорошо. Но как только письмо получено от внешнего отправителя, то свойства From, ToRecipients и другие объекта EmailMessage пустые. Сталкивались ли Вы с тем, что письма, циркулирующие внутри экземпляра Exchange и поступившие из вне имеют разные свойства? Если сталкивались, то как можно получить адреса в случае, если письмо получено из внешнего ящика? Последний раз редактировалось Raven Melancholic; 23.06.2018 в 14:39. |
|