thunderbird - количество сообщений от underad, из базы.sqlite

Я хочу сделать небольшой плагин для удивительной WM, который будет показывать количество непрочитанных сообщений, ожидающих в Thunderbird. Я хочу получить количество сообщений, обращающихся напрямую к базе Thunderbird sqlite. Вопрос в том, какую базу, таблицу и поля мне нужно запросить?

Есть как минимум 15 баз под ~/.thunderbird/profile/, в том числе ./global-messages-db.sqlite, В этой базе я попробовал messageAttributes стол, но без особого успеха. Я не смог найти документацию по разработке с описанием атрибутов...

Любая помощь здесь?

1 ответ

Решение

Вы найдете то, что вам нужно в global-messages-db.sqlite файл. Если вы смотрите messages стол, вы найдете столбец jsonAttributes, Там вы найдете массив JSON из идентификаторов атрибутов и их значений. Ключ 58 является статусом чтения сообщения. Так что если вы найдете что-то вроде {"58": false} в этом столбце сообщение все еще не прочитано. Но эта база данных не будет обновляться сразу после получения нового сообщения. (Это может быть даже обновлено, только когда вы закроете Thunderbird - я не уверен в этом.)

Так что, как вы видите, поиск непрочитанных сообщений таким путем будет немного сложным. Я бы порекомендовал вам лучше создать плагин, который напрямую проверяет сервер через IMAP или POP3.

Для серверов IMAP уже существует замечательный плагин внутри Delightful Extensions. Я не знаю ни одного плагина POP3, и, как кажется, библиотеки POP3 для lua также встречаются редко.

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