def learn_from_teacher_node(self, *args, **kwargs): teacher = self.current_teacher_node(cycle=False) new_nodes = super().learn_from_teacher_node(*args, **kwargs) hey_joe.send({teacher.checksum_address: Moe.MonitoringTracker.abridged_node_details(teacher)}, "nodes") new_teacher = self.current_teacher_node(cycle=False) hey_joe.send({"current_teacher": new_teacher.checksum_address}, "teachers") return new_nodes
def remember_node(self, *args, **kwargs): new_node_or_none = super().remember_node(*args, **kwargs) if new_node_or_none: hey_joe.send( {new_node_or_none.checksum_address: Moe.MonitoringTracker.abridged_node_details(new_node_or_none)}, "nodes") return new_node_or_none
def save_chat_message(*args, **kwargs): """ kwargs will always include: 'data': # will always be exactly what your client sent on the socket # in this case... {u'message': u'hi', u'sender': u'anonymous', u'channel': u'homepage'}, 'dispatcher': # the dispatcher that will allow for broadcasting a response <hendrix.contrib.concurrency.messaging.MessageDispatcher object at 0x10ddb1c10>, """ data = kwargs.get('data') if data.get('message') and data.get('channel'): cm = ChatMessage.objects.create( sender=data.get('sender'), content=data.get('message'), channel=data.get('channel') ) t = loader.get_template('message.html') # now send broadcast a message back to anyone listening on the channel hey_joe.send({'html': t.render({'message': cm})}, cm.channel)
def record_fleet_state(self, *args, **kwargs): new_state_or_none = super(MonitoringTracker, self).record_fleet_state(*args, **kwargs) if new_state_or_none: checksum, new_state = new_state_or_none hey_joe.send({checksum: self.abridged_state_details(new_state)}, "states") return new_state_or_none
def my_long_thing(): for i in range(5): print("another noodle on the python console") time.sleep(1) hey_joe.send(llama, topic="noodly_messages") hey_joe.broadcast("Notice to everybody: finished noodling.")
def dataReceived(self, data): hey_joe.send('noodly_messages', data)
def dataReceived(self, data): hey_joe.send('noodly_messages', data)