代码之家  ›  专栏  ›  技术社区  ›  FryHard

通过Windows Live Messenger跟踪邮件

  •  1
  • FryHard  · 技术社区  · 16 年前

    我想跟踪通过Windows Live Messenger发送和接收的邮件。然后我想将这些消息整理到数据库中(不在这个问题的范围内)。

    问题是我应该如何以及在哪里跟踪这些消息。这是强制所有客户机保存历史文件并读取这些文件的最简单方法,但它并不是我要寻找的真正解决方案。有没有办法从运行在同一个域中的服务器上跟踪它们,我在Windows Communicator中读了一点,我也看到很多人在聊天 http://dev.live.com/messenger/ 但我希望有人已经解决了这个问题。)

    我想用C.NET 3.5来做这个

    4 回复  |  直到 15 年前
        1
  •  2
  •   kareem    16 年前

    查看msnpsharp。它是一个.NET MSN库。它非常强大,允许您从多个位置登录。因此,您可以登录并收听给定帐户上发生的其他对话。 使用起来非常直接。下载完整的源代码,有一个示例应用程序详细演示了它的用法。

    http://code.google.com/p/msnp-sharp/

        2
  •  1
  •   Patrick Desjardins    16 年前

    这里有两个可行的想法。

    第一个是最简单的,但是如果用户不想被记录,他可以很容易地避免。会用到的 MSN Plus 在MSN上。有了MSN Plus,您就有了一个API,可以从任何聊天窗口获取所有消息…还有更多。当然,如果用户不是你,用户只需卸载msn plus,你的程序就不会记录任何数据。

    第二个想法是,如果你有一个网络,你需要检查所有的MSN对话。如果你使用 WireShark 你可以看到对话没有被加密(上次我做的时候),你可以检查端口和协议来简单地从网络中获取数据。

    希望它能给你一个你需要的方法。

        3
  •  0
  •   Robert MacLean    16 年前

    只是两个想法
    1。首先,标准的msn协议是纯文本(据我所知),这样您就可以截获防火墙上的消息,然后将它们放入数据库,并在那里进行关联。
    2。如果这是一个组织,你可以使用Office Communicator,它是msn的“公司”版本,并且已经内置了该功能。然后,您可以通过他们的SDK进入并获取相关数据。

        4
  •  0
  •   FryHard    15 年前

    我设法找到了两种方法来做到这一点,尽管这两种方法都不是真正的程序化解决方案,因此可能无法吸引这些听众。

    1. 利用Jabber网关在Jabber客户端和其他IM网络之间建立转发。通过Jabber服务器在启用Jabber的客户机和Jabber服务器之间流动。然后Jabber服务器将其转换为目标网络协议并转发消息。同样,来自外部IM网络的消息也由Jabber服务器路由和翻译。例如psi<->IceWarp Merak<->MSN

    2. 利用 Symantec IM Manager 从网络上的消息客户端截取消息。您需要使用主机文件或本地DNS规则来说服本地PC相信messenger.hotmail.com实际上位于192.168.0.59,而不是Microsoft。

    希望它能帮助其他想做同样事情的人。