def publish_to_nsq(self, payload, topic=None): """Push message (topic, payload) to nsq server. :param str topic: Topic name :param str payload: Message body """ topic = topic or NsqTopic.NSQ_INBOX_TOPIC callback = functools.partial( self.publish_callback, topic=topic, msg=payload) nsq_producer.pub(topic, payload, callback)
def publish_callback(self, conn, data, topic, msg): if isinstance(data, Error): nsq_producer.pub(topic, msg)