我需要知道如何在QuickBlox iOS SDK中编辑现有的隐私列表。
我使用QuickBlox SDK中提供的代码段将项目添加到隐私列表中。
QBPrivacyItem *item = [[QBPrivacyItem alloc] initWithType:USER_ID valueForType:[self.connectedUserInfo.qbid integerValue] action:DENY];
if (blockPrivacyList) {
[blockPrivacyList addObject:item]; // add new user if already privacy list is there
}else{
blockPrivacyList = [[QBPrivacyList alloc] initWithName:@"public" items:@[item]]; // create new privacy list if not before created
}
isBlocked = YES;
[[QBChat instance] setPrivacyList:blockPrivacyList];
[[QBChat instance] setActivePrivacyListWithName:@"public"];
我执行上面的代码来阻止用户或拒绝用户发送消息。
现在我想取消阻止该用户,并希望从隐私列表中删除该用户。
为此我们正在执行下面的代码片段,
QBPrivacyItem *item = [[QBPrivacyItem alloc] initWithType:USER_ID valueForType:[self.connectedUserInfo.qbid integerValue] action:ALLOW];
if (blockPrivacyList) {
[blockPrivacyList addObject:item]; // add new user if already privacy list is there
}else{
blockPrivacyList = [[QBPrivacyList alloc] initWithName:@"public" items:@[item]]; // create new privacy list if not before created
}
isBlocked = NO;
[[QBChat instance] setPrivacyList:blockPrivacyList];
[[QBChat instance] setActivePrivacyListWithName:@"public"];
但是这里的另一个项目被添加到隐私列表中,而不是现有的记录修改。
任何人都可以知道我做错了什么,所以我可以重新编写稳定的代码。
我们在取消阻止用户后获得xml节以下 IQ SNT:
<iq type="set" id="BE23FB84-C3C8-47F2-94C4-B3F8A042B16C">
<query xmlns="jabber:iq:privacy">
<list name="public">
<item type="jid" value="7520742-30613@chat.quickblox.com" action="deny" order="1">
</item>
<item type="jid" value="7520742-30613@chat.quickblox.com" action="allow" order="2">
</item>
</list>
</query>
</iq>