Autobahn.twisted.wamp.应用程序是否可以发布/订阅?

Can autobahn.twisted.wamp.Application do pub/sub?(Autobahn.twisted.wamp.应用程序是否可以发布/订阅?)

本文介绍了Autobahn.twisted.wamp.应用程序是否可以发布/订阅?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想使用一些发布/订阅功能以及来自aubahn.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组件远程调用)时,被调用者(暴露com.example.triggersubscribe的WAMP组件)将动态订阅com.example.topic1

当然,您也可以从注册过程中发布:app.session.publish()

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

这篇关于Autobahn.twisted.wamp.应用程序是否可以发布/订阅?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:Autobahn.twisted.wamp.应用程序是否可以发布/订阅?

基础教程推荐