На главную
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Этот раздел предназначен для заполнения/проверки/рехтования/* содержимого будущего FAQ и не более того.
Все вопросы касательно 1С следует задавать здесь: 1С: Проблемы и решения
Модераторы: evGenius
  
> Как получить структуру каталогов электронной почты по IMAP
    Доброго дня!

    Перешли на встроенную почту в документообороте 2.1 (1С ДО используется как полноценный почтовый клиент), но столкнулись с двумя проблемами:
    1. Пользователям в ДО попадают только новые письма, а нужна еще и вся старая переписка, иначе приходится работать в двух почтовых клиентах сразу
    2. При миграции перенеслись только письма из каталога Входящие, а ведь у каждого была настроена своя структура каталогов

    С первой проблемой разобрался достаточно быстро. Кому интересно смотрите параметры отбора метода ПолучитьИдентификаторы объекта ИнтернетПочта в синтакс-помощнике. А вот вторая проблема отняла пару часов.

    Погуглив на тему "IMAP получить структуру папок", увидел что готового примера для 1С нет, но есть для других языков (Python, PHP, C++).
    Понял что надо внимательнее курить литературу и нашел!

    Собственно коротенький пример:

    ExpandedWrap disabled
      Профиль = Новый ИнтернетПочтовыйПрофиль;
      Профиль.ИспользоватьSSLIMAP = Истина;
      Профиль.АдресСервераIMAP = "imap.yandex.ru";
      Профиль.ПортIMAP = "993";
      Профиль.ПользовательIMAP = "Primer@yandex.ru";
      Профиль.ПарольIMAP = "qwerty";
      Профиль.ТолькоЗащищеннаяАутентификацияIMAP=Ложь;
       
      Почта = Новый ИнтернетПочта;
      Сообщ = Новый СообщениеПользователю();
       
      Попытка
          Почта.Подключиться(Профиль, ПротоколИнтернетПочты.IMAP);
      Исключение
          Сообщ.Текст = "Ошибка при подключении" + ОписаниеОшибки();
          Сообщ.Сообщить();
          Возврат;
      КонецПопытки;
       
      МассивЯщиков = Почта.ПолучитьПочтовыеЯщики();
          
      Для каждого Ящик Из МассивЯщиков Цикл
          
          Сообщ.Текст = Ящик;
          Сообщ.Сообщить();
       
      КонецЦикла;


    Получил вот такой вывод каталогов из моего ящика в яндексе

    ExpandedWrap disabled
      Отправленные
      Проекты
      Проекты|Вопросы отдела
      Проекты|Внедрение ERP
      Проекты|Инвентаризация
      Проекты|Калькуляции по тендерам
      Проекты|Мониторинг ПК
      Проекты|УАТ
      Проекты|Фин Рез
      Проекты|ЧПУ
      Проекты|1С CRM и телефония
      Задачи руководства
      Исходящие
      Спам
      Удаленные
      Черновики
      INBOX
      ОТК


    "|" - это символ разделитель иерархической структуры каталогов.
    Получить его можно через свойство СимволРазделитель объекта ИнтернетПочта.
    Описание из Синтакс-помощника:
    ExpandedWrap disabled
      Содержит разделитель, используемый для разделения папок в иерархии папок.
      Разделитель настраивается на сервере IMAP.
      На клиенте свойство указывает, какой разделитель нужно использовать при адресации иерархии папок.
    Сообщение отредактировано: Rust -
    1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
    0 пользователей:


    Рейтинг@Mail.ru
    [ Script execution time: 0,0230 ]   [ 15 queries used ]   [ Generated: 29.07.21, 12:00 GMT ]