• Как получить mail.ru рассылки в IMAP?

    Vlad_IT
    @Vlad_IT
    Front-end разработчик
    Как выше правильно заметил akelsey, вы получаете почту только с ящика INBOX, чтобы получить почту со всех ящиков, нужно получить все эти ящики, и для них отдельно грести письма.
    Вот так я вывел список ящиков
    client.listMailboxes().then((mailboxes) => { console.warn(mailboxes); })

    и получил вот такой ответ
    Список ящиков
    { root: true,
      children:
       [ { name: 'INBOX',
           delimiter: '/',
           path: 'INBOX',
           children: [Array],
           flags: [Array],
           listed: true },
         { name: 'Нежелательная почта',
           delimiter: '/',
           path: '&BB0ENQQ2BDUEOwQwBEIENQQ7BEwEPQQwBE8- &BD8EPgRHBEIEMA-',
           children: [],
           flags: [],
           listed: true },
         { name: 'Нужное',
           delimiter: '/',
           path: '&BB0EQwQ2BD0EPgQ1-',
           children: [],
           flags: [],
           listed: true },
         { name: 'Спам',
           delimiter: '/',
           path: '&BCEEPwQwBDw-',
           children: [],
           flags: [Array],
           listed: true,
           specialUse: '\\Junk' },
         { name: 'Отправленные',
           delimiter: '/',
           path: '&BB4EQgQ,BEAEMAQyBDsENQQ9BD0ESwQ1-',
           children: [],
           flags: [Array],
           listed: true,
           specialUse: '\\Sent',
           specialUseFlag: '\\Sent' },
         { name: 'Черновики',
           delimiter: '/',
           path: '&BCcENQRABD0EPgQyBDgEOgQ4-',
           children: [],
           flags: [Array],
           listed: true,
           specialUse: '\\Drafts',
           specialUseFlag: '\\Drafts' },
         { name: 'Корзина',
           delimiter: '/',
           path: '&BBoEPgRABDcEOAQ9BDA-',
           children: [],
           flags: [Array],
           listed: true,
           specialUse: '\\Trash',
           specialUseFlag: '\\Trash' } ] }

    Там много чего интересного. Вам же нужен параметр path, его вы и должны подставлять вместо INBOX.
    Ответ написан
    Комментировать
  • Как получить mail.ru рассылки в IMAP?

    akelsey
    @akelsey
    Ну вот не будучи программистом я вижу что вы получаете айтемы только из инбокса:
    const listMessages = await client.listMessages('INBOX', '1:*', ['uid', 'flags', 'envelope', 'body[]']);

    Наверное нужно переписать код что бы тот рекурсивно обходил все папки.
    Ответ написан
    Комментировать
  • Как получить актуальное значение из MongoDB, при запросе с нескольких воркеров?

    Вынести работу с монгой в отдельный сервис с апи и контролировать конкурентность в этом сервисе.
    Ответ написан
    Комментировать