Имя: Пароль:
1C
1C 7.7
v7: Как получить почту компонентой DialMail с mail.ru ?
0 iJuni
 
01.02.18
10:33
//***
//ПолучениеПочты = СоздатьОбъект("AddIn.POP3");
//***



    Если ПолучениеПочты.Подключиться(СокрЛП(Pop3Сервер),
                        СокрЛП(Pop3Порт),
                        СокрЛП(Pop3Пользователь),
                        СокрЛП(Pop3Пароль),1,1)=0 тогда
        Предупреждение("Не смогли подключиться к POP3-серверу");
        Возврат 0;
    КонецЕсли;


всегда выдает ошибку "Не смогли подключиться к POP3-серверу".

Подскажите пож как она работает ?
1 Builder
 
01.02.18
10:43
(0)
1. Не тот сервер, порт, пароль....
2. Не включено шифрование SSL
проверь адреса
https://help.mail.ru/mail-help/mailer/popsmtp
2 iJuni
 
01.02.18
11:08
вроде все сделано правильно
http://www.imageup.ru/img77/2979334/dialmail.jpg.html
3 botman4
 
01.02.18
11:57
с этим не получается, а есть другой вариант получения почты со вложениями ?

киньте пример пожалуйста.
4 iJuni
 
01.02.18
12:10
Есть кто пользуется этой компонентой сейчас? может у меня версия старая ?
v 2,7,6,16
5 Смотрящий
 
01.02.18
12:17
(2) Найди в коде обработки метод коннекта к серверу (не помню какой там)

попытка
.КоннектКСерверу();
Исключение
Сообщить(ОписаниеОшибки());
КонецПопытки;

вывод предупреждения закомменть


надо получить строку ответа сервера почтового и смотреть на что он жалуется
6 iJuni
 
01.02.18
12:20
нету такого. Подключение идет в моем первом сообщение.
7 vova1122
 
01.02.18
12:30
я использую DialMail component 2.7.6 pb 15 (с) SWA corp. (2002-2007)
8 vova1122
 
01.02.18
12:31
Правда почта на Gmail.Com. Если нужно кину рабочий вариант кода
9 Смотрящий
 
01.02.18
12:35
Попытка
ПолучениеПочты.Подключиться(СокрЛП(Pop3Сервер),
                        СокрЛП(Pop3Порт),
                        СокрЛП(Pop3Пользователь),
                        СокрЛП(Pop3Пароль),1,1);
Исключение
Сообщить(ОписаниеОшибки());
Возврат 0;
КонецПопытки;

Так попробуй
10 iJuni
 
01.02.18
13:30
Вот моя dll и пример . может кто попробуем, работает ли у него.

https://yadi.sk/d/KyuQiKdP3RynB4


скиньте пож свою dll спасибо.
11 iJuni
 
01.02.18
13:31
(9) исключение не выбрасывается.
12 iJuni
 
01.02.18
13:36
не могу найти в сети где скачать DialMail
скиньте последнюю версию.
13 vova1122
 
01.02.18
13:39
дело не в ДЛЛ. Я же написал у меня версия ниже и работает. Правда с Gmail.com
14 vova1122
 
