Sto creando un'applicazione basata su chat su QuickBlox
Framework, voglio avere una funzionalità di blocco nell'app. Ho letto alcuni documenti come XMPP e QuickBlox
. Ma non ha avuto alcun aiuto.Come bloccare un utente in QuickBlox?
C'è qualche logica per mantenere QBPrivacyList
per non consentire ad altri utenti di inviare messaggi e bloccarli ma non ci sono riuscito con esso.
Questo è uno snippet di codice su come sto mantenendo l'Elenco privacy.
ottenere l'elenco privacy con nome
@"public"
nel modo di chiacchierata ha login[[QBChat instance] retrievePrivacyListWithName:@"public"];
quindi se c'è già creato lista privacy nominato
"public"
preleverà in metodo delegato- (void)chatDidReceivePrivacyList:(QBPrivacyList *)privacyList{ NSLog(@"chatDidReceivePrivacyList: %@", privacyList); _blockPrivacyList = privacyList; // Save its instance for further add more users in list }
// risposta è
[PrivacyList name: public]items:("type: USER_ID valueForType: 2075213 action: deny"
)Ecco come aggiungere un altro membro nella lista privacy
- (void)blockUserWithQBId:(NSUInteger)qbID { QBPrivacyItem *item = [[QBPrivacyItem alloc] initWithType:USER_ID valueForType:qbID 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 [[QBChat instance] setPrivacyList:_blockPrivacyList]; }
E tutti i metodi delegato funziona perfettamente crea e aggiunge membro nella lista privacy.
- (void)chatDidSetPrivacyListWithName:(NSString *)name{ NSLog(@"chatDidSetPrivacyListWithName %@", name); [[QBChat instance] setDefaultPrivacyListWithName:name]; // set it as default privacy list }
ho questa lista privacy perfettamente anche io uccido l'applicazione o reinstallare per lo stesso utente. così il mio codice della privacy lista è perfettamente funzionante
Ma in qualche modo gli altri membri nella mia lista DENY
privacy mi può inviare il messaggio. Secondo i documenti da questo http://quickblox.com/developers/SimpleSample-chat_users-ios#Contact_list dovrebbe dare l'errore come
"error:Error Domain=com.quickblox.chat Code=503 "Service not available."
Quindi, se tutta la lista privacy funziona alla perfezione allora come fanno i miei utenti bloccati potevano inviarmi messaggi?
avevo lavorato con XMPP
nel iOS
lo stesso problema esiste anche lì se si può dare XMPP
logica che funziona anche come QuickBlox
come QuickBlox
utilizza effettivamente XMPP
stessa.
Qualche suggerimento?
Grazie Haresh, cercavo esattamente questo, mi hai salvato la giornata! :) – Hemang
Hi haresh, ho aggiunto più utenti nella lista e aggiornato. Come rimuovere il singolo utente dall'elenco e aggiornarlo. – Ajay
Dove hai aggiunto questo codice? Ho provato ad aggiungerlo dopo essermi connesso alla chat. Ma ancora non funziona. L'altro utente sta ancora ricevendo messaggi. Puoi per favore aiutarmi su questo? –