|
Электронная почта и 1С - Миф или реальность?! | ☑ | ||
---|---|---|---|---|
0
efoi
17.09.13
✎
14:00
|
Доброго времени суток, есть необходимость отправлять эл. письма через 1с. Стал разбираться с этим вопросом, настраивал учетные записи и так, и эдак, в разных конфигурациях, с разными почтовыми серверами(общедоступными типа майл или гугл). Однако результата это не дало, тогда решил сам написать обработку, при указании параметров подключения - та же борода. Так вот возникает вопрос, а работает ли 1с с почтой? Кто работал с этим и у кого получалось, поделитесь опытом или кодом.
З.Ы. Знаю, что есть множество публикаций на эту тему, ничего полезного в них не нашел, хотя и перепробовал все советы. |
|||
1
eklmn
гуру
17.09.13
✎
14:01
|
неудачник
|
|||
2
Чайник Рассела
17.09.13
✎
14:01
|
SSL работает только в 8.3, все остальное работает без проблем.
|
|||
3
IШаман
17.09.13
✎
14:01
|
(0) Работает. пример кода в синтакс помошнике есть.
|
|||
4
cw014
17.09.13
✎
14:01
|
Работал и получалось. Главное что бы руки росли из правильного места
|
|||
5
Чайник Рассела
17.09.13
✎
14:01
|
(1) поддерживаю.
|
|||
6
Фокусник
17.09.13
✎
14:02
|
(0) возможно firewall не пропускает
|
|||
7
ДенисЧ
17.09.13
✎
14:03
|
У нас куча конфигураций ежедневно шлёт отчёты о своей работе...
Проблем не вижу. Единственное - у нас свой почтовик. |
|||
8
shuhard
17.09.13
✎
14:04
|
(0)[Знаю, что есть множество публикаций на эту тему, ничего полезного в них не нашел, хотя и перепробовал все советы.]
почта в 1С не работает, ни у кого, ибо платформа сырая, так начальству и доложи |
|||
9
IШаман
17.09.13
✎
14:06
|
Кстати если речь идет про почтовый клиент в 1с, то он насколько помню не очень был.
|
|||
10
efoi
17.09.13
✎
14:07
|
(7) ну на собственный почтовый сервер я знаю что работает, а на общедоступные?
|
|||
11
Масянька
17.09.13
✎
14:08
|
А у меня в 7.7 прекрасно работает отправка счета на мыло (сама писала).
|
|||
12
efoi
17.09.13
✎
14:08
|
(4) может есть код, чтоб сравнить со своим и понять, что не так?
|
|||
13
rikodroo
17.09.13
✎
14:09
|
Шли через свой почтарь. Т.е. ваш почтовик будет smtp релеем. Примеров написания подобныго функционала море, причем как с использованием всяких учетных записей 1с, так и без них.
|
|||
14
killitch
17.09.13
✎
14:09
|
+(2) на 82 SSL не работает или тунелирвание или почту на сервере без шифрования. И да, типовые настроены работают, свои написаны и работают. СП достаточно + подглядеть типовые.
|
|||
15
rikodroo
17.09.13
✎
14:10
|
(12) дай свой код?
|
|||
16
efoi
17.09.13
✎
14:10
|
(2) т.е. в 8.2 можно и не париться с почтовиками которые используют SSL?
|
|||
17
Лодырь
17.09.13
✎
14:12
|
Угу, примеров море. Их мелочей рекомендую проверять доступность серверов почтовый перед отсылкой и реализовать возможность отложенной отсылки сообщения если чтото идет не так. А то есть пример, когда отсылка уведомления в момент проведения счетов парализовала работу продаванов из-за неработающего почтового сервака.
|
|||
18
rikodroo
17.09.13
✎
14:12
|
(0) качни с инета книжку Михайлова "1с предприятие 7.7/8.0 системное программирование" - там найдеш все что нужно.
|
|||
19
rikodroo
17.09.13
✎
14:13
|
Еще как вариант можно dll всякие юзать из 1с.
|
|||
20
efoi
17.09.13
✎
14:16
|
(12) Код
Процедура КнопкаВыполнитьНажатие(Кнопка) Почта = Новый ИнтернетПочта; Попытка Почта.Подключиться(ПолучитьПрофиль()); Исключение Сообщить(ОписаниеОшибки()); Возврат; КонецПопытки; Сообщение = Новый ИнтернетПочтовоеСообщение; Сообщение.Вложения.Добавить(Новый ДвоичныеДанные("C:\vcredist.bmp"),"vcredist.bmp"); Сообщение.Отправитель = "[email protected]"; Сообщение.ИмяОтправителя = "Вася"; ПочтовыеАдреса = Сообщение.Получатели; ПочтовыйАдрес = ПочтовыеАдреса.Добавить(); ПочтовыйАдрес.Адрес = "[email protected]"; Сообщение.Тема ="Тема сообщения"; ИнтернетТекстПочтовогоСообщения = Сообщение.Тексты.Добавить(); ИнтернетТекстПочтовогоСообщения.Текст = "Текст сообщения"; ИнтернетТекстПочтовогоСообщения.ТипТекста = ТипТекстаПочтовогоСообщения.ПростойТекст; Попытка // Пытаемся послать письмо Почта.Послать(Сообщение); Исключение Сообщить(ОписаниеОшибки()); Возврат; КонецПопытки; // отключение Почта.Отключиться(); КонецПроцедуры Функция ПолучитьПрофиль() Профиль = Новый ИнтернетПочтовыйПрофиль; Профиль.АутентификацияSMTP = СпособSMTPАутентификации.Login; // SMTP сервер Профиль.АдресСервераSMTP = "smtp.mail.com"; // Порт SMTP сервера Профиль.ПортSMTP = 25; // POP3 сервер Профиль.АдресСервераPOP3 = "pop.mail.ru"; // Порт POP3 сервера Профиль.ПортPOP3 = 110; // Пароль к почтовому ящику Профиль.Пароль = "*****"; // Пароль пользователя для SMTP сервера Профиль.ПарольSMTP = "*****"; // Логин пользователя Профиль.Пользователь = "[email protected]"; // Логин пользователя для SMTP сервера Профиль.ПользовательSMTP = "1234"; // Время ожидания выполнения операции в секундах Профиль.ВремяОжидания = 50; Возврат Профиль; КонецФункции |
|||
21
efoi
17.09.13
✎
14:17
|
При получении SMTP пишет ошибку, но я не прошу поправлять мой код. Прошу рассказать о своем опыте.
|
|||
22
rikodroo
17.09.13
✎
14:18
|
(20) когда ручками телнетом через свой релей шлеш - нормально уходит? Если да, то и 1с пусть шлет через релей. В противном случае - смотри настройки релея.
|
|||
23
rikodroo
17.09.13
✎
14:19
|
на своем релее для 1с ssl и прочее вообще отключи, тебе же только отправлять письма.
|
|||
24
alkov
17.09.13
✎
14:19
|
(21) СпособSMTPАутентификации пробовали ПоУмолчанию ставить?
|
|||
25
efoi
17.09.13
✎
14:21
|
(23) Что такое ререй? :)
(24) Пробовал |
|||
26
efoi
17.09.13
✎
14:23
|
(23) релей*
|
|||
27
rikodroo
17.09.13
✎
14:26
|
(25) ну это сервер, который отсылает почту на ружу. В локалке же у вас есть сервер почтовый, вот шли из 1с почту через него, т.е. в качестве smtp указывай именно его (ну понятно, что если он авторизацию просит, то под майл.ру логином он тебя завернет) - это будет релей. Если он не пересылает - поговори с админом, пусть наладит.
|
|||
28
efoi
17.09.13
✎
14:28
|
(27) нет у меня почтового сервера, потому и пытаюсь к гуглу или майлу подключиться, а на них SSL не отключить
|
|||
29
Sabbath
17.09.13
✎
14:29
|
(0) уже не помню ничего, давно было, но помню, что работало
|
|||
30
rikodroo
17.09.13
✎
14:29
|
Тогда либо поставь его, либо в вроде было и про ssl и про почту и все остальное(18), либо ищи внешние компоненты соответствующие.
|
|||
31
efoi
17.09.13
✎
14:32
|
(30) спс
|
|||
32
mih_io
17.09.13
✎
14:32
|
(28) для SSL и 1с надо настраивать туннелирование. Юзай эту программу stunnel
У меня в её конфиге такие настройки client = yes service=gmail output = stunnel-log.txt debug = 0 [SMTP Gmail ] accept = 127.0.0.1:25 connect = smtp.gmail.com:465 [POP3 Gmail ] accept = 127.0.0.1:110 connect = pop.gmail.com:995 Соответственно в 1с надо писать сервер pop3 и SMTP 127.0.0.1:110 и 127.0.0.1:25 |
|||
33
efoi
17.09.13
✎
14:42
|
Странно на Яндексе все норм работает, переделал настройки так и все ок, отправляется....
Процедура КнопкаВыполнитьНажатие(Кнопка) Почта = Новый ИнтернетПочта; Попытка Почта.Подключиться(ПолучитьПрофиль()); Исключение Сообщить(ОписаниеОшибки()); Возврат; КонецПопытки; Сообщение = Новый ИнтернетПочтовоеСообщение; //Сообщение.Вложения.Добавить(Имя); Сообщение.Отправитель = "[email protected]"; Сообщение.ИмяОтправителя = "Офис на склад"; ПочтовыеАдреса = Сообщение.Получатели; ПочтовыйАдрес = ПочтовыеАдреса.Добавить(); ПочтовыйАдрес.Адрес = "[email protected]"; Сообщение.Тема ="Полученные документы на складе за: " + Строка(ТекущаяДата()); ИнтернетТекстПочтовогоСообщения = Сообщение.Тексты.Добавить(); ИнтернетТекстПочтовогоСообщения.Текст = "Полученные документы на складе за: " + Строка(ТекущаяДата()); ИнтернетТекстПочтовогоСообщения.ТипТекста = ТипТекстаПочтовогоСообщения.ПростойТекст; Попытка // Пытаемся послать письмо Почта.Послать(Сообщение); Сообщить("Файл отправлен"); Исключение Сообщить(ОписаниеОшибки()); Возврат; КонецПопытки; // отключение Почта.Отключиться(); КонецПроцедуры Функция ПолучитьПрофиль() Профиль = Новый ИнтернетПочтовыйПрофиль; // SMTP сервер Профиль.АдресСервераSMTP = "smtp.yandex.ru"; // Порт SMTP сервера Профиль.ПортSMTP = 587; // СпособSMTPАутентификации Профиль.АутентификацияSMTP = СпособSMTPАутентификации.Login; // POP3 сервер Профиль.АдресСервераPOP3 = "pop.yandex.ru"; // Порт POP3 сервера Профиль.ПортPOP3 = 110; // Пароль к почтовому ящику Профиль.Пароль = "******"; // Пароль пользователя для SMTP сервера Профиль.ПарольSMTP = "******"; // Логин пользователя Профиль.Пользователь = "[email protected]"; // Логин пользователя для SMTP сервера Профиль.ПользовательSMTP = "[email protected]"; // Время ожидания выполнения операции в секундах Профиль.ВремяОжидания = 50; Возврат Профиль; КонецФункции |
|||
34
efoi
17.09.13
✎
14:44
|
без внешних компонентов и тунелирования. Видимо они SSL не используют.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |