Ошибка при вызове метода контекста подключиться время ожидания операции чтения истекло

   zyto

18 — 22.09.14 — 16:09

На всякий случай, вдруг кому поможет, вот рабочий код:

    Профиль = Новый ИнтернетПочтовыйПрофиль;

    Профиль.Пользователь = «mylo@yandex.ru»;

    Профиль.ПользовательSMTP = «mylo@yandex.ru»;

    Профиль.Пароль = «12345»;

    Профиль.ПарольSMTP = «12345»;

    Профиль.АдресСервераSMTP = «smtp.yandex.ru»;

    Профиль.ПортSMTP = 465;

    Профиль.АутентификацияSMTP = СпособSMTPАутентификации.ПоУмолчанию;

    Профиль.ИспользоватьSSLSMTP = Истина;

    
    ТекСообщение = Новый ИнтернетПочтовоеСообщение;

    ТекСообщение.Тема = «Тестовое сообщение»;    

    ТекСообщение.Получатели.Добавить(«vasya@yandex.ru»);

    ТекСообщение.Отправитель = «mylo@yandex.ru»;

    ТекСообщение.Тексты.Добавить(«Тестовое сообщение»);

    
    ТекПочта = Новый ИнтернетПочта();

    ТекПочта.Подключиться(Профиль);    

    
    ТекПочта.Послать(ТекСообщение);

    
/все имена и пароли вымышленные/

   Serginio1

19 — 24.09.14 — 18:42

13+ Сейчас проверил рабочий код

врап=новый COMОбъект(«NetObjectToIDispatch45»);

        
            smtp = «smtp.yandex.ru»;

            login = «xxxxxx@yandex.ru»;

            password = «xxxxxx»;

            FromMail = «xxxxxx@yandex.ru»;

                  //Авторизация на SMTP сервере

            Port=25;      

            mail = врап.СоздатьОбъект(«System.Net.Mail.SmtpClient»,smtp, Port);

            mail.EnableSsl = true;

            //Smtp.UseDefaultCredentials = false;

        
       //     mail.SmtpPort=25;

            mail.EnableSsl=true;

            mail.UseDefaultCredentials = false;

            mail.Credentials = врап.СоздатьОбъект(«System.Net.NetworkCredential»,login, Password);

            mail.DeliveryMethod = Врап.ПолучитьТип(«System.Net.Mail.SmtpDeliveryMethod»).Network;

            mail.DeliveryFormat = Врап.ПолучитьТип(«System.Net.Mail.SmtpDeliveryFormat»).SevenBit;

            
            //Формирование письма

             Message = врап.СоздатьОбъект(«System.Net.Mail.MailMessage»);

             MailAddressType= Врап.ПолучитьТип(«System.Net.Mail.MailAddress»);

            Message.From = врап.СоздатьОбъект(MailAddressType,FromMail);

            Message.To.Add(врап.СоздатьОбъект(MailAddressType,FromMail));

            Message.Subject = «Тест отправки почты SSL»;

            Message.IsBodyHtml = true;

            Message.Body = «Тест отправки почты SSL»;

            mail.Send(Message);//отправка

            Message.Dispose();

            mail.Dispose();

  

Serginio1

21 — 25.09.14 — 10:47

Не надо и DeliveryFormat  устанавливать.

По сути только указать  mail.EnableSsl=true;

врап=новый COMОбъект(«NetObjectToIDispatch45»);

        
            smtp = «smtp.yandex.ru»;

            login = «XXXXXX@yandex.ru»;

            password = «XXXXXXX»;

            Кому = «XXXXXX@YYYYYYYY.ru»;

            Port=25;      

            
            mail = врап.СоздатьОбъект(«System.Net.Mail.SmtpClient»,smtp, Port);

            
            mail.EnableSsl = true;

            mail.UseDefaultCredentials = false;

            mail.Credentials = врап.СоздатьОбъект(«System.Net.NetworkCredential»,login, Password);

            mail.DeliveryMethod = Врап.ПолучитьТип(«System.Net.Mail.SmtpDeliveryMethod»).Network;

            
            Message = врап.СоздатьОбъект(«System.Net.Mail.MailMessage»);

            MailAddressType= Врап.ПолучитьТип(«System.Net.Mail.MailAddress»);

            Message.From = врап.СоздатьОбъект(MailAddressType,login);

            Message.To.Add(врап.СоздатьОбъект(MailAddressType,Кому));

            Message.Subject = «Тема Тест отправки почты SSL»;

            Message.IsBodyHtml = true;

            Message.Body = «Тело Тест отправки почты SSL»;

            mail.Send(Message);//отправка

            Message.Dispose();

            mail.Dispose();