01.02.18
13:43
Процедура Выполнить()
    Если ЗагрузитьВнешнююКомпоненту("DialMail.dll")=0 Тогда
        Сообщить("Не удалось обнаружить компоненту DialMail.dll!");  
        Возврат;
    КонецЕсли;
    Попытка
        ПолучениеПочты = СоздатьОбъект("AddIn.POP3");
        SystComm = СоздатьОбъект("AddIn.SystComm");
        ПолучениеПочты.ВестиЛогФайл = 1;
        Сообщить(SystComm.Версия);
    Исключение
        Сообщить("Не удалось создать объекты из компоненты DialMail.dll!");
        Возврат;
    КонецПопытки;

    ПолучениеПочты.РабочийКаталог=РабочийКаталог;
    ПолучениеПочты.ИспользоватьПрокси=0;
    ПолучениеПочты.ИспользоватьSSL=ИспользоватьSSL;  
    Если ПолучениеПочты.Подключиться(Pop3Сервер,
                        Pop3Порт,
                        Pop3Пользователь,
                        Pop3Пароль)=0 тогда    
        Предупреждение("Не смогли подключиться к POP3-серверу");
        РезПодключения=0;
        Возврат;
    КонецЕсли;  
    УдачнПодкл=1;
    ВсегоПисемНаСервере=ПолучениеПочты.КоличествоПисем;
    ОбщаяДлинаПолучение=Число(ПолучениеПочты.ОбщийРазмерПисем);  
    Если ВсегоПисемНаСервере>0 тогда
         Сообщить("ВсегоПисем="+ВсегоПисемНаСервере);
         Сообщить("ОбщаяДлина="+ОбщаяДлинаПолучение);
         РезПодключения=1;
    иначе
        СообщениеПолучение="Нет Писем";
        Предупреждение(СообщениеПолучение);  
        РезПодключения=-1;
        Возврат;
    КонецЕсли;  
      СтрокаНомеровПисем="";
//    Если  РезПодключения=1 тогда
//     СтрокаНомеровПисем=Отфильтровать();  
//     Сообщить("Номера писем = "+СтрокаНомеровПисем);
//    КонецЕсли;    
    
    Если ПолучениеПочты.ПолучитьВсеПисьма(1,0,1,СтрокаНомеровПисем)=-100 тогда
    //    Возврат 1;
    КонецЕсли;      
    
//а1=_GetPerformanceCounter();
ГлПауза(ВсегоПисемНаСервере/2+2);  //в секундах сек    
//а2=_GetPerformanceCounter();
//а=а2-а1;
//сек=а/1000;
//Сообщить("пауза= "+сек);
РезРозпановки=РаспаковатьВсеПисьма();
КонецПроцедуры
15 vova1122
 
01.02.18
13:47
и это дописать в конце модуля
Процедура ОбработкаВнешнегоСобытия(Источник,Событие,Данные)
    //Сообщить(""+Источник+" "+Событие+" "+Данные);
    Если Источник="POP3" тогда
        Если ВРЕГ(СокрЛП(Событие))="RECEIVE" тогда
            Если ВРЕГ(СокрЛП(Данные))="BEGIN" тогда
                
            ИначеЕсли ВРЕГ(СокрЛП(Данные))="DONE" тогда
                СообщениеПолучение="Все получили";
        //        Форма.Обновить(0);
                Возврат;
            КонецЕсли;
            
//            х=ПолучениеПочты.ПолученоВБайтах/ОбщаяДлинаПолучение*СтрДлина(Индик);
        //    ИндикПолучение=Лев(Индик,СтрДлина(Индик)-х);
    //        Форма.Обновить(0);
        ИначеЕсли ВРЕГ(СокрЛП(Событие))="RECEIVED" тогда
    //        х=ПолучениеПочты.ПолученоВБайтах/ОбщаяДлинаПолучение*СтрДлина(Индик);
    //        ИндикПолучение=Лев(Индик,СтрДлина(Индик)-х);
    //        Форма.Обновить(0);
    //        Получили=Получили+1;
        ИначеЕсли ВРЕГ(СокрЛП(Событие))="ERROR" тогда
            Сообщить(Данные+"  "+СокрЛП(ПолучениеПочты.ПоследняяОшибка)+" ("+ПолучениеПочты.ПоследняяОшибкаСтр+")");
            Сообщить("Последний ответ сервера: " + ПолучениеПочты.ПоследнийОтветСервера);
            ОшибкаПолучения=1;
            Возврат;
        КонецЕсли;
    КонецЕсли;
КонецПроцедуры
16 iJuni
 
01.02.18
14:09
Создал на Gmail
в настройках включил POP

