Qter 发表于 2020-10-13 15:50:05

MailSpring源码分析--接口数据格式

本帖最后由 Qter 于 2020-10-13 16:29 编辑

Folder{
      "modelClass": "Folder",
      "modelJSONs": [{
                "__cls": "Folder",
                "aid": "b800a344",
                "id": "Lk12eu8qWXuhFfhNgWQL95A9kY2aTz54ARP64zovM",
                "path": "INBOX",
                "role": "inbox",
                "v": 2
      }, {
                "__cls": "Folder",
                "aid": "b800a344",
                "id": "StmzU7PDLSyVMtFArwBZMDv5EbSv45TjmXjbaPZCV",
                "path": "&g0l6P3ux-",
                "role": "drafts",
                "v": 2
      }, {
                "__cls": "Folder",
                "aid": "b800a344",
                "id": "Jpge8BvRtPRvkZTJHhSFqPBKhnaT2DyXQRGuNN98R",
                "path": "&XfJT0ZAB-",
                "role": "sent",
                "v": 2
      }, {
                "__cls": "Folder",
                "aid": "b800a344",
                "id": "q2zZWGt1Ky4YEkam5YokAALNktbtxA1xmPVB84BDu",
                "path": "&XfJSIJZk-",
                "role": "trash",
                "v": 2
      }, {
                "__cls": "Folder",
                "aid": "b800a344",
                "id": "d6Pqqtiq83Wn94G8GUvpujjWQ6bcYoPjUDZyRkGKH",
                "path": "&V4NXPpCuTvY-",
                "role": "spam",
                "v": 2
      }, {
                "__cls": "Folder",
                "aid": "b800a344",
                "id": "CtDtb7hksdT1NNG1kBYvcN8UJRNTUrVBWDHCzXEdr",
                "path": "&UWxT+JCuTvY-",
                "role": "",
                "v": 1
      }, {
                "__cls": "Folder",
                "aid": "b800a344",
                "id": "V9AQF7D63q3qKCS6ZzJA1kfC3AtzeMWbohkvuRdRb",
                "path": "Personal",
                "role": "",
                "v": 1
      }, {
                "__cls": "Folder",
                "aid": "b800a344",
                "id": "TeNLJcSZPWm9t1RZ5dFBybQAt5RFrqLRbcEsf3XjE",
                "path": "Mailspring",
                "role": "",
                "v": 1
      }, {
                "__cls": "Folder",
                "aid": "b800a344",
                "id": "xxnLufF2J6YeBsBnXB8RX1UXbeY5pcjbbMGi3RCz",
                "path": "Mailspring/Snoozed",
                "role": "snoozed",
                "v": 2
      }],
      "type": "persist"
}Messag
{
      "modelClass": "Message",
      "modelJSONs": [{
                "__cls": "Message",
                "_sa": 1602496215,
                "_suc": 0,
                "aid": "b800a344",
                "bcc": [],
                "cc": [],
                "date": 1595234938,
                "draft": false,
                "extraHeaders": {},
                "files": [],
                "folder": {
                        "__cls": "Folder",
                        "aid": "b800a344",
                        "id": "Jpge8BvRtPRvkZTJHhSFqPBKhnaT2DyXQRGuNN98R",
                        "path": "&XfJT0ZAB-",
                        "role": "sent",
                        "v": 3
                },
                "from": [{
                        "email": "15313159857@139.com",
                        "name": "15313159857@139.com"
                }],
                "gMsgId": "0",
                "hMsgId": "202007201648566810450@139.com",
                "id": "iG1rqtbwLjCp7joccKo6ujsfBuWBNriDtyp6Gbix4",
                "labels": [],
                "plaintext": false,
                "remoteFolder": {
                        "__cls": "Folder",
                        "aid": "b800a344",
                        "id": "Jpge8BvRtPRvkZTJHhSFqPBKhnaT2DyXQRGuNN98R",
                        "path": "&XfJT0ZAB-",
                        "role": "sent",
                        "v": 3
                },
                "remoteUID": 2742,
                "replyTo": [{
                        "email": "15313159857@139.com",
                        "name": "15313159857@139.com"
                }],
                "rthMsgId": null,
                "snippet": "test content 15313159857@139.com",
                "starred": false,
                "subject": "test",
                "threadId": "t:iG1rqtbwLjCp7joccKo6ujsfBuWBNriDtyp6Gbix4",
                "to": [{
                        "email": "15313159857@139.com",
                        "name": "15313159857"
                }],
                "unread": false,
                "v": 5
      }, {
                "__cls": "Message",
                "_sa": 1602496214,
                "_suc": 0,
                "aid": "b800a344",
                "bcc": [],
                "cc": [],
                "date": 1492644734,
                "draft": false,
                "extraHeaders": {},
                "files": [],
                "folder": {
                        "__cls": "Folder",
                        "aid": "b800a344",
                        "id": "Lk12eu8qWXuhFfhNgWQL95A9kY2aTz54ARP64zovM",
                        "path": "INBOX",
                        "role": "inbox",
                        "v": 3
                },
                "from": [{
                        "email": "itzj1_cmpost@139.com",
                        "name": "IT涔嬪?"
                }],
                "gMsgId": "0",
                "hMsgId": "301865120.64159.1492644734333.JavaMail.subscribeService@appdingyue02",
                "headersSyncComplete": true,
                "id": "qwDF4ZwVpQgprpFb41agxy5uCSVdL8LCVS98JgtwG",
                "labels": [],
                "remoteFolder": {
                        "__cls": "Folder",
                        "aid": "b800a344",
                        "id": "Lk12eu8qWXuhFfhNgWQL95A9kY2aTz54ARP64zovM",
                        "path": "INBOX",
                        "role": "inbox",
                        "v": 3
                },
                "remoteUID": 2468,
                "replyTo": [{
                        "email": "itzj1_cmpost@139.com",
                        "name": "IT涔嬪?"
                }],
                "rthMsgId": null,
                "starred": false,
                "subject": "鍚哥溂鐞冿紒涓扮敯瀹e竷璁″垝鐢熶骇

Qter 发表于 2020-10-13 16:29:23

本帖最后由 Qter 于 2020-10-13 16:55 编辑



Message2{
      "modelClass": "Message",
      "modelJSONs": [{
                "__cls": "Message",
                "_sa": 1602496206,
                "_suc": 0,
                "aid": "b800a344",
                "bcc": [],
                "body": "<html>htmlcontent</html>",
                "cc": [],
                "date": 1596073609,
                "draft": false,
                "extraHeaders": {},
                "files": [],
                "folder": {
                        "__cls": "Folder",
                        "aid": "b800a344",
                        "id": "Lk12eu8qWXuhFfhNgWQL95A9kY2aTz54ARP64zovM",
                        "path": "INBOX",
                        "role": "inbox",
                        "v": 2
                },
                "from": [{
                        "email": "2842929645@qq.com",
                        "name": "2842929645@qq.com"
                }],
                "fullSyncComplete": true,
                "gMsgId": "0",
                "hMsgId": "tencent_21AE1435893CB72D50FEBAF1305701F7BB07@qq.com",
                "headersSyncComplete": true,
                "id": "remEPGj5RBNdCbidBnGgEXVsVd6soxEtKjaxrgSpz",
                "labels": [],
                "plaintext": false,
                "remoteFolder": {
                        "__cls": "Folder",
                        "aid": "b800a344",
                        "id": "Lk12eu8qWXuhFfhNgWQL95A9kY2aTz54ARP64zovM",
                        "path": "INBOX",
                        "role": "inbox",
                        "v": 2
                },
                "remoteUID": 2745,
                "replyTo": [{
                        "email": "2842929645@qq.com",
                        "name": "2842929645@qq.com"
                }],
                "rthMsgId": null,
                "snippet": "2842929645@qq.com",
                "starred": false,
                "subject": "gfd",
                "threadId": "t:remEPGj5RBNdCbidBnGgEXVsVd6soxEtKjaxrgSpz",
                "to": [{
                        "email": "15313159857@139.com",
                        "name": "15313159857"
                }],
                "unread": false,
                "v": 2
      }, {
                "__cls": "Message",
                "_sa": 1602496206,
                "_suc": 0,
                "aid": "b800a344",
                "bcc": [],
                "body": "<html>htmlcontet2</html>",
                "cc": [],
                "date": 1595234938,
                "draft": false,
                "extraHeaders": {},
                "files": [],
                "folder": {
                        "__cls": "Folder",
                        "aid": "b800a344",
                        "id": "Lk12eu8qWXuhFfhNgWQL95A9kY2aTz54ARP64zovM",
                        "path": "INBOX",
                        "role": "inbox",
                        "v": 2
                },
                "from": [{
                        "email": "15313159857@139.com",
                        "name": "15313159857@139.com"
                }],
                "fullSyncComplete": true,
                "gMsgId": "0",
                "hMsgId": "202007201648566810450@139.com",
                "headersSyncComplete": true,
                "id": "iG1rqtbwLjCp7joccKo6ujsfBuWBNriDtyp6Gbix4",
                "labels": [],
                "plaintext": false,
                "remoteFolder": {
                        "__cls": "Folder",
                        "aid": "b800a344",
                        "id": "Lk12eu8qWXuhFfhNgWQL95A9kY2aTz54ARP64zovM",
                        "path": "INBOX",
                        "role": "inbox",
                        "v": 2
                },
                "remoteUID": 2741,
                "replyTo": [{
                        "email": "15313159857@139.com",
                        "name": "15313159857@139.com"
                }],
                "rthMsgId": null,
                "snippet": "test content 15313159857@139.com",
                "starred": false,
                "subject": "test",
                "threadId": "t:iG1rqtbwLjCp7joccKo6ujsfBuWBNriDtyp6Gbix4",
                "to": [{
                        "email": "15313159857@139.com",
                        "name": "15313159857"
                }],
                "unread": false,
                "v": 2
      }, {
                "__cls": "Message",
                "_sa": 1602496206,
                "_suc": 0,
                "aid": "b800a344",
                "bcc": [],
                "cc": [],
                "date": 1482800592,
                "draft": false,
                "extraHeaders": {},
                "files": [],
                "folder": {
                        "__cls": "Folder",
                        "aid": "b800a344",
                        "id": "Lk12eu8qWXuhFfhNgWQL95A9kY2aTz54ARP64zovM",
                        "path": "INBOX",
                        "role": "inbox",
                        "v": 2
                },
                "from": [{
                        "email": "jkhb_cmpost@139.com",
                        "name": "139"
                }],
                "gMsgId": "0",
                "hMsgId": "269504832.14173.1482800592490.JavaMail.subscribeService@appdingyue02",
                "headersSyncComplete": true,
                "id": "VmWzuufgfhnG9aXPwYvnMgj25A9SC7La8zVomTdp3",
                "labels": [],
                "remoteFolder": {
                        "__cls": "Folder",
                        "aid": "b800a344",
                        "id": "Lk12eu8qWXuhFfhNgWQL95A9kY2aTz54ARP64zovM",
                        "path": "INBOX",
                        "role": "inbox",
                        "v": 2
                },
                "remoteUID": 2446,
                "replyTo": [{
                        "email": "jkhb_cmpost@139.com",
                        "name": "139"
                }],
                "rthMsgId": null,
                "starred": false,
                "subject": "fdsfd",
                "threadId": "t:VmWzuufgfhnG9aXPwYvnMgj25A9SC7La8zVomTdp3",
                "to": [],
                "unread": false,
                "v": 1
      }, {
                "__cls": "Message",
                "_sa": 1602496206,
                "_suc": 0,
                "aid": "b800a344",
                "bcc": [],
                "cc": [],
                "date": 1489652566,
                "draft": false,
                "extraHeaders": {},
                "files": [],
                "folder": {
                        "__cls": "Folder",
                        "aid": "b800a344",
                        "id": "Lk12eu8qWXuhFfhNgWQL95A9kY2aTz54ARP64zovM",
                        "path": "INBOX",
                        "role": "inbox",
                        "v": 2
                },
                "from": [{
                        "email": "umc_service@139.com",
                        "name": "rrr"
                }],
                "gMsgId": "0",
                "hMsgId": "813132157.69863.1489652566778.JavaMail.api@umc-api4",
                "headersSyncComplete": true,
                "id": "ApPwWThvevAeas6teXWX8BxvXAThwGNi5XUgAgXKh",
                "labels": [],
                "remoteFolder": {
                        "__cls": "Folder",
                        "aid": "b800a344",
                        "id": "Lk12eu8qWXuhFfhNgWQL95A9kY2aTz54ARP64zovM",
                        "path": "INBOX",
                        "role": "inbox",
                        "v": 2
                },
                "remoteUID": 2445,
                "replyTo": [{
                        "email": "umc_service@139.com",
                        "name": "ccc"
                }],
                "rthMsgId": null,
                "starred": false,
                "subject": "cccc",
                "threadId": "t:ApPwWThvevAeas6teXWX8BxvXAThwGNi5XUgAgXKh",
                "to": [{
                        "email": "15313159857@139.com"
                }],
                "unread": false,
                "v": 1
      }],
      "type": "persist"
}

Qter 发表于 2020-10-13 17:14:32

Thread{
        "modelClass": "Thread",
        "modelJSONs": [{
                "__cls": "Thread",
                "aid": "b800a344",
                "attachmentCount": 0,
                "fmt": 1599356733,
                "folders": [{
                        "__cls": "Folder",
                        "_refs": 1,
                        "_u": 0,
                        "aid": "b800a344",
                        "id": "Lk12eu8qWXuhFfhNgWQL95A9kY2aTz54ARP64zovM",
                        "path": "INBOX",
                        "role": "inbox",
                        "v": 2
                }],
                "gThrId": "",
                "id": "t:RysRwotYxZtJXTEsVSrzR2fjqRqyUaAPJJfHsSh12",
                "inAllMail": true,
                "labels": [],
                "lmrt": 1599356733,
                "lmst": 0,
                "lmt": 1599356733,
                "participants": [{
                        "email": "15313159857@139.com"
                }, {
                        "email": "mail139@139.com",
                        "name": "eeeee"
                }],
                "searchRowId": 1,
                "starred": 0,
                "subject": "tttt",
                "unread": 0,
                "v": 3
        }, {
                "__cls": "Thread",
                "aid": "b800a344",
                "attachmentCount": 0,
                "fmt": 1596073609,
                "folders": [{
                        "__cls": "Folder",
                        "_refs": 1,
                        "_u": 0,
                        "aid": "b800a344",
                        "id": "Lk12eu8qWXuhFfhNgWQL95A9kY2aTz54ARP64zovM",
                        "path": "INBOX",
                        "role": "inbox",
                        "v": 2
                }],
                "gThrId": "",
                "id": "t:remEPGj5RBNdCbidBnGgEXVsVd6soxEtKjaxrgSpz",
                "inAllMail": true,
                "labels": [],
                "lmrt": 1596073609,
                "lmst": 0,
                "lmt": 1596073609,
                "participants": [{
                        "email": "15313159857@139.com",
                        "name": "15313159857"
                }, {
                        "email": "2842929645@qq.com",
                        "name": "2842929645@qq.com"
                }],
                "searchRowId": 2,
                "starred": 0,
                "subject": "sss",
                "unread": 0,
                "v": 3
        }, {
                "__cls": "Thread",
                "aid": "b800a344",
                "attachmentCount": 0,
                "fmt": 1489652566,
                "folders": [{
                        "__cls": "Folder",
                        "_refs": 1,
                        "_u": 0,
                        "aid": "b800a344",
                        "id": "Lk12eu8qWXuhFfhNgWQL95A9kY2aTz54ARP64zovM",
                        "path": "INBOX",
                        "role": "inbox",
                        "v": 2
                }],
                "gThrId": "",
                "id": "t:ApPwWThvevAeas6teXWX8BxvXAThwGNi5XUgAgXKh",
                "inAllMail": true,
                "labels": [],
                "lmrt": 1489652566,
                "lmst": 0,
                "lmt": 1489652566,
                "participants": [{
                        "email": "15313159857@139.com"
                }, {
                        "email": "umc_service@139.com",
                        "name": "ttt"
                }],
                "searchRowId": 32,
                "starred": 0,
                "subject": "sss",
                "unread": 0,
                "v": 2
        }],
        "type": "persist"
}

Qter 发表于 2020-10-13 17:28:34

app\src\global\mailspring-exports.js
const lazyLoadAndRegisterModel = (klassName, path) => {
lazyLoad(klassName, `flux/models/${path}`);
DatabaseObjectRegistry.register(klassName, () => exports);
};

lazyLoadAndRegisterModel(`File`, 'file');
lazyLoadAndRegisterModel(`Event`, 'event');
lazyLoadAndRegisterModel(`Label`, 'label');
lazyLoadAndRegisterModel(`Folder`, 'folder');
lazyLoadAndRegisterModel(`Thread`, 'thread');
lazyLoadAndRegisterModel(`Account`, 'account');
lazyLoadAndRegisterModel(`Message`, 'message');
lazyLoadAndRegisterModel(`Contact`, 'contact');

Qter 发表于 2020-10-13 17:53:31

Messages are a sub-object of threads. The content of a message === immutable (with the
exception being drafts). Mailspring does not support operations such as move || delete on
individual messages; those operations should be performed on the message’s thread.
All messages are part of a thread, even if that thread has only one message.

Qter 发表于 2020-10-16 17:35:29

https://docs.nylas.com/reference#filters

https://docs.nylas.com/reference#messages

页: [1]
查看完整版本: MailSpring源码分析--接口数据格式