服务器: Pusher gem(rails)客户端: Pusher Swift
如何使用Pusher gem检测客户端是离线(应用在后台)还是恢复在线(应用在前台)?
我想要实现的是发送APN到客户端,当客户端进入后台而不查询客户端在线标志(S)。
有可能做到这一点吗?如果消息被客户端收到,有没有办法检查事件触发器的状态?
谢谢
发布于 2017-07-14 18:59:32
有几种方法可以实现你想要做的事情。
如果您为每个客户端使用单个通道,则可以使用here中描述的channel_existence webhooks。由于每个通道都限制为单个用户,因此无论客户端何时离线,您都将收到一个channel_vacated webhook,而当您的客户端恢复在线时,您将收到一个channel_occupied webhook。
如果您没有为每个客户端使用单个通道,则可以使用presence channels和webhooks。您可以在用户每次加入/离开频道时配置member_added/member_removed webhook。与此相关的还有额外的消息开销,因为通道中的每个用户还将通过websocket连接接收member_added/member_removed webhook。
https://stackoverflow.com/questions/45082899
复制相似问题