Пользовательские флаги 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)), если это так, мы можем добавить ключевые слова так же, как мы добавили бы флаги. Если этого не произойдет, то ничего не поделаешь.