我正在开发使用Firebase的聊天工具。但是我在执行hellban时遇到问题。我需要下一个功能: - 如果用户被封锁,他可以写邮件,他可以看到并阅读它,但其他用户不应该看到这些邮件。 我没有这个问题的正确解决方案。你有实现这个hellban功能的api吗?或者可能你可以带我一些提示?如何在Firebase聊天中实现hellban?
0
A
回答
1
这确实取决于您的要求。
如果你想所有消息由地狱禁止用户被禁止(包括邮件发送和之前禁令后),那么你应该创建用户对象的banned
布尔属性并将其设置为true
。弄清楚是否应该向另一个用户显示一条消息,然后检查是否在“on-new-message”处理程序中的违规者用户对象上设置了“禁止”标志。
如果你想为呈现标记个人信息的途径(在情况下,当你只是想给块消息用户被禁止后发送),那么你也应该设定标志另外message
对象在违规者的user
对象上设置标志。在写出新消息之前,请检查消息的撰写者是否被禁止,并且如果她将消息上的banned
标志设置为true。在您的“新消息”处理程序中,检查banned
标志在显示给用户之前是否已设置。
在这两种情况下,您都应该检查消息中的userId,以查看“on-new-message”并显示它,无论banned
状态是否由登录用户写入。
一些例子来引导您完成(在JavaScript):
/* ref is on messages collection */
//Retrieval
ref.on("child_added", function(snapshot, prevChildKey) {
var newMessage = snapshot.val();
if(newMessage.userId == user.id || !newMessage.banned) {
/* Display Message */
}
});
//Posting
var newMessage = {
userId = user.id
...
}
if(user.banned){
newMessage.banned = true;
}
ref.push(newMessage)
相关问题
- 1. 如何在使用Firebase的ios中实现私人聊天
- 2. 在Rails中实现聊天
- 3. 如何在deepstream.io上实现聊天?
- 4. 钛聊天实现
- 5. 聊天实现Android
- 6. 如何实现聊天客户端
- 7. 如何实现Facebook聊天窗口?
- 8. 如何实现聊天情绪?
- 9. 你会如何去django实现聊天?
- 10. Facebook聊天头如何实现?
- 11. 如何实现HTML5音频聊天
- 12. 通常如何实现聊天?
- 13. Android的Firebase聊天
- 14. 如何在iPhone中使用XMPP框架实现实时聊天?
- 15. 如何在ios中实现实时聊天
- 16. 在android中实现聊天功能
- 17. 在iPhone中实现语音聊天?
- 18. 在应用程序中实现聊天?
- 19. 在聊天中实现Peterson的算法
- 20. 在SharePoint中实现聊天功能
- 21. Android在ListView中实现聊天泡泡
- 22. 在ASP.NET中实现语音聊天
- 23. 实现聊天机器人
- 24. 实现WP7聊天风格
- 25. 聊天实现卷曲
- 26. 聊天系统实现
- 27. 实现AJAX聊天网站
- 28. 实现发送文件在facebook聊天像facebook聊天
- 29. 如何在java中实现在线聊天
- 30. Boost :: Asio聊天示例程序---如何实现私聊