Пользовательские флаги node-imap

Есть ли способ добавить пользовательские флаги в node-imap? Я хотел добавить флаг типа "Помечено" или "Важно", но пока не увенчался успехом. Я прочитал в документации кое-что о permFlags и добавлении пользовательских флагов, предоставляемых сервером, но не уверен, что они считают сервер провайдером электронной почты или наш сервер как сервер. Я успешно добавляю системные флаги, но не пользовательские. Я предполагаю, что они должны быть добавлены в permFlags ранее, если да, то как? Это код, который я использую для добавления / удаления системных флагов:

     imap.once('ready', () => {
        imap.openBox('inbox', false, (err, box) => {
        if (err) throw err;
          let ids = JSON.parse("[" + id + "]");
          if (data.flag) { //if true add flag
            imap.seq.addFlags(ids, data.name, (err) => {
              if (err) throw err;
            })
          } else { //if false delete flag
            imap.seq.delFlags(ids, data.name, (err) => {
              if (err) throw err;
            })
          }
          imap.closeBox(function (err) {
            if (err) throw err;
            imap.end();
          });
        })
      })

1 ответ

Решение

Тем временем я разместил вопрос на странице модуля github, и владелец ответил довольно быстро. Поселение пришло к добавлению ключевых слов вместо флагов. Сначала мы должны проверить, разрешает ли box ключевые слова (if (box.newKeywords === true)), если это так, мы можем добавить ключевые слова так же, как мы добавили бы флаги. Если этого не произойдет, то ничего не поделаешь.

Другие вопросы по тегам