http://msdn.microsoft.com/ru-ru/library/system.net.mail.smtpclient.enablessl(v=vs.110).aspx

Свойство EnableSsl задает, используется ли протокол SSL для доступа к указанному почтовому SMTP-серверу.

Значение по умолчанию для этого свойства также можно задать в файле конфигурации компьютера или приложения. Любые изменения, внесенные в свойство EnableSsl, переопределяют параметры файла конфигурации.

Класс SmtpClient поддерживает только расширение службы SMTP для Secure SMTP через протокол TLS, определенный в RFC 3207. В этом режиме сеанс SMTP начинается в незашифрованном канале, затем от клиента к серверу дается команда STARTTLS, чтобы переключиться на безопасное соединение с помощью протокола SSL. См. RFC 3207 опубликованный IETF для получения дополнительных сведений.

Методом альтернативного подключения называется тот, при котором сеанс SSL устанавливается заранее, до отправки команд протокола. Этот способ подключения иногда называют SMTP/SSL, SMTP через SSL или SMTPS. По умолчанию для него используется порт 465. Этот альтернативный способ подключения с помощью протокола SSL в настоящее время не поддерживается.

С помощью свойства ClientCertificates можно указать, какие клиентские сертификаты следует использовать для установки SSL-подключения. Свойство ServerCertificateValidationCallback позволяет отклонить сертификат, предоставленный сервером SMTP. Свойство SecurityProtocol позволяет указать версию протокола SSL, которую следует использовать.

  

zyto

18 — 22.09.14 — 16:09

На всякий случай, вдруг кому поможет, вот рабочий код:

    Профиль = Новый ИнтернетПочтовыйПрофиль;

    Профиль.Пользователь = «mylo@yandex.ru»;

    Профиль.ПользовательSMTP = «mylo@yandex.ru»;

    Профиль.Пароль = «12345»;

    Профиль.ПарольSMTP = «12345»;

    Профиль.АдресСервераSMTP = «smtp.yandex.ru»;

    Профиль.ПортSMTP = 465;

    Профиль.АутентификацияSMTP = СпособSMTPАутентификации.ПоУмолчанию;

    Профиль.ИспользоватьSSLSMTP = Истина;

    

    ТекСообщение = Новый ИнтернетПочтовоеСообщение;

    ТекСообщение.Тема = «Тестовое сообщение»;    

    ТекСообщение.Получатели.Добавить(«vasya@yandex.ru»);

    ТекСообщение.Отправитель = «mylo@yandex.ru»;

    ТекСообщение.Тексты.Добавить(«Тестовое сообщение»);

    

    ТекПочта = Новый ИнтернетПочта();

    ТекПочта.Подключиться(Профиль);    

    
    ТекПочта.Послать(ТекСообщение);

    
/все имена и пароли вымышленные/

  

Serginio1

19 — 24.09.14 — 18:42

13+ Сейчас проверил рабочий код

