Remove client from commander object.

This commit is contained in:
DSTO\pivatom
2018-12-19 16:29:57 +10:30
parent e126efa61f
commit 3387a54133

View File

@@ -7,14 +7,14 @@ class Commander:
def __init__(self, timeout = 60): def __init__(self, timeout = 60):
self.timeout = timeout self.timeout = timeout
self._votes = [] self._votes = []
self._client = ms.Client() ms.Client()
def on_message(client, userdata, message): def on_message(client, userdata, message):
self._votes.append(umsgpack.unpackb(message.payload)) self._votes.append(umsgpack.unpackb(message.payload))
self.add_subscription("FakeSwarm/FirstTest", on_message) ms.client.subscribe("FakeSwarm/FirstTest", on_message)
self._client.loop_start() ms.client.loop_start()
def make_decision(self): def make_decision(self):
votes = self._votes votes = self._votes
@@ -22,15 +22,14 @@ class Commander:
for vote in votes: for vote in votes:
continue continue
def get_votes(self, topic, message, qos=0): def get_votes(self, topic, message, qos=0):
# Publish a message that votes are needed. # Publish a message that votes are needed.
ms.client.publish(topic, message, qos) ms.client.publish(topic, message, qos)
time.sleep(self.timeout) time.sleep(self.timeout)
make_decision() self.make_decision()
def add_subscription(self, topic, callback=None, qos=0): def add_subscription(self, topic, callback=None, qos=0):
self._client.subscribe(topic) ms.client.subscribe(topic)
if callback is not None: if callback is not None:
self._client.message_callback_add(topic, callback) ms.client.message_callback_add(topic, callback)