凤凰频道客户状态如何处理
How to handle clients status in Phoenix Channel
我刚刚关注了 Phoenix Channel 和 Presence 官方网站上的文档。正如描述的那样,一切正常。
作为频道文档,它有加入回调,所以我可以在客户端加入特定主题时处理一些事情。但是为什么没有休假回调我认为应该存在的东西?
我用谷歌搜索了一下,发现我可以使用 Presence 来跟踪客户端状态。它也有效,但实际上我不需要将其告知客户。如果我试图在 Channel 的 handle_out 回调中捕获 presence_diff 事件,它会被调用多次作为客户端数量。
正如 Presence 文档所说...
In case you want to use only a subset of the functionality provided by
Phoenix.Presence, such as tracking processes but without broadcasting
updates, we recommend that you look at the Phoenix.Tracker
functionality from the phoenix_pubsub project
但是,Phoenix.Tracker 最初要求:pubsub_server 属性。
又是我的问题。
- 为什么Phoenix.Channel没有实现类似离开的回调。
- 如何处理特定主题的客户端状态(join/leave)。
提前致谢。
当客户离开频道时,您会收到消息。
来自 https://hexdocs.pm/phoenix/Phoenix.Channel.html#module-terminate
的文档
这还不够吗?
我刚刚关注了 Phoenix Channel 和 Presence 官方网站上的文档。正如描述的那样,一切正常。
作为频道文档,它有加入回调,所以我可以在客户端加入特定主题时处理一些事情。但是为什么没有休假回调我认为应该存在的东西?
我用谷歌搜索了一下,发现我可以使用 Presence 来跟踪客户端状态。它也有效,但实际上我不需要将其告知客户。如果我试图在 Channel 的 handle_out 回调中捕获 presence_diff 事件,它会被调用多次作为客户端数量。
正如 Presence 文档所说...
In case you want to use only a subset of the functionality provided by Phoenix.Presence, such as tracking processes but without broadcasting updates, we recommend that you look at the Phoenix.Tracker functionality from the phoenix_pubsub project
但是,Phoenix.Tracker 最初要求:pubsub_server 属性。
又是我的问题。
- 为什么Phoenix.Channel没有实现类似离开的回调。
- 如何处理特定主题的客户端状态(join/leave)。
提前致谢。
当客户离开频道时,您会收到消息。
来自 https://hexdocs.pm/phoenix/Phoenix.Channel.html#module-terminate
的文档这还不够吗?