问题标签 [crossbar]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
127 浏览

python-2.7 - 在 Python 中的 CrossbarServer 中从 Arduino 接收 UDP 数据包

我是使用 WAMP 协议和基于 WAMP 协议的 CrossbarIO 服务器的新手。问题是。我有 Arduino Uno + EthernetShield,我想将信息发送到 CrossbarServer。Arduino Uno 不支持 Autobahn 或 WAMP 或 Crossbar。我只能通过 UDP 和带有 UNO+以太网的 websocket 发送普通包。有没有办法可以从arduino读取CrossbarServer中的这个UDP数据包?

0 投票
0 回答
408 浏览

python - 用于 celery 任务监控和发布到 React 应用程序的 WAMP 组件

我有一个通过 Klein POST 并运行 Celery 异步作业的 React 应用程序(通过 RabbitMQ)。我想通过 WAMP Pub/Sub 显示某个表中的所有任务以及状态更新(我使用 Crossbar 作为路由器)。我的 React 表组件获取初始数据并订阅更改,如下所示:

我目前正在尝试让后端的 WAMP 组件(使用 AutobahnPython)在 celery 事件上发布“celery.update.task”。此应用程序将面向 Internet,因此我想使用安全 websockets (wss),因此按照教程运行 WAMP 组件。我当前的问题是用于监听 celery 事件的 WAMP 组件没有发布异步(一旦 python 进程结束,所有发布都会被发送):

上面的代码能够监控所有事件,但发布方法不会推送给订阅者,直到 python 进程结束。我希望 WAMP 组件在每个 Celery 事件(接收、启动、成功、失败)上发布到“celery.task.update”,以便表组件实时更新。

有没有办法使这项工作?我试过没有成功尝试thisthis

0 投票
0 回答
40 浏览

freebsd - 无法在 FreeBSD 10.1 上安装 crossbar.io 二进制包

我无法在 FreeBSD 10.1 上安装 crossbar.io WAMP 路由器的二进制发行版

我正在按照手册( http://crossbar.io/docs/Installation-on-FreeBSD/ )一步一步地做,但是在pkg install crossbar我得到这个输出期间:

并且什么都没有安装,只有空文件夹/opt/crossbar

难道我做错了什么?

任何输入将不胜感激。

0 投票
0 回答
592 浏览

autobahn - 握手问题

使用横杆时我遇到了一些问题。我开始运行高速公路 python 后端和高速公路 js 前端,一切似乎都很正常,直到我收到此错误:

知道为什么吗?以及如何解决?

编辑:

这是一些代码(我正在使用 WAMP),但我认为问题与代码无关,因为它已在其他网络中工作,只是现在不在我所在的网络中。无论如何:

前端:

后端:

配置文件

0 投票
0 回答
229 浏览

logging - 如何让基于 Twisted 记录器的应用程序与 Crossbar 配合得很好

我正在将 WAMP 用于一个应用程序,其中大部分应用程序逻辑被划分为使用 Crossbar WAMP 代理(OSX 10.11.6 上的 Twisted 16.3.0 版本 0.15.0)连接的多个微服务。

我正在使用 Twisted 的 Logger 功能实现此应用程序的日志记录,其中我使用添加到 globalLogPublisher 的许多自定义观察者来过滤日志记录并将它们存储在数据库中。

我遇到的问题是我没有让这个应用程序记录器与也使用 Twisted Logger 框架的 Crossbar 记录器很好地协同工作。Crossbar 现在可以控制日志记录过程。例如,对于日志级别,我必须为 Crossbar 设置日志级别以进行调试,以便调试我的应用程序。我觉得这是不可取的,因为 Crossbar 本身在调试模式下非常嘈杂,因此很难从我的应用程序中发现调试消息。我可以使用命名空间和日志级别过滤,但我认为 Crossbar 作为我的应用程序中的一项服务,不应该控制日志记录过程。

我想知道是否以及如何重新获得控制权。能够为我的应用程序设置调试日志级别,而 Crossbar 自己的日志级别保持在信息级别将非常有帮助。

我的应用程序的日志记录架构概述:

  1. 该应用程序是一个 Python 包,此处称为“应用程序”
  2. 在包 __main__.py 中启动应用程序。对于记录这意味着:
    • 如此处所述添加两个自定义观察者
    • 实现为 wamplet 的应用程序微服务(如本例所示)是自举的。每个微服务都使用 Twisted logger 进行日志记录。
  3. 在 __main__.py 的最后两行中,Crossbar cli 控制器被导入(从 crossbar.controller.cli import run)并启动 Crossbar 事件循环(run())。
  4. 因此,应用程序启动为:python application start(此处的任何交叉开关 cli 参数
0 投票
0 回答
166 浏览

python - Crossbar 抛出 AttributeError:“模块”对象没有属性“make_batched_timer”

当我尝试运行交叉开关时,出现以下错误:

横杆版本:0.15.0

蟒蛇版本:2.7.10

操作系统:OSX 10.11.6

0 投票
1 回答
399 浏览

python - 如何在 autobahnPython 中从 ApplicationRunner 获取反应器

我有一个高速公路客户端,它使用高速公路上的 ApplicationRunner 类连接到 WAMP 路由器(交叉开关)。在主要部分中,它附加了我的 ApplicationSession 类“REScheduler”,如下所示:

现在我还需要应用程序运行器为其他目的启动的反应器。比如调用 some reactor.callLater(...)。我怎样才能访问这个反应堆。我在文档中没有找到任何东西。

0 投票
0 回答
480 浏览

python - 在高速公路 python 中从 ApplicationRunner 触发退出

我刚开始使用 autobahn python,我正在使用辅助ApplicationRunner类来建立基本连接。我的意图是连接一次,发出一条消息,然后退出,因为这就是我正在编写的所有脚本需要做的。我遇到的问题是,一旦启动应用程序,如何关闭应用程序似乎并不明显,我使用这里的建议来访问全局反应器并调用reactor.stop(),但我想知道是否有更好的方法。在下面查看我的脚本,欢迎所有评论。

0 投票
1 回答
471 浏览

c# - 多客户端 RPC

我有一个路由器、一个服务器和多个客户端。服务器在路由器中注册方法,客户端成功调用方法并得到结果。在某些情况下,我需要服务器向特定的客户询问一些事情。我已经有了sessionIdusing WampInvocationContext.Current.InvocationDetails,但我不知道客户端需要如何注册他们的方法,也不知道如何从服务器调用它们。

我查看了文档,但没有运气。wamp-proto 真的支持这样的事情吗?如果是这样,有任何指示吗?

0 投票
0 回答
104 浏览

node.js - 如何在运行时动态发布/订阅或调用/注册 crossbar.io 中的过程/事件?

crossbar 中有一些方法可以发布/订阅事件或调用/注册过程,但是一旦我们编写代码,它就完成了,假设我想在运行时发布/注册事件/过程,那么应该怎么做?有什么办法吗?