【发布时间】:2013-02-02 20:11:36
【问题描述】:
我让人们使用他们的手机号码注册到我的应用程序。我可以在管理面板上看到在线人员。但除非我手动将他们添加到名册并订阅,否则他们无法互相聊天。我怎样才能做到这一点而不必手动添加它们?
【问题讨论】:
标签: iphone xmpp openfire xmppframework
我让人们使用他们的手机号码注册到我的应用程序。我可以在管理面板上看到在线人员。但除非我手动将他们添加到名册并订阅,否则他们无法互相聊天。我怎样才能做到这一点而不必手动添加它们?
【问题讨论】:
标签: iphone xmpp openfire xmppframework
安装和配置Openfire's Subscription Plugin。
这个插件可以配置为自动接受或拒绝 订阅请求。当设置为接受订阅请求时用户 将能够将某人添加到他们的名册(又名“好友列表”或 “联系人”),无需等待手动订阅 被请求的用户接受。
【讨论】:
发送好友请求:
XMPPJID *newBuddy = [XMPPJID jidWithString:@"Buddyname"];
[xmppRoster addUser:newBuddy withNickname:nil];
接受请求:
- (void)xmppStream:(XMPPStream *)sender didReceivePresence:(XMPPPresence *)presence{
if ([presenceType isEqualToString:@"subscribe"]) {
[xmppRoster acceptPresenceSubscriptionRequestFrom:presence.from andAddToRoster:YES];
}
【讨论】: