有谁知道是否可以通过 imap 或 pop 访问 facebook 消息来管理电子邮件客户端中的 facebook 消息?
2 回答
本文提出了一种读取和存储 facebook 消息的方法:
该过程通过以下步骤完成:
登录:登录可能是比较棘手的部分之一。登录 IMAP 服务器的方式是使用以下命令:
登录用户名密码
列出文件夹:您向 IMAP 服务器发出的命令是:
LIST "" *
由于我们从邮箱文件夹 API 描述中知道,只有三个文件夹。这些文件夹是:
Inbox (folder_id 0) Outbox (folder_id 1) Updates (folder_id 4)
考虑到这一点,我们可以对 list 命令的以下响应进行硬编码:
LIST (\HasChildren) "/" Inbox LIST (\HasChildren) "/" Outbox LIST (\HasChildren) "/" Updates
选择文件夹:在 IMAP 中,使用以下命令选择文件夹:
SELECT folder-name
获取消息内容:通过 IMAP 获取消息的关键是一个名为 FETCH 的命令。FETCH 命令带有许多不同的模式,但我们将专注于最基本的模式。这些是(AFAIK)标志、RFC822、RFC822.HEADER、RFC822.TEXT、RFC822.SIZE 和 UID。由于 RFC822 只是 RFC822.HEADER 和 RFC822.TEXT 的组合,我们需要担心的变量少了一个。
FETCH UID让我们从 UID 开始,因为这是最简单的。您将按如下方式发出此命令:
FETCH 1:6 (UID)
预期的结果将如下所示:
1 FETCH (UID 1029955483) 2 FETCH (UID 1029955484) 3 FETCH (UID 1029955485) 4 FETCH (UID 1029955486) 5 FETCH (UID 1029955487) 6 FETCH (UID 1029955488)
Facebook 的 API 中的等效命令是这样的(我不确定是否可以组合这样的查询,但你明白了):
SELECT message_id FROM message WHERE thread_id IN (SELECT thread_id FROM thread WHERE folder_id = 0)
然后,您将使用该输出作为 UID。
更多操作可在http://www.emailserviceguide.com/2010/01/making-facebooks-messaging-system-imap-compatible/