Я хотів би позначити всі вхідні листи, які включають запрошення до календаря. Тоді я хотів би перенести їх в іншу папку. Я спробував метод, описаний у цій відповіді, але він не працює: я спробував знайти заголовок під назвою "Content-Type" із вмістом "текст / календар", але це не спрацювало.
Я також спробував аддон FiltaQuilla , який теж не вдався. Я використовував наступний код там:
var sHeaderToLookFor = "content-type";
var sContentInHeader = "text/calendar";
var bFoundIt = false;
function msgHdrGetHeaders(aMsgHdr, k) {
let uri = aMsgHdr.folder.getUriForMsg(aMsgHdr);
let messageService = MailServices.messenger.messageServiceFromURI(uri);
MsgHdrToMimeMessage(aMsgHdr, null, function (aMsgHdr, aMimeMsg) { k(aMimeMsg); }, true, { partsOnDemand: true, examineEncryptedParts:true });
}
msgHdrGetHeaders(message, function (aHeaders) {
if (aHeaders.has(sHeaderToLookFor)) {
var pattern = new RegExp(sContentInHeader);
Application.console.log("InBetween_1");
if (!bFoundIt)
bFoundIt= pattern.test(aHeaders.get(sHeaderToLookFor));
Application.console.log(bFoundIt);
Application.console.log("InBetween_2");
}
});
Application.console.log("AtEnd_1");
Application.console.log(bFoundIt);
Application.console.log("AtEnd_2");
bFoundIt;
Після тестування фільтра на електронній пошті із запрошенням .ics у мене був наступний вихід на консоль:
AtEnd_1
false
AtEnd_2
InBetween_1
true
InBetween_2
Отже, цей фільтр із JavaScript працював би. Але це не працює, оскільки MsgHdrToMimeMessage () буде викликати зворотний виклик після того, як фільтр повернеться "false" до FiltaQuilla. Мені потрібно змусити код чекати (використовувати його синхронно замість асинхронно), але я не маю уявлення про те, як це зробити.
У всякому разі, я не дуже зосереджений на використанні FiltaQuilla. Я просто хотів би вирішити свою проблему.
Я використовую IMAP і зберігаю електронні листи на своєму локальному HD для читання електронною поштою офлайн.
Була старша версія Thunderbird, де працював FiltaQuilla (щось на зразок 24.x), і там, де працювали навіть більш старі версії Thunderbird (як 3.x), де працювали фільтри на заголовках. Але щось змінилося, і тепер я вже не знаю, як фільтрувати.