врап=новый COMОбъект(«NetObjectToIDispatch45»);

        

            smtp = «smtp.yandex.ru»;

            login = «xxxxxx@yandex.ru»;

            password = «xxxxxx»;

            FromMail = «xxxxxx@yandex.ru»;

                  //Авторизация на SMTP сервере

            Port=25;      

            mail = врап.СоздатьОбъект(«System.Net.Mail.SmtpClient»,smtp, Port);

            mail.EnableSsl = true;

            //Smtp.UseDefaultCredentials = false;

        

       //     mail.SmtpPort=25;

            mail.EnableSsl=true;

            mail.UseDefaultCredentials = false;

            mail.Credentials = врап.СоздатьОбъект(«System.Net.NetworkCredential»,login, Password);

            mail.DeliveryMethod = Врап.ПолучитьТип(«System.Net.Mail.SmtpDeliveryMethod»).Network;

            mail.DeliveryFormat = Врап.ПолучитьТип(«System.Net.Mail.SmtpDeliveryFormat»).SevenBit;

            

            //Формирование письма

             Message = врап.СоздатьОбъект(«System.Net.Mail.MailMessage»);

             MailAddressType= Врап.ПолучитьТип(«System.Net.Mail.MailAddress»);

            Message.From = врап.СоздатьОбъект(MailAddressType,FromMail);

            Message.To.Add(врап.СоздатьОбъект(MailAddressType,FromMail));

            Message.Subject = «Тест отправки почты SSL»;

            Message.IsBodyHtml = true;

            Message.Body = «Тест отправки почты SSL»;

            mail.Send(Message);//отправка

            Message.Dispose();

            mail.Dispose();

  

Serginio1

21 — 25.09.14 — 10:47

Не надо и DeliveryFormat  устанавливать.

По сути только указать  mail.EnableSsl=true;

врап=новый COMОбъект(«NetObjectToIDispatch45»);

        

            smtp = «smtp.yandex.ru»;

            login = «XXXXXX@yandex.ru»;

            password = «XXXXXXX»;

            Кому = «XXXXXX@YYYYYYYY.ru»;

            Port=25;      

            
            mail = врап.СоздатьОбъект(«System.Net.Mail.SmtpClient»,smtp, Port);

            

            mail.EnableSsl = true;

            mail.UseDefaultCredentials = false;

            mail.Credentials = врап.СоздатьОбъект(«System.Net.NetworkCredential»,login, Password);

            mail.DeliveryMethod = Врап.ПолучитьТип(«System.Net.Mail.SmtpDeliveryMethod»).Network;

            

            Message = врап.СоздатьОбъект(«System.Net.Mail.MailMessage»);

            MailAddressType= Врап.ПолучитьТип(«System.Net.Mail.MailAddress»);

            Message.From = врап.СоздатьОбъект(MailAddressType,login);

            Message.To.Add(врап.СоздатьОбъект(MailAddressType,Кому));

            Message.Subject = «Тема Тест отправки почты SSL»;

            Message.IsBodyHtml = true;

            Message.Body = «Тело Тест отправки почты SSL»;

            mail.Send(Message);//отправка

            Message.Dispose();

            mail.Dispose();

http://msdn.microsoft.com/ru-ru/library/system.net.mail.smtpclient.enablessl(v=vs.110).aspx

Свойство EnableSsl задает, используется ли протокол SSL для доступа к указанному почтовому SMTP-серверу.

Значение по умолчанию для этого свойства также можно задать в файле конфигурации компьютера или приложения. Любые изменения, внесенные в свойство EnableSsl, переопределяют параметры файла конфигурации.

Класс SmtpClient поддерживает только расширение службы SMTP для Secure SMTP через протокол TLS, определенный в RFC 3207. В этом режиме сеанс SMTP начинается в незашифрованном канале, затем от клиента к серверу дается команда STARTTLS, чтобы переключиться на безопасное соединение с помощью протокола SSL. См. RFC 3207 опубликованный IETF для получения дополнительных сведений.

Методом альтернативного подключения называется тот, при котором сеанс SSL устанавливается заранее, до отправки команд протокола. Этот способ подключения иногда называют SMTP/SSL, SMTP через SSL или SMTPS. По умолчанию для него используется порт 465. Этот альтернативный способ подключения с помощью протокола SSL в настоящее время не поддерживается.

С помощью свойства ClientCertificates можно указать, какие клиентские сертификаты следует использовать для установки SSL-подключения. Свойство ServerCertificateValidationCallback позволяет отклонить сертификат, предоставленный сервером SMTP. Свойство SecurityProtocol позволяет указать версию протокола SSL, которую следует использовать.

Добрый день! Из 1С:Предприятие 8.2.17.169 перестала отправляться почта.

1С стала выдавать ошибку:

Ошибка при вызове метода контекста (Подключиться): Время ожидания операции чтения истекло.

Раньше все отправлялось отлично. Есть подозрение, что могло накатиться какое-то обновление на почтовый сервер, и 1С перестала удовлетворять новым политикам. В компании используется два почтовика Microsoft Exchange 2007 и 2013.

