autobahn.twisted.wamp.Application可以做pub / sub吗?

时间:2014-08-15 16:29:16

标签: python twisted autobahn wamp-protocol

我想使用一些发布/子功能以及来自autobahn.twisted.wamp.Application的rpc

如果没有这样做,我宁愿不制作ApplicationSession课程。

注册的rpc方法会导致客户端订阅和发布吗? 如果他们可以,请告诉我如何。

1 个答案:

答案 0 :(得分:4)

是的,确定:

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组件远程调用),被调用者(暴露com.example.triggersubscribe的WAMP组件)将动态订阅com.example.topic1

您当然也可以在注册程序中发布:app.session.publish()

我添加了完整的示例(包括JS客户端)here