Add Friend code
Initialize xmppStream
_ XmppStream = [[XMPPStreamalloc] init];
// [_ XmppStream setEnableBackgroundingOnSocket: YES];
[_ XmppStreamaddDelegate: selfdelegateQueue: dispatch_get_main_queue ()];
//
_ XmppRosterDataStorage = [[XMPPRosterCoreDataStoragealloc] init];
_ XmppRoster = [[XMPPRosteralloc] initWithRosterStorage: _ xmppRosterDataStorage];
// _ XmppRoster. autoFetchRoster = YES;
// _ XmppRoster. autoAcceptKnownPresenceSubscriptionRequests = YES;
//}
[_ XmppRosteractivate: _ xmppStream];
[_ XmppRosteraddDelegate: selfdelegateQueue: dispatch_get_main_queue ()];
// Add a friend
XMPPJID * frendJID = [XMPPJID jidWithString: strFriendJID];
[_ XmppRoster addUser: frendJID withNickname: nick];
// After the message is added, the friend receives the message and agrees to the following callback:
// Receives the friend status
-(Void) xmppStream :( XMPPStream *) sender didReceivePresence :( XMPPPresence *) presence
{
// NSLog (@ "presence = % @", presence );
// Obtain the friend status. subscribed: The unsubscribed request is rejected by verifying the friend's day.
NSString * presenceType = [presence type]; // online/offline
// Current user
NSString * userId = [[sender myJID] user];
// Online user
NSString * presenceFromUser = [[presence from] user];
If (! [PresenceFromUser isinclutostring: userId])
{
// Online status
If ([presenceType isw.tostring: @ "available"])
{
}
Else if ([presenceType isEqualToString: @ "unavailable"]) // offline
{
}
//
}
}