Consumers

Moksha provides a simple API for creating “consumers” of message topics.

This means that your consumer is instantiated when the MokshaHub is initially loaded, and receives each message for the specified topic through the Consumer.consume() method. The message argument will be the body of the actual message, decoded from JSON.

Creating

from moksha.api.hub import Consumer

class FeedConsumer(Consumer):
    topic = 'feeds'
    def consume(self, message):
        print message
Note:The MokshaHub currently executes each consumer in their own Thread, so be sure to employ thread-safety precausions when implementing your Consumer.

Installing

To “install” your consumer, you have to expose it on on the moksha.consumer entry-point. This can be done by updating your applications setup.py to make it look something like this:

entry_points="""

[moksha.consumer]
feedconsumer = myapplication.feedconsumer:FeedConsumer

"""

After modifying your entry-points, you’ll need to re-generate your project’s egg-info. The start-moksha script will do this for you.

$ python setup.py egg_info

Moksha will now automatically detect, instantiate, and feed your consumer.

Table Of Contents

Previous topic

Topics

Next topic

Data Streams

This Page

Quick search