все равно не подключается 8(((
скинь свою dll плз )
17 vova1122
 
01.02.18
14:59
это прописал?
18 vova1122
 
01.02.18
14:59
ИспользоватьSSL=1;
Pop3Сервер="pop.gmail.com";
Pop3Порт=995;
19 vova1122
 
01.02.18
15:06
20 vova1122
 
01.02.18
15:09
Да, кстати определись со своим полом. В профиле пол женский, тут пишешь как от мужского пола
21 big
 
02.02.18
14:03
На какой системе запускаете?

Нам на Win2003 пришлось OpenSSL в System32 ставить, а иначе SSL не работает.
22 Max_Prog
 
02.02.18
16:55
(0) stunel и 1С. По гугли 100% поможет.
23 Max_Prog
 
02.02.18
16:58
(21) Вот это - (22) Пофиг на Ось и конфу менять не надо.
24 Мимохожий Однако
 
02.02.18
17:05
(20) А потом будешь фотку требовать? ))
25 Max_Prog
 
02.02.18
17:10
(22) В stunnel.conf Прописать:

client = yes
output = stunnel-log.txt
debug = 0
[SMTP Gmail ]
accept = 127.0.0.1:25
connect = smtp.mail.ru:465

[POP3 Gmail ]
accept = 127.0.0.1:110
connect = pop.mail.ru:995

В конфигурации:
POP3Порт=110;
SMTPПорт = 25;
26 Max_Prog
 
02.02.18
19:16
27 Max_Prog
 
02.02.18
19:21
28 iJuni
 
04.02.18
12:01
с отправкой почты проблем нету, есть только с получением.
29 FN
 
04.02.18
13:17
Dialmail нормально работает с ssl почтой. Но для этого надо установить openssl. Об этом написано в справке к компоненте.
30 big
 
05.02.18
10:36
(23) Зачем ставить сторонний софт, когда всё работает "из коробки"?? И конфа здесь никоим образом не меняется.
31 vova1122
 
05.02.18
10:53
(0) Откопал свою старую тему по этому вопросу. Действительно нужно ставить openssl
v7: Не могу получить почту (через DialMail.dll)
32 Max_Prog
 
08.02.18
15:06
(29) Так подскажите
Я написал как бы я решил проблему.
(31) Найти три dll-ки нужно кинуть в SysWOW64, System32. Быстрее?
33 vova1122
 
08.02.18
16:11
(32) Быстрее или нет нескажу. Стунелем не пользовался. Почта принимается и отправляется. больше ничего ненадо
34 iJuni
 
08.02.18
21:38
Закинул OpenSSL и в system32 и в SysWOW64 и на Win 10 64 и mail.ru завелось!

Но! Сперва ругалось на авторизацию(в логе компоненты) погуглив - удалил номер телефона из почтового ящика и все заработало.

Всем спасибо.
35 iJuni
 
08.02.18
21:43
Теперь новый вопрос, а как получить "Непрочитанные письма?" и пометить как "Прочитанные"?
36 vova1122
 
09.02.18
10:57
(35) так они же автоматически должны помечается как прочитанные при получении почты. Или у тебя одно и то же письмо принимается при каждом получении почты? Тогда нужно смотреть настройки на самом почтовом сервере.
37 iJuni
 
15.02.18
14:08
Письма отмечаются, как прочитанные, но каждый раз получаются! ящик на mail.ru
вот думаю что делать или хранить у себя в базе полученные письма или как ....???
38 vova1122
 
15.02.18
15:00
(37) такого не должно быть. Проверить как будет работать с Gmail.
39 iJuni
 
16.02.18
11:26
В принципе меня это полностью устроило.
Делаю загрузку прайсов с почты.
Прайсы загружаются в sqlite базу
Там же создал таблицу в этой базе с письмами которые получил, есть обработка которой можно их оттуда удали, после чего они опять закачиваются.
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn