如何使用Pusher API进行双向通信



在查看Pusher Servcer及其客户端/服务器API时,我在试图弄清楚Pusher如何帮助我允许设备/应用程序之间的双向通信时遇到了一些问题。

我在现场有多个较小的设备/应用程序,它们应该将状态返回到服务器或另一个客户端,后者充当浏览所有这些设备和监控状态等的仪表板。

据我所知,这可以使用传统的WebSockets和一个云服务器来完成,在它们之间管理这些客户端之间的所有连接——我认为Pusher会是这样。

但在阅读了这些文档之后,我并没有真正看到双向数据通信的概念。原因如下:

  1. 要将数据推送到客户端,我必须使用其中一个推送服务器库

  2. 要接收该数据,我必须使用Pusher客户端库之一

然而,这个概念并不符合我的需要。我想:

  1. 向客户端广播
  2. 客户端可以直接向客户端发送数据(服务器充当网关/路由)
  3. 客户端可以将数据发送到服务器
  4. 服务器可以向唯一的客户端发送/响应

当读到Pusher时,他们说:"双向通信",我现在看不到。那么如何实现广告中的双向通信呢?

Pusher只执行PubSub。使用它,您可以模拟双向通信:对话的双方都需要有一个专门用于对话的主题,然后发布到这个主题。

这并不理想。对于可能更接近您想要的内容,请查看WAMP(Web应用程序消息传递协议),它不仅仅具有PubSub。上有一个实现列表http://wamp-proto.org/implementations.对于路由器,我推荐Crossbar.io(http://crossbar.io),其中包含最多可帮助您入门的文档。全面披露:我参与了WAMP和Crossbar.io,但这都是开源的,可能正是你所需要的。

相关内容

  • 没有找到相关文章

最新更新