Ошибки на обоих одинаковые.

Пробовал менять способ SMTP-аутентификацией, типа:

Профиль.АутентификацияSMTP = СпособSMTPАутентификации.Login;

В этом случае 1С выдает ошибку:  

Ошибка при вызове метода контекста (Подключиться): Параметр команды
не реализован (SMTP error code 504,
5.7.4 Unrecognized authentication type)

Разбираюсь в проблеме совместно с системным администратором и сетевым инженером компании.

Microsoft Exchange разрешает любую авторизацию на отправку, даже без авторизации. Тем не менее 1С все равно не хочет отправлять почту.

При попытке отправки сообщения через Microsoft Exchange через SMTP локально на машине просниферили запрос по SMTP протоколу.

Скрины запроса ниже.

http://imageup.ru/s1620833

http://imageup.ru/s1620836

http://imageup.ru/s1620837

Сам Exchange сервер по 25 порту доступен, используемый POP3 сервер по порту 110 также доступен.

Что это может быть?

Продолжение ошибки может звучать по-разному, например:

  • Ошибка в написании адреса сервера (11004).
  • Не удалось подключиться к почтовому серверу
  • Соединение закрыто сервером
  • Время ожидания операции чтения истекло

Ошибка возникает в связи с тем, что программа не может определить активное интернет соединение на компьютере.

Необходимо:

1. Проверить работоспособность интернета, открыв любой сайт в браузере.

2. Проблема может заключаться в антивирусном ПО, при отправки сообщений или приеме ответов, почтовый клиент антивируса блокирует пакеты. Для устранения проблемы необходимо настроить антивирус таким образом, чтобы он не блокировал исходящиевходящие сообщения, либо врнменно отключить антивирус для отпрвки или приема отчетности.

3. Если используется прокси-сервер, необходимо произвести его корректную настройку.

4. Проверить доступность сервера 1С-Отчетности с компьютера пользователя. Сделать это можно с помощью команды telnet. Для этого откройте командную строку («Пуск» → «Все программы» → «Стандартные» → «Командная строка»). Команда вводится водится в следующем формате: «telnet Y X», где Y — имя сервера, а X — порт.

Пример: telnet report.keydisk.ru 465

После ввода команды, нажмите кнопку «Enter». Если не появится сообщение об ошибке, то связь проходит успешно. Если результат проверки получился иной, то необходимо настроить соединение.

Примечание: Для соединения с сервером используются следующие порты:
smtp: 465 (резервный 25)
pop3: 110
http: 80

Подробные настройки доступа к сети

такой код: … выдает: Ошибка при вызове метода контекста (Подключиться): Время ожидания операции чтения истекло. ужжж чего я только не менял и не подставлял … может кто-нибудь надоумит … ткнЁт … где что не так … ? … вот …

если проверить командной строкой «telnet 93.158.134.38 25» — всё коннектится … следовательно что-то с Аутентификацией … а что ? не понимаю … уффф…

ВремяОжидания увеличивал?

