Ejemplo n.º 1
0
class Chatter(object):
    def __init__(self, topic='chatter', port=9000):
        method = 'bind'
        self.port = port
        endpoint = 'tcp://0.0.0.0:%s' % port
        e = ZmqEndpoint(method, endpoint)
        self.pub_socket = ZmqPubConnection(zf, e)

    def get_port():
        return self.port

    def pub(msg):
        self.pub_socket.publish(msg)
Ejemplo n.º 2
0
class ZmqPlugin(BasePlugin):

    """
    Zero Messaging Queue (ZMQ/0MQ) plugin.
    """

    default_config = {
        "enabled": False,
        "pub_endpoint": "tcp://*:9901",
        "sub_endpoint": "tcp://*:9901"
    }


    def setup(self, cfg):

        BasePlugin.setup(self, cfg)
        
        self.factory = MZMQFactory(plugin=self)
        self.factory.plugin = self

        self.pub_endpoint_uri = cfg.get("pub_endpoint", "tcp://*:9901")
        self.pub_endpoint = ZmqEndpoint("bind", self.pub_endpoint_uri)
        self.sub_endpoint_uri = cfg.get("sub_endpoint", "tcp://*:9901")
        self.sub_endpoint = ZmqEndpoint("connect", self.sub_endpoint_uri)
        self.pub = ZmqPubConnection(self.factory, self.pub_endpoint)
        self.sub = ZmqSubConnection(self.factory, self.sub_endpoint)
        self.sub.subscribe("")
        self.sub.gotMessage = self.on_message

        self.subscribe(self.process_event)


    def process_event(self, tags, detail):

        detail_json = str(json.dumps(detail))

        self.pub.publish(detail_json, str(" ".join(tags)))


    def on_message(self, detail, tags):

        self.logger.debug("ZMQ: [%s] %s" % (tags, detail))
Ejemplo n.º 3
0
class ZmqPlugin(BasePlugin):
    """
    Zero Messaging Queue (ZMQ/0MQ) plugin.
    """

    default_config = {
        "enabled": False,
        "pub_endpoint": "tcp://*:9901",
        "sub_endpoint": "tcp://*:9901"
    }

    def setup(self, cfg):

        BasePlugin.setup(self, cfg)

        self.factory = MZMQFactory(plugin=self)
        self.factory.plugin = self

        self.pub_endpoint_uri = cfg.get("pub_endpoint", "tcp://*:9901")
        self.pub_endpoint = ZmqEndpoint("bind", self.pub_endpoint_uri)
        self.sub_endpoint_uri = cfg.get("sub_endpoint", "tcp://*:9901")
        self.sub_endpoint = ZmqEndpoint("connect", self.sub_endpoint_uri)
        self.pub = ZmqPubConnection(self.factory, self.pub_endpoint)
        self.sub = ZmqSubConnection(self.factory, self.sub_endpoint)
        self.sub.subscribe("")
        self.sub.gotMessage = self.on_message

        self.subscribe(self.process_event)

    def process_event(self, tags, detail):

        detail_json = str(json.dumps(detail))

        self.pub.publish(detail_json, str(" ".join(tags)))

    def on_message(self, detail, tags):

        self.logger.debug("ZMQ: [%s] %s" % (tags, detail))
Ejemplo n.º 4
0
import json
import pprint
import sys

from twisted.internet import reactor, defer
from txZMQ import ZmqEndpoint, ZmqFactory, ZmqPubConnection, ZmqSubConnection

zf = ZmqFactory()
pe = ZmqEndpoint("bind", "tcp://*:9901")
se = ZmqEndpoint("connect", "tcp://10.0.2.40:9901")
pc = ZmqPubConnection(zf, pe)
sc = ZmqSubConnection(zf, se)
sc.subscribe("")  # ("scheduler.scheduler001.new_interval")

pc.publish("F*****G WORK")
sys.exit(0)


def matches(tags, query):

    if query is None: query = list()

    tags = set(tags.split(" "))
    query = set(query)

    return query.issubset(tags)


def on_message(detail, tags):
Ejemplo n.º 5
0
import json
import pprint
import sys

from twisted.internet import reactor, defer
from txZMQ import ZmqEndpoint, ZmqFactory, ZmqPubConnection, ZmqSubConnection

zf = ZmqFactory()
pe = ZmqEndpoint("bind", "tcp://*:9901")
se = ZmqEndpoint("connect", "tcp://10.0.2.40:9901")
pc = ZmqPubConnection(zf, pe)
sc = ZmqSubConnection(zf, se)
sc.subscribe("") # ("scheduler.scheduler001.new_interval")


pc.publish("F*****G WORK")
sys.exit(0)


def matches(tags, query):

    if query is None: query = list()

    tags = set(tags.split(" "))
    query = set(query)

    return query.issubset(tags)


def on_message(detail, tags):