【问题标题】:Instant Messenger API即时通讯 API
【发布时间】:2011-06-09 23:38:23
【问题描述】:

我只需要一个可以向单个用户发送和接收即时消息的简单 Objective-C 应用或 API。

裸露的骨头。

我看过 Skype,但 Objective-C 部分看起来确实过时了。 AIM 是首选,但任何可以发送和接收 IM 的东西都是完美的。

有这方面的 API 吗?对于 AIM 或 Skype?

示例将不胜感激,请记住,我对 Obj-C 完全陌生。

【问题讨论】:

  • 你是什么意思,你想要一个应用一个API?你在写一个 IM 客户端吗?这不是寻求第三方应用推荐的地方。
  • 不,我不想要“应用程序”。我想找到一个框架或示例代码来让我创建一个 IM 客户端。虽然很简单。发送和接收消息。
  • 您想要示例代码或源代码开放的应用程序,然后?您能否编辑您的问题以澄清这一点?

标签: objective-c cocoa macos instant-messaging


【解决方案1】:

我不知道 simplebare bone,但 Adium 是一个用 Cocoa 编写的适用于 OS X 的优秀开源 IM 客户端。

UDPATE:您可能想查看this blog post(“迈向 Cocoa 的开源 XMPP 框架”)。看来作者也想要自己的 Jabber/XMPP Cocoa 框架,甚至创建了a project for it in Google Code

【讨论】:

【解决方案2】:

我目前正在研究 OSCAR (AIM) 协议的 Objective-C 实现。它正在 GitHub 上更新。如果我理解你想要做的正确,图书馆虽然不完整,但会满足你的需要。它可以发送和接收消息,并处理状态消息。如果您对此感兴趣,它还可以读取好友列表。整个库应该在月底前完成,你可以在 GitHub 上查看:

https://github.com/unixpickle/LibOrange

登录就是这么简单:

 login = [[AIMLogin alloc] initWithUsername:username password:password];
 [login setDelegate:self];
 if (![login beginAuthorization]) {
     NSLog(@"Failed to start authenticating.");
     abort();
 }

登录后,发送消息的工作方式如下:

 AIMMessage * reply = [AIMMessage messageWithBuddy:[message buddy] message:@"Test"];
 [theSession.messageHandler sendMessage:reply];

显然,您可以查看 GitHub 上的示例,但我想我会放那个示例代码来满足您的胃口。享受吧!

【讨论】:

    【解决方案3】:

    我不知道它到底有多难使用,但是没有一个名为 libPurple 的用于访问 IM 的开源库吗?也许你应该检查一下,看看它在 Xcode 中能做什么。

    【讨论】:

      【解决方案4】:

      如果是针对小规模部署,使用分布式对象很容易实现自己的部署。不过,我听说尝试将 DO 用于高流量 Internet 服务可能会出现问题。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-05-17
        • 1970-01-01
        相关资源
        最近更新 更多