我正在构建一个分析Gmail特定文件夹的工具(例如'[Gmail] /所有邮件','[Gmail] /垃圾邮件').似乎这些名称是针对用户本地化设置进行本地化的,因此"[Gmail] /所有邮件"会向西班牙用户显示为"[Gmail]/Todos".
是否存在gmail文件夹的非本地化规范名称?一种检测它的方法?或者在最坏的情况下,列出可能的本地化名称.
Paw*_*ski 14
2016年6月更新
请记住,XLIST在Gmail中,IMAP 在2013年已被弃用,最终将被删除.
您需要使用SPECIAL-USE邮箱.
遗憾的是,Gmail并未根据规范宣传此功能,但它已实施且工作正常(在09/09/2016测试) - 请注意\ Trash标记:
C: 55535a988a074191 LIST "" * RETURN (SPECIAL-USE)
S: ...
S: * LIST (\HasNoChildren \Trash) "/" "[Gmail]/Bin"
Run Code Online (Sandbox Code Playgroud)
常规LIST也会返回相同的响应(我会说这是Gmail的错误).
原始答案
有一种更好的方法:XLIST命令.
Google和Apple开发了一个特殊的IMAP命令XLIST来解决这个问题.
IMAP XLIST命令返回文件夹列表及其众所周知的标志(\ Inbox,\ Drafts,\ Trash,\ Sent,\ Spam):
* XLIST (\HasNoChildren \Inbox) "/" "Inbox"
Run Code Online (Sandbox Code Playgroud)
Mail.dll IMAP客户端(我创建的商业产品)支持XLIST命令.当服务器宣传支持此功能时,它会自动使用.你可以在这里阅读更多内容:https://www.limilabs.com/blog/localized-gmail-imap-folders/
此用户脚本包含一个包含大量问号的非常不完整的列表:
Android的电子邮件回购还有更多res/values-xx/strings.xml.它出现在谷歌搜索一些Gmail的字符串,所以它有可能工作.它们可能不一定与Gmail的字符串匹配,因此需要注意 - 例如,它不具有"所有邮件",因为它适用于通用电子邮件客户端.
今天进入这个答案,发现XLISTGmail 现已弃用。当前的解决方案是 IMAP LIST Extension for Special-Use Mailboxes,Gmail 支持该解决方案。
我的希伯来语邮箱的列表输出示例:
'(\\Noselect \\HasChildren) "/" "[Gmail]"',
'(\\HasNoChildren \\Trash) "/" "[Gmail]/&BdAF6QXkBdQ-"',
'(\\HasNoChildren \\Sent) "/" "[Gmail]/&BdMF1QXQBeg- &BdkF1QXmBdA-"',
'(\\HasNoChildren \\Important) "/" "[Gmail]/&BdcF6QXVBdE-"',
'(\\HasNoChildren \\Drafts) "/" "[Gmail]/&BdgF2QXVBdgF1QXq-"',
'(\\HasNoChildren \\All) "/" "[Gmail]/&BdsF3A- &BdQF0wXVBdAF6A-"',
'(\\HasNoChildren \\Flagged) "/" "[Gmail]/&Bd4F4QXVBd4F3w- &BdEF2wXVBdsF0Q-"',
'(\\HasNoChildren \\Junk) "/" "[Gmail]/&BeEF5AXQBd0-"',
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6437 次 |
| 最近记录: |