Firebase聊天应用程序 - 超时后停止输入指示符

时间:2017-12-19 23:12:52

标签: ios swift firebase firebase-realtime-database

我正在使用Firebase的Realtime DB在我正在制作的iOS应用中开发聊天功能。我已经实现了一个'打字指示器',如果用户开始输入,则在DB中将标志翻转为true。

在用户没有活动一定时间后,将此设置为假的最佳/最安全的方法是什么,约5秒?只需在每次用户开始输入时重置超时,客户端就可以轻松实现这一点。但是,如果客户端崩溃/用户在此超时之前退出该怎么办。

通过观察密钥然后在服务器上执行超时,每次将指标设置为true时,使用Firebase的云功能来运行功能会更好吗?事情开始扩大时,这听起来更安全但成本更高。

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

出于您指定的原因,将逻辑放在服务器上是一种很好的方法。

另一种替代方法是用“senderLastTypedSomething”时间戳替换指示标志。这样接收客户端可以只检查时间戳并适当地显示其指标。如果发送客户端消失,那就是“死人的开关”。