Пример Instant Message Framework - PullRequest
3 голосов
/ 15 октября 2010

Может кто-нибудь показать пример того, как войти в AIM, а затем отправлять и получать сообщения с помощью IMframework?

Спасибо!

Ответы [ 2 ]

1 голос
/ 19 сентября 2011

Я являюсь автором библиотеки Objective-C для мессенджера AOL. Он обеспечивает простой объектно-ориентированный подход к обмену мгновенными сообщениями. В прошлом люди использовали его для разработки приложений для обмена мгновенными сообщениями для iOS и даже добавляли в него поддержку таких вещей, как Off-The-Record . Вы можете проверить это на github , скачать исходный код и добавить исходный код в свое приложение, скопировав их вручную. Когда у вас есть код в вашем проекте, вы можете войти в систему следующим образом:

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

После того, как вы вошли в систему и получили сеанс, вы можете сделать такие вещи, как установить ваше сообщение о статусе следующим образом:

AIMBuddyStatus * newStatus = [[AIMBuddyStatus alloc] initWithMessage:@"Using LibOrange on Mac!" type:AIMBuddyStatusAvailable timeIdle:0 caps:nil];
[session.statusHandler updateStatus:newStatus];
[newStatus release];

Вы можете отправлять сообщения друзьям, как это:

AIMBlistBuddy * buddy = [[theSession.session buddyList] buddyWithUsername:buddyName];
[theSession.messageHandler sendMessage:[AIMMessage messageWithBuddy:buddy message:@"<BODY>Hello, world!</BODY>"]];

Библиотека поддерживает практически все стандартные функции, которые пользователи AIM используют ежедневно. Смотрите мой рабочий пример в MyTest.m . Обратите внимание, что он включает в себя другие функции, помимо основной функциональности, такие как обнаружение блокировки потоков и т. Д.

1 голос
/ 17 октября 2010

Я знаю, что Google использует OpenAIM в gTalk. Вы можете узнать больше на: http://dev.aol.com/aim

GMail: http://www.google.com/support/chat/bin/answer.py?hl=en&answer=61024

...