2017-03-06 55 views
0

當前我正在進行聊天應用程序。使用iOS中的XMPP退出Groupchat/Room的特定成員/所有者

我將實施Group WhatsApp類似的聊天出口。

例如, 我是集團所有者,經過一段時間後,我將離開集團。離開集團後,集團的任何一位成員將被指定爲集團所有者。

對於我施加以下代碼:

第一取在羣聊所有成員,然後所有成員羣聊手動左但它也無法工作。

NSXMLElement *query = [NSXMLElement elementWithName:@"query" xmlns:@"http://jabber.org/protocol/muc#admin"]; 

NSXMLElement *item = [NSXMLElement elementWithName:@"item"]; 

[item addAttributeWithName:@"affiliation" stringValue:@"member"]; 

[item addAttributeWithName:@"jid" stringValue:@"jid to remove"]; 

[query addChild:item]; 

XMPPIQ *RemoveUser = [[XMPPIQ alloc] initWithType:@"set" to:[XMPPJID jidWithString:[NSString stringWithFormat:@"%@@%@",dialuser2,kSIPDomain]] elementID:@"some random id" child:query]; 

[SharedAppDelegate.xmppStream sendElement:RemoveUser]; 

所以任何人有代碼或相關信息,那麼請幫助我。

謝謝。

回答

0

我認爲你需要設置affiliationowner但不是member

作爲Xmpp Owner UsecasesXmpp Admin Usecases描述(注意的affiliation值):

  • 爲了促進用戶作爲所有者:

<iq from='[email protected]/desktop' id='owner1' to='[email protected]' type='set'> <query xmlns='http://jabber.org/protocol/muc#admin'> <item affiliation='owner' jid='[email protected]'> <reason>A worthy witch indeed!</reason> </item> </query> </iq>

  • 要撤銷會員

<iq from='[email protected]/desktop' id='member2' to='[email protected]' type='set'> <query xmlns='http://jabber.org/protocol/muc#admin'> <item affiliation='none' jid='[email protected]'> <reason>Not so worthy after all!</reason> </item> </query> </iq>

  • 要禁止用戶

<iq from='[email protected]/throne' id='ban1' to='[email protected]' type='set'> <query xmlns='http://jabber.org/protocol/muc#admin'> <item affiliation='outcast' jid='[email protected]'> <reason>Treason</reason> </item> </query> </iq>

+0

是,它的工作,如果我是該組的管理員,但如果我不聯繫了該組並希望刪除或退出小組,然後我該怎麼做? –

+0

@KaushikMovaliya您是否找到解決問題的方法?我也面臨同樣的問題。 – nikBhosale

+0

沒有@nikBhosale,還沒有 –

相關問題