0
我的代码非常依赖用户是否在线。用ActionCable保持用户“在线”
目前我设置ActionCable这样的:
class DriverRequestsChannel < ApplicationCable::Channel
def subscribed
stream_from "requests_#{current_user.id}"
end
def unsubscribed
current_user.unavailable! if current_user.available?
end
end
现在我会非常喜欢的覆盖是用户的,而不是刚进入脱机只是关闭浏览器的情况。但是,取消订阅的问题在于它进行页面刷新。所以每次刷新页面时都会触发unsubscribed
。因此即使他们认为他们可用,他们也会被视为不可用。
现在关键是可用不是默认的,所以我可以放回去,这是用户选择接收请求的东西。
有没有人有处理这种情况的最佳方法的经验?