Вход | Регистрация


1С:Предприятие :: 1С:Предприятие 7.7 и ранее

v7: Как получить почту компонентой DialMail с mail.ru ?

v7: Как получить почту компонентой DialMail с mail.ru ?
Я
   iJuni
 
01.02.18 - 10:33
//***

//ПолучениеПочты = СоздатьОбъект("AddIn.POP3");
//***




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


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

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

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

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

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


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

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

https://yadi.sk/d/KyuQiKdP3RynB4


скиньте пож свою dll спасибо.
 
 Рекламное место пустует
   iJuni
 
11 - 01.02.18 - 13:31
(9) исключение не выбрасывается.
   iJuni
 
12 - 01.02.18 - 13:36
не могу найти в сети где скачать DialMail
скиньте последнюю версию.
   vova1122
 
13 - 01.02.18 - 13:39
дело не в ДЛЛ. Я же написал у меня версия ниже и работает. Правда с Gmail.com
   vova1122
 
14 - 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;
//Сообщить("пауза= "+сек);

РезРозпановки=РаспаковатьВсеПисьма();
КонецПроцедуры
   vova1122
 
15 - 01.02.18 - 13:47
и это дописать в конце модуля
Процедура ОбработкаВнешнегоСобытия(Источник,Событие,Данные)
    //Сообщить(""+Источник+" "+Событие+" "+Данные);

    Если Источник="POP3" тогда 
        Если ВРЕГ(СокрЛП(Событие))="RECEIVE" тогда
            Если ВРЕГ(СокрЛП(Данные))="BEGIN" тогда
                
            ИначеЕсли ВРЕГ(СокрЛП(Данные))="DONE" тогда
                СообщениеПолучение="Все получили";
        //        Форма.Обновить(0);

                Возврат;
            КонецЕсли;
            
//            х=ПолучениеПочты.ПолученоВБайтах/ОбщаяДлинаПолучение*СтрДлина(Индик);

        //    ИндикПолучение=Лев(Индик,СтрДлина(Индик)-х);

    //        Форма.Обновить(0);

        ИначеЕсли ВРЕГ(СокрЛП(Событие))="RECEIVED" тогда
    //        х=ПолучениеПочты.ПолученоВБайтах/ОбщаяДлинаПолучение*СтрДлина(Индик);

    //        ИндикПолучение=Лев(Индик,СтрДлина(Индик)-х);

    //        Форма.Обновить(0);

    //        Получили=Получили+1;

        ИначеЕсли ВРЕГ(СокрЛП(Событие))="ERROR" тогда
            Сообщить(Данные+"  "+СокрЛП(ПолучениеПочты.ПоследняяОшибка)+" ("+ПолучениеПочты.ПоследняяОшибкаСтр+")");
            Сообщить("Последний ответ сервера: " + ПолучениеПочты.ПоследнийОтветСервера);
            ОшибкаПолучения=1;
            Возврат;
        КонецЕсли;
    КонецЕсли;
КонецПроцедуры
   iJuni
 
16 - 01.02.18 - 14:09
Создал на Gmail
в настройках включил POP

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

Нам на Win2003 пришлось OpenSSL в System32 ставить, а иначе SSL не работает.
   Max_Prog
 
22 - 02.02.18 - 16:55
(0) stunel и 1С. По гугли 100% поможет.
   Max_Prog
 
23 - 02.02.18 - 16:58
(21) Вот это - (22) Пофиг на Ось и конфу менять не надо.
   МимохожийОднако
 
24 - 02.02.18 - 17:05
(20) А потом будешь фотку требовать? ))
   Max_Prog
 
25 - 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;
   Max_Prog
 
26 - 02.02.18 - 19:16
   Max_Prog
 
27 - 02.02.18 - 19:21
   iJuni
 
28 - 04.02.18 - 12:01
с отправкой почты проблем нету, есть только с получением.
   FN
 
29 - 04.02.18 - 13:17
Dialmail нормально работает с ssl почтой. Но для этого надо установить openssl. Об этом написано в справке к компоненте.
   big
 
30 - 05.02.18 - 10:36
(23) Зачем ставить сторонний софт, когда всё работает "из коробки"?? И конфа здесь никоим образом не меняется.
   vova1122
 
31 - 05.02.18 - 10:53
(0) Откопал свою старую тему по этому вопросу. Действительно нужно ставить openssl
v7: Не могу получить почту (через DialMail.dll)
   Max_Prog
 
32 - 08.02.18 - 15:06
(29) Так подскажите
Я написал как бы я решил проблему.
(31) Найти три dll-ки нужно кинуть в SysWOW64, System32. Быстрее?
   vova1122
 
33 - 08.02.18 - 16:11
(32) Быстрее или нет нескажу. Стунелем не пользовался. Почта принимается и отправляется. больше ничего ненадо
 
 
   iJuni
 
34 - 08.02.18 - 21:38
Закинул OpenSSL и в system32 и в SysWOW64 и на Win 10 64 и mail.ru завелось!

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

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


Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует