XMPPFramework - Как я могу получить список друзей онлайн и офлайн?

Как я могу получить список друзей онлайн и офлайн, используя XMPPFramework в iOS?

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

Спасибо.


person Community    schedule 02.07.2014    source источник
comment
Ваше требование примерно такое: вы хотите показать всех офлайн- и онлайн-пользователей отдельно, и если кто-то переходит в онлайн/офлайн, это нужно отразить.r8?   -  person Suhail kalathil    schedule 02.07.2014
comment
если вы хотите ответ, дайте мне знать подробности.   -  person Suhail kalathil    schedule 02.07.2014
comment
да я хочу такую ​​штуку...   -  person    schedule 02.07.2014
comment
Пример кода для получения списка можно найти в примере приложения для iPhone в XMPPFramework: XMPPFramework/Xcode/iPhoneXMPP/Classes/RootViewController.m   -  person Keith OYS    schedule 14.07.2014
comment
@KeithOYS, можешь обновить ссылку?   -  person Vatsal Shukla    schedule 20.03.2018
comment
@Vats Вот, пожалуйста: Robbiehanson / XMPPFramework / Xcode/Примеры/iPhoneXMPP/Классы/RootViewController.m   -  person Keith OYS    schedule 21.03.2018
comment
@KeithOYS Спасибо.   -  person Vatsal Shukla    schedule 21.03.2018


Ответы (1)


Используя эти методы, вы будете получать уведомления о том, что пользователь переходит в режим онлайн/офлайн, добавляется, удаляется, обновляется и т. д. Используя эти методы, вы можете обновить свой список контактов.

- (void)xmppRoster:(XMPPRosterMemoryStorage *)sender didAddUser:(XMPPUserMemoryStorageObject *)user

- (void)xmppRoster:(XMPPRosterMemoryStorage *)sender didUpdateUser:(XMPPUserMemoryStorageObject *)user

- (void)xmppRoster:(XMPPRosterMemoryStorage *)sender didRemoveUser:(XMPPUserMemoryStorageObject *)user

- (void)xmppRoster:(XMPPRosterMemoryStorage *)sender
    didAddResource:(XMPPResourceMemoryStorageObject *)resource
          withUser:(XMPPUserMemoryStorageObject *)user

- (void)xmppRoster:(XMPPRosterMemoryStorage *)sender
 didUpdateResource:(XMPPResourceMemoryStorageObject *)resource
          withUser:(XMPPUserMemoryStorageObject *)user

- (void)xmppRoster:(XMPPRosterMemoryStorage *)sender
 didRemoveResource:(XMPPResourceMemoryStorageObject *)resource
          withUser:(XMPPUserMemoryStorageObject *)user

// Чтобы добавить друга

- (void)addContactWithUserName:(NSString *)userName andNickName:(NSString *)nickName;
{
    if(userName)
    {
        XMPPJID *jid = [XMPPJID jidWithString:[NSString stringWithFormat:@"%@@%@",userName,self.hostName]];
        if(nickName)
        {
            [_xmppRoster addUser:jid withNickname:nickName];
        }
        else
        {
            [_xmppRoster addUser:jid withNickname:nil];
        }
    }
else
{
    NSLog(@"missing userName");
}
}
person Suhail kalathil    schedule 02.07.2014
comment
Спасибо за повтор ... Но из того метода, который вы указали, я должен вызвать метод addcontactwithusername - person ; 02.07.2014
comment
Можешь подробно объяснить - person Suhail kalathil; 02.07.2014
comment
Я искал в Google, что мы должны вызвать метод didReceivePresence, чтобы получить присутствие нашего друга. это правда? - person ; 02.07.2014
comment
Множество способов, которыми мы можем реализовать XMPP. Я думаю, что это тоже верно. - person Suhail kalathil; 02.07.2014
comment
Это означает, что я должен вызвать метод addContactWithUserName из didReceivePresence. Это? - person ; 02.07.2014
comment
Вы делали какую-либо передачу файлов с помощью XMPPFramework? что лучше из XEP-0065, XEP-0096. Любой пример кода для передачи файлов. Если мой Jabber-сервер 54.186.107.171. - person ; 02.07.2014
comment
Нет, тоже ищу - person Suhail kalathil; 02.07.2014
comment
Привет сухаил. Я хочу, чтобы мой список всех друзей, когда мое приложение запускается, как я могу это сделать? - person ; 03.07.2014