да … и 60 ставил … всЁ так же … (((

пробовал и: Профиль_ПользовательSMTP_ПолноеИмя = «Логин@mail.yandex.ru»; то же никак … вставлял и : результат тот же … (хотя, как говорят, при рассылке ПОП3 можно не указывать …)… … уффф … вот …

А если: Профиль.АдресСервераSMTP = «smtp.yandex.ru»; ?

… и так то же делал … ((( …

ХЗ, вообще-то ping пишет: Обмен пакетами с smtp.yandex.ru [213.180.204.38]

на всех почтовиках стоит робот который не дает слишком часто слать письма, уж не помню точно, типа не чаще 1 письмо в 15 сек

Еще с яндекса: в разделе Outgoing mail/Исходящие сообщения (SMTP) — smtp.yandex.ru , порт 25, резервный порт 587

… ага … читал … или ещё бывает не больше 50 писем в день (или что-то подобное)… … но в данном случае хочется нууу просто соедениться, произвести акт Аутентификации … хотя бы … и никак … (((

… пробовал и 2525 … (иногда и такой бывает) … никак …

… если порт не тот выдает что-то типа: Ошибка при попытке соединения с сервером «smtp.yandex.ru:587» а когда порт «тот» то — «Время ожидания операции чтения истекло.» … … уфффф …

… может КТО подскажет … в чЁм дело ? … вот …

… согласен, логики ни какой … но ставил и сам пароль … выглядит так: … и ни чего … без результатно … (((

Тэги:

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

Ой! Данный функционал ещё в разработке

Серия ошибок доступа к интернету

Продолжение ошибки может звучать по-разному, например:

  • Объект InternetMailS
  • Ошибка в написании адреса сервера
  • Не удалось подключиться к почтовому серверу
  • Соединение закрыто сервером
  • Время ожидания операции чтения истекло

Ошибки возникают в связи с тем, что программа не может определить активное интернет-соединение на компьютере.

Необходимо:

1. Проверить работоспособность интернета, открыв любой сайт в браузере.

2. Настроить антивирус/брандмауэр/файрволл. Проблема может заключаться в том, что антивирусное ПО блокирует входящие и/или исходящие пакеты. Нужно настроить антивирус таким образом, чтобы он не блокировал исходящие/входящие сообщения, либо временно отключить антивирус для отправки или приема отчетности.

3. При использовании подключения через прокси сервер необходимо произвести его корректную настройку в системе, а также настроить авторизацию на прокси-сервере в 1С.

4. Проверить доступность сервера 1С-Отчетности с компьютера пользователя. Сделать это можно с помощью команды telnet. Доступ к портам можно проверить с помощью командной строки. Для этого перейдите в меню Пуск → Выполнить и впишите cmd. В открывшейся командной строке введите команду telnet, через пробел адрес сервера и через пробел соответствующий ему порт. 

После ввода команды нажмите кнопку Enter. Если не появится сообщение об ошибке, то связь проходит успешно. Если результат проверки получился иной, то необходимо настроить соединение. Для этого воспользуйтесь подробными настройками доступа к сети.

Номер статьи: 129674482
Обновлено: 12.04.2022 06:59+0000

Добрый день! Из 1С:Предприятие 8.2.17.169 перестала отправляться почта.

1С стала выдавать ошибку:

Ошибка при вызове метода контекста (Подключиться): Время ожидания операции чтения истекло.

Раньше все отправлялось отлично. Есть подозрение, что могло накатиться какое-то обновление на почтовый сервер, и 1С перестала удовлетворять новым политикам. В компании используется два почтовика Microsoft Exchange 2007 и 2013.

Ошибки на обоих одинаковые.

Пробовал менять способ SMTP-аутентификацией, типа:

Профиль.АутентификацияSMTP = СпособSMTPАутентификации.Login;

В этом случае 1С выдает ошибку:  

Ошибка при вызове метода контекста (Подключиться): Параметр команды
не реализован (SMTP error code 504,
5.7.4 Unrecognized authentication type)

Разбираюсь в проблеме совместно с системным администратором и сетевым инженером компании.

Microsoft Exchange разрешает любую авторизацию на отправку, даже без авторизации. Тем не менее 1С все равно не хочет отправлять почту.

При попытке отправки сообщения через Microsoft Exchange через SMTP локально на машине просниферили запрос по SMTP протоколу.

Скрины запроса ниже.

http://imageup.ru/s1620833

http://imageup.ru/s1620836

http://imageup.ru/s1620837

Сам Exchange сервер по 25 порту доступен, используемый POP3 сервер по порту 110 также доступен.

Что это может быть?

такой код: … выдает: Ошибка при вызове метода контекста (Подключиться): Время ожидания операции чтения истекло. ужжж чего я только не менял и не подставлял … может кто-нибудь надоумит … ткнЁт … где что не так … ? … вот …

если проверить командной строкой «telnet 93.158.134.38 25» — всё коннектится … следовательно что-то с Аутентификацией … а что ? не понимаю … уффф…

ВремяОжидания увеличивал?

да … и 60 ставил … всЁ так же … (((

пробовал и: Профиль_ПользовательSMTP_ПолноеИмя = «Логин@mail.yandex.ru»; то же никак … вставлял и : результат тот же … (хотя, как говорят, при рассылке ПОП3 можно не указывать …)… … уффф … вот …

А если: Профиль.АдресСервераSMTP = «smtp.yandex.ru»; ?

… и так то же делал … ((( …

ХЗ, вообще-то ping пишет: Обмен пакетами с smtp.yandex.ru [213.180.204.38]

на всех почтовиках стоит робот который не дает слишком часто слать письма, уж не помню точно, типа не чаще 1 письмо в 15 сек

Еще с яндекса: в разделе Outgoing mail/Исходящие сообщения (SMTP) — smtp.yandex.ru , порт 25, резервный порт 587

… ага … читал … или ещё бывает не больше 50 писем в день (или что-то подобное)… … но в данном случае хочется нууу просто соедениться, произвести акт Аутентификации … хотя бы … и никак … (((

… пробовал и 2525 … (иногда и такой бывает) … никак …

… если порт не тот выдает что-то типа: Ошибка при попытке соединения с сервером «smtp.yandex.ru:587» а когда порт «тот» то — «Время ожидания операции чтения истекло.» … … уфффф …

… может КТО подскажет … в чЁм дело ? … вот …

… согласен, логики ни какой … но ставил и сам пароль … выглядит так: … и ни чего … без результатно … (((

Тэги:

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

Добрый день, создал на обычной форме кнопку, и на её событие написал код. Код должен отправлять автоматически письмо на электронную почту mail.ru, но вместо отправки, выдаёт ошибки:

{Документ.ЭлектронноеДело.Форма.ФормаДокумента(385)}: Ошибка при вызове метода контекста (Подключиться): Время ожидания операции чтения истекло.
{Документ.ЭлектронноеДело.Форма.ФормаДокумента(409)}: Ошибка при вызове метода контекста (Послать): Время ожидания операции чтения истекло.

Не могу понять в чём моя проблема. Программирую на 1C 8.0.

Спасибо каждому кто поможет) Код ниже:

ПрофильПодключения = Новый ИнтернетПочтовыйПрофиль;

ПрофильПодключения.АдресСервераSMTP = "smtp.mail.ru";

ПрофильПодключения.ПортSMTP = 465;

ПрофильПодключения.ПользовательSMTP = "Toresshow@mail.ru";
ПрофильПодключения.ПарольSMTP ="ТутМойПарольОтПочты";

Почта = Новый ИнтернетПочта;

Попытка
Почта.Подключиться(ПрофильПодключения);
Исключение
Сообщить("Ошибка подключения к mail.ru");
Сообщить(ОписаниеОшибки());
КонецПопытки;

Тело = "тест текста";

Письмо = Новый ИнтернетПочтовоеСообщение;

Письмо.Тексты.Добавить(Тело);

Письмо.Тема = "тест тема";

Письмо.Отправитель = "Toresshow@mail.ru";

Письмо.ИмяОтправителя = "тест отправитель";

Письмо.Получатели.Добавить("Toresshow2@mail.ru");

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

Почта.Отключиться();

Попробовал через другие почты, через gmail получаю вот такие ошибки:
{Документ.ЭлектронноеДело.Форма.ФормаДокумента(383)}: Ошибка при вызове метода контекста (Подключиться): Соединение закрыто сервером.
{Документ.ЭлектронноеДело.Форма.ФормаДокумента(404)}: Ошибка при вызове метода контекста (Послать): Соединение закрыто сервером.

Через outlook.com:
{Документ.ЭлектронноеДело.Форма.ФормаДокумента(404)}: Ошибка при вызове метода контекста (Послать): Локальная ошибка сервера (SMTP error code 451, 5.7.3 STARTTLS is required to send mail [AS8P189CA0010.EURP189.PROD.OUTLOOK.COM])

  • Ошибка при вызове метода контекста подключиться аутентификация не прошла
  • Ошибка при вызове метода контекста подключитькомпоненту не найден файл внешней компоненты
  • Ошибка при вызове метода контекста подключить ошибка вызова метода внешней компоненты 999
  • Ошибка при вызове метода контекста переместитьфайл ошибка переименования файлов файл не обнаружен
  • Ошибка при вызове метода контекста отправитьдляобработки ошибка при выполнении файловой операции