|
v7: ROM-Mail. Отправка почты из 1с | ☑ | ||
---|---|---|---|---|
0
Mafiozaa
09.11.20
✎
08:18
|
Всем привет, встал в ступор пишет ошибка не удалось отправить сообщение, понять не могу почему, знатоки подскажите)
Почта.АдресОтправителя = "[email protected]"; Почта.ИмяОтправителя = "Вася"; //указываем получателей письма Почта.ДобавитьАдрес("АдресПолучателя","Васяня","[email protected]"); //если необходимо добавляем вложения Почта.Вложения = "C:\Users\Dmitriy\Desktop\123.txt"; Почта.Тема = "raz raz"; Почта.Тело = "dva dva"; //Пытаемся отправить Если Почта.Соединение=0 Тогда Сообщить("Соединение потеряно","!"); ИначеЕсли Почта.Отправить()=1 Тогда Сообщить("Почтовое сообщение отправлено","i"); Иначе Сообщить("Не удалось отправить сообщение","!"); Конецесли; //Отключаемся Почта.Отключиться(); КонецПроцедуры Процедура ПолучитьПочту() //Пытаемся подключить компоненту Если ЗагрузитьВнешнююКомпоненту("ROM-Mail.dll")=0 Тогда Сообщить("Не удалось загрузить внешнюю компоненту ROM-Mail.dll"); Возврат; Конецесли; //Подключаемся к почте с указанными параметрами Почта = СоздатьОбъект("AddIn.AddInMail"); Почта.СерверПриема = "smtp.mail.ru"; Почта.ПортПриема = "110"; Почта.Логин = "[email protected]"; //при необходимости Почта.Пароль = "26031997Zxc";//при необходимости Почта.ОставлятьНаСервере = 0; //необходимо ли оставлять письма в ящике //Если подключение не удачное прерываем обработку Если Почта.Соединение = 0 Тогда Если Почта.Подключиться("Прием")=0 Тогда Сообщить("Не удалось подключиться к почтовому серверу","!"); Возврат; Конецесли; Конецесли; ПринятыйФайл = ""; Для й = 1 По Почта.КоличествоСообщений() Цикл //Читаем заголовки писем Если Почта.ПолучитьЗаголовок(й) = 1 Тогда //Читаем тексты писем Если Почта.ПолучитьТело(й)=1 Тогда //Выбираем вложения писем Для ф = 1 По Почта.КоличествоФайлов() Цикл //сохраняем вложение Почта.СохранитьФайл(ф,""); Конеццикла; Конецесли; Конецесли; Конеццикла; //Отключаемся Почта.Отключиться(); КонецПроцедуры |
|||
1
Mafiozaa
09.11.20
✎
08:20
|
Все подключения он проходит, но сообщение не отправляет
|
|||
2
big
09.11.20
✎
08:55
|
rom-mail не умеет работать с ssl и tsl. Неужели он у вас работал с mail.ru, gmail и т.п.?
Надо ставить DialMail, там всё работает. |
|||
3
big
09.11.20
✎
08:56
|
(2) Для mail.ru порт для smtp будет 25 и надо включить tsl.
|
|||
4
ДенисЧ
09.11.20
✎
09:00
|
(3) если tsl, то порт далеко не 25
|
|||
5
big
09.11.20
✎
09:01
|
(4) ХЗ. Работает ))
|
|||
6
Mafiozaa
09.11.20
✎
09:04
|
(2) Понял,буду искать дллку
|
|||
7
Mikeware
09.11.20
✎
09:10
|
(2) когда-то работал, года до 12-го...
|
|||
8
Mafiozaa
09.11.20
✎
09:24
|
(7) (5) (4) А через V7Plus.dll он будет запускать клиент почтовый? типо outlook?
|
|||
9
Mikeware
09.11.20
✎
09:26
|
(8) не пробовал. вряд ли. возьми диалмэйл, быстрее будет. ну, или через CDO пробуй
|
|||
10
Mafiozaa
09.11.20
✎
09:29
|
(9) Диалмэйл этот без клиента работает?
|
|||
11
Mikeware
09.11.20
✎
09:31
|
(10) да
|
|||
12
Mafiozaa
09.11.20
✎
09:33
|
(11) dll-ка не регистрируется
|
|||
13
Mikeware
09.11.20
✎
09:35
|
(12) печаль
|
|||
14
Mafiozaa
09.11.20
✎
09:49
|
(13)
Процедура ПриОткрытии() Если ЗагрузитьВнешнююКомпоненту("C:\Users\Dmitriy\Desktop\1Cv77\BIN\DialMail.DLL") = 0 Тогда Сообщить("Неудачная попытка загрузить DialMail.dll"); Иначе Сообщить("Удачная попытка загрузить DialMail.dll"); КонецЕсли; КонецПроцедуры Процедура ОтправитьПочту() ОтправкаПочты = СоздатьОбъект("AddIn.SMTP"); ОтправкаПочты.РабочийКаталог=СокрЛП(КаталогИБ()); ОтправкаПочты.УстановитьКодировкуИСпособКодирования(14, 1); ОтправкаПочты.MakeContentDescriptionTag = 0; ОтправкаПочты.ПочтоваяПрограмма = "Имя почтовой программы"; //В моем случае ошибки пишутся в отдельный каталог в текстовые файлы, имена которых соответствуют дате. //имя файла - вложения должно быть в кавычках. ВыбФайл = "C:\Users\Dmitriy\Desktop\123.txt"; // От кого, Кому, Копии - это адреса почты. ОтправкаПочты.СоздатьПисьмо("[email protected]","[email protected]","","Allo","","Raz dva vsem svoim kto na svyazi",ВыбФайл); Если ОтправкаПочты.Подключиться("smtp.mail.ru","25")=0 тогда Сообщить("Не смогли подключиться к SMTP-серверу"); Иначе Сообщить("Успешное подключение к SMTP-серверу"); КонецЕсли; Если ОтправкаПочты.ОтправитьВсеПисьма(0,1,0) = -100 Тогда Сообщить("Успешно отправлено"); КонецЕсли; КонецПроцедуры Без ошибок, но и письма не видать, наверное потому что логин с паролем опустил |
|||
15
Djelf
09.11.20
✎
09:50
|
(14) Порт то не 25й... https://help.mail.ru/mail/mailer/popsmtp
|
|||
16
Mafiozaa
09.11.20
✎
09:53
|
(15) C 465 портом ошибка подключения к смтп
|
|||
17
Mafiozaa
09.11.20
✎
09:55
|
(15) При 25 порту, подключение успешное, но письмо не уходит
|
|||
18
trad
09.11.20
✎
09:56
|
(0) пароль то напрасно засветил. Теперь меняй
|
|||
19
Djelf
09.11.20
✎
09:57
|
(16) Потому что библиотек openssl нет! В мануале по dialmail вроде все написано по этому поводу.
|
|||
20
Mafiozaa
09.11.20
✎
09:57
|
(18) Спецом зареганная почта, я уже подумал об этом, там пусто)
|
|||
21
NorthWind
09.11.20
✎
10:00
|
(4) Может работать. Есть такая опция - TLS по стандартному порту (STARTTLS).
|
|||
22
Mafiozaa
09.11.20
✎
10:20
|
(15) Их если я правильно понял, и регистрировать не надо, просто в корень кинуть
|
|||
23
Djelf
09.11.20
✎
10:26
|
(22) В тот же каталог где dialmail их нужно кинуть. У меня вот такая сборка работает: https://cloud.mail.ru/public/HKiw/xKZUkk5QE
Не сильно разбирался, какие-то библиотеки openssl не завелись... |
|||
24
Djelf
09.11.20
✎
10:27
|
+(23) Еще нужно в код добавить Отправка.ИспользоватьSSL=1; Отправка.ИспользоватьTSL=1;
|
|||
25
Mafiozaa
09.11.20
✎
10:31
|
(23) Все равно закинул все dll ки в корень, обработал подключения со всеми ошибками, все равно эти 2 библиотеки не хотят подключатся
|
|||
26
Mafiozaa
10.11.20
✎
04:32
|
Сделал отправку через CDO. Вопрос, почему на ту почту куда ушло письмо, в майле вижу его, а в The Bat его нет, по моему мнению беда в протоколах, кто что знает
|
|||
27
ДенисЧ
10.11.20
✎
04:53
|
(26) А где в бате ты его хочешь увидеть?
|
|||
28
Mafiozaa
10.11.20
✎
04:55
|
(27) Во входящих))
|
|||
29
Mafiozaa
10.11.20
✎
04:56
|
(27) Все письма будут вложениями, и хочу в бате принимать и выгружать в определенный путь
|
|||
30
Злопчинский
12.11.20
✎
20:33
|
возьми мою отправлялку электорное ECDO с инфостарта. работает в туевой хуче контор.
для работы может понадобиться stunnel поставить. у меян админ сделал хз сколько лет назад когда мылору перестал давать на 25 порту - работает до сих пор... - на странице разработки можно почитать комменты, там все вопросы обжеваны. http://catalog.mista.ru/public/14131/ |
|||
31
Злопчинский
12.11.20
✎
20:34
|
(26) кстати, можешь кинуть параметры, которые у тебя прописаны в cdo для отправкипо ssl/tsl?
|
|||
32
Mafiozaa
13.11.20
✎
03:27
|
(31) Держи всю процедуру, может как то иначе можно было, но сам результат меня устраивает)
Процедура ОтправкаПочты() Попытка loConfig = CreateObject("CDO.Configuration"); loCdoMessage = CreateObject("CDO.Message"); loCdoMessage.Configuration = loConfig; loCdoMessage.From = "Тест 1C"""" <цук>"; loCdoMessage.To = "цук"; loCdoMessage.Subject = "Тема письма"; ТекстСообщения = "Текст письма"; HTMLBody = "<html> |<head> |<meta content=""text/html; charset=Windows-1251"" http-equiv=""content-type""> |<title> Тестовое сообщение </title> |</head> |<body> |<h3>" + "Приветствую, сделайте возврат кода маркировки по высланным позициям! см.файлик" + "</h3> |<p></p> |</body> |</html>"; loCdoMessage.BodyPart.Charset = "windows-1251"; loCdoMessage.HTMLBody = HTMLBody; loCdoMessage.AddAttachment("C:\Users\Dmitriy\Desktop\123.txt"); loConfig.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusing"). Value = 2; loConfig.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver"). Value = "smtp.gmail.com"; loConfig.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport"). Value = "465"; loConfig.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate"). Value = 1; loConfig.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusername"). Value = "цук"; loConfig.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendpassword"). Value = "цук"; loConfig.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl"). Value = 1; loConfig.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout").Value = 60; loConfig.Fields.Update(); loCdoMessage.Send(); Предупреждение("Письмо успешно отправленно!"); Исключение Предупреждение("Письмо не отправленно!"); КонецПопытки; КонецПроцедуры |
|||
33
big
13.11.20
✎
04:56
|
(30) (32) А потом понадобится получить письмо и опять танцы с бубнами )))
|
|||
34
Mafiozaa
13.11.20
✎
05:34
|
(33) Получаю я батом через imap, все корректно
|
|||
35
big
13.11.20
✎
10:04
|
(34) Имелось ввиду получение в 1С
|
|||
36
Mafiozaa
13.11.20
✎
11:01
|
(35) Я понял, в 1с нет нужды принимать письма
|
|||
37
Злопчинский
13.11.20
✎
11:48
|
(36) у мну тоже так. отсылалка сделана не с целью ведения переписки с клиентом (принимать письма в 1С). а для быстрой прозрачной отправки всякизх счетов, отчетов, и прочей хрени... работает уже хз скока ле. и у пары моих клиентов аналогично - счета отправляют, заказы поставщиками ИТД
|
|||
38
Злопчинский
13.11.20
✎
11:50
|
(32) на через майл.ру - отправляются у тебя при таких настройках?
|
|||
39
Mikeware
13.11.20
✎
12:18
|
(37) а еще - об извешениях роботом о разных событиях, порой неприятных... посмотреть с утра в папку почты проще, чем смотреть события. Хотя свой дашборд лучше почты.
|
|||
40
Mafiozaa
16.11.20
✎
01:54
|
(38) Да,на майл отправляю, все нравится
|
|||
41
Злопчинский
16.11.20
✎
02:13
|
(40) хм, надо проверить...
|
|||
42
Mafiozaa
16.11.20
✎
02:19
|
(41) есть майловская почта, скинь, отправлю тебе
|
|||
43
Mafiozaa
16.11.20
✎
02:19
|
(41) Отправлю на ту, что в профиле
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |