Instant Messenger API

时间:2011-05-25 18:47:12

标签: objective-c cocoa macos instant-messaging

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

BARE BONES。

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

这有API吗?对于AIM还是Skype?

示例将被赞赏,并且记住,我是Obj-C的新手。

4 个答案:

答案 0 :(得分:3)

我不知道简单裸骨,但Adium是一个用Cocoa编写的OS X的开源IM客户端。< / p>

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

答案 1 :(得分: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上查看示例,但我认为我会将该示例代码用于满足您的胃口。享受!

答案 2 :(得分:1)

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

答案 3 :(得分:0)

如果是小规模部署,使用分布式对象自行滚动将非常容易。我听说尝试将DO用于高流量的互联网服务可能会有问题。