2014-09-10 5 views
0

mycchat 응용 프로그램에 openfirexmpp 프레임 워크를 사용하고 있습니다. 나는 새로운 멤버를 추가 openfire 서버에 회원 추가

XMPPJID *newBuddy = [XMPPJID jidWithString:@"[email protected]"]; 
[self.xmppRoster addUser:newBuddy withNickname:@"user1"]; 

를 사용하고 있지만, 신규 회원은 server에 추가되지 않습니다. setupStream 방법 코드에서 :

xmppRosterStorage = [[XMPPRosterCoreDataStorage alloc] init]; 
xmppRosterStorage = [[XMPPRosterCoreDataStorage alloc] initWithInMemoryStore]; 

xmppRoster = [[XMPPRoster alloc] initWithRosterStorage:xmppRosterStorage]; 
xmppRoster = [[XMPPRoster alloc] initWithRosterStorage:xmppRosterStorage 
               dispatchQueue:dispatch_get_main_queue()]; 
[xmppRoster addDelegate:self delegateQueue:dispatch_get_main_queue()]; 
xmppRoster.autoFetchRoster = YES; 
xmppRoster.autoAcceptKnownPresenceSubscriptionRequests = YES; 

어떻게 구성원을 추가 할 수 있습니까?

답변

1
@property (nonatomic, readonly) XMPPStream *xmppStream;  
@property (nonatomic, readonly) XMPPRoster *xmppRoster; 
@property (nonatomic, readonly) XMPPRosterMemoryStorage *xmppRosterStorage; 

setupStream 방법 설정에서 수신자가 동의 한 후 새 contact

[_xmppRoster addUser:jid withNickname:nickName]; 

을 추가하는 XMPPStreamXMPPRoaster

_xmppStream = [[XMPPStream alloc]init]; 
_xmppStream.enableBackgroundingOnSocket = YES; 
_xmppRosterStorage = [[XMPPRosterMemoryStorage alloc] init]; 
_xmppRoster = [[XMPPRoster alloc] initWithRosterStorage:_xmppRosterStorage]; 
[_xmppRoster activate:_xmppStream]; 
[_xmppRoster addDelegate:self delegateQueue:dispatch_get_main_queue()]; 

는 새 연락처가 당신의 로스터 목록에 반영됩니다

+0

질문이 있으면 알려주세요. –

+0

고맙습니다. registerWithElements 메서드를 사용하여 멤버를 추가하려면 어떻게해야합니까? –

+0

회원 추가는 새로운 사용자 등록, r8을 의미합니까? –

관련 문제