我想使用一些发布/订阅功能以及来自 autobahn.twisted.wamp.Application 的 rpc
如果我可以不这样做,我宁愿不创建 ApplicationSession 类。
注册的 rpc 方法会导致客户端订阅和发布吗?如果他们可以,请告诉我如何。
我想使用一些发布/订阅功能以及来自 autobahn.twisted.wamp.Application 的 rpc
如果我可以不这样做,我宁愿不创建 ApplicationSession 类。
注册的 rpc 方法会导致客户端订阅和发布吗?如果他们可以,请告诉我如何。
是的,当然:
def onEvent(msg):
print("got event: {}".format(msg))
@app.register('com.example.triggersubscribe')
def triggerSubscribe():
yield app.session.subscribe(onEvent, 'com.example.topic1')
当triggerSubscribe
被调用时(例如从另一个 WAMP 组件远程调用),被调用者(暴露的 WAMP 组件com.example.triggersubscribe
)将动态订阅com.example.topic1
.
当然,您也可以从注册程序中发布:app.session.publish()
.
我在这里添加了完整的示例(包括 JS 客户端) 。