API обмена мгновенными сообщениями

Мне нужно простое приложение или API на языке Objective-C, которое может отправлять и получать мгновенные сообщения одному пользователю.

ГОЛЫЕ КОСТИ.

Я посмотрел на Skype, но часть Objective-C выглядит действительно устаревшей. AIM предпочтительнее, но все, что может отправлять и получать мгновенные сообщения, идеально.

Есть ли API для этого? Для AIM или Skype?

Буду признателен за примеры, и помните, что я совершенно новичок в Obj-C.


person objectiveccoder001    schedule 25.05.2011    source источник
comment
Что вы имеете в виду, вам нужно приложение или API? Вы пишете IM-клиент? На самом деле это не то место, где можно попросить рекомендации сторонних приложений.   -  person jscs    schedule 26.05.2011
comment
Нет, мне не нужно приложение. Я хочу найти фреймворк или пример кода, чтобы создать IM-клиент. ПРОСТОЙ однако. отправлять и получать сообщения.   -  person objectiveccoder001    schedule 26.05.2011
comment
Значит, вам нужен пример кода или приложение, исходный код которого открыт? Не могли бы вы отредактировать свой вопрос, чтобы уточнить это?   -  person jscs    schedule 26.05.2011


Ответы (4)


В настоящее время я работаю над реализацией Objective-C протокола OSCAR (AIM). Он обновляется на 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, но я решил поместить этот пример кода, чтобы подогреть ваш аппетит. Наслаждаться!

person Alex Nichol    schedule 09.06.2011

Я не знаю насчет простых или голых костей, но Adium — хороший клиент обмена мгновенными сообщениями с открытым исходным кодом для OS X, написанный на Cocoa.

ОБНОВЛЕНИЕ: вы можете проверить этот пост в блоге ("На пути к платформе XMPP с открытым исходным кодом для Cocoa"). Похоже, автор тоже хотел создать собственный фреймворк Jabber/XMPP Cocoa и даже создал для него проект. в Google Code.

person Chris Frederick    schedule 25.05.2011
comment
Я посмотрел на это. Но это слишком выше моей головы. - person objectiveccoder001; 25.05.2011
comment
code.google.com/p/xmppframework/downloads/list – Могу ли я не скачать код? Спасибо! - person objectiveccoder001; 26.05.2011
comment
Откройте вкладку Источник. Чтобы скачать все это, похоже, вам нужно клонировать репозиторий Mercurial. Вы также можете просто просмотреть исходный код. - person Chris Frederick; 26.05.2011
comment
Отлично! Спасибо! - Сейчас проверю. Я дам вам знать, если это сработает. - person objectiveccoder001; 26.05.2011

Я точно не знаю, насколько сложно это будет использовать, но нет ли библиотеки с открытым исходным кодом для доступа к мгновенным сообщениям под названием libPurple? возможно, вам следует проверить это и посмотреть, что он может сделать в Xcode.

person sj660    schedule 26.05.2011

Если это для небольшого развертывания, было бы довольно легко развернуть собственное приложение с помощью Distributed Objects. Я слышал, что может быть проблематично пытаться использовать DO для интернет-сервиса с высоким трафиком.

person Marc Charbonneau    schedule 25.05.2011