diff --git a/utils/mqtt_rider/rider_location_cache.py b/utils/mqtt_rider/rider_location_cache.py index b7f59977..b07d4acc 100644 --- a/utils/mqtt_rider/rider_location_cache.py +++ b/utils/mqtt_rider/rider_location_cache.py @@ -23,27 +23,19 @@ def on_connect(client, userdata, flags, rc): #print("Connected with result code "+str(rc)) # client.subscribe("$SYS/#") -def user_data_set(userdata): - conn = redis.StrictRedis(host='localhost', port=6379, db=0) - return conn - def on_publish(client, userdata, mid): pass def on_message(client, userdata, message): - # TODO: persist redis connection - redis_conn = user_data_set(userdata) - #print("message topic=", message.topic[0:10]) + redis_conn = userdata['redis'] topic_split = message.topic.split('/') if topic_split[0] != 'rider': return; payload_split = message.payload.split(':') - #print repr(message) - rider_long = str(res['longitude']) - rider_lat = str(res['latitude']) + rider_long = str(payload_split[1]) + rider_lat = str(payload_split[0]) # set the location - redis_conn.geoadd('rider_active', rider_long, rider_lat, topic_split[1]) - + redis_conn.geoadd('loc_rider_active', rider_long, rider_lat, topic_split[1]) diff --git a/utils/mqtt_rider/rider_location_cache.pyc b/utils/mqtt_rider/rider_location_cache.pyc index a0fd917a..e8968436 100644 Binary files a/utils/mqtt_rider/rider_location_cache.pyc and b/utils/mqtt_rider/rider_location_cache.pyc differ diff --git a/utils/mqtt_rider/riderloc.py b/utils/mqtt_rider/riderloc.py index e2503f8c..2b810cca 100644 --- a/utils/mqtt_rider/riderloc.py +++ b/utils/mqtt_rider/riderloc.py @@ -1,10 +1,13 @@ import paho.mqtt.client as mqtt import rider_location_cache as rlc import ssl +import redis import logging +redis_client = redis.StrictRedis(host='localhost', port=6379, db=0) +userdata = {'redis': redis_client} -client = mqtt.Client() +client = mqtt.Client("", True, userdata) client.on_connect = rlc.on_connect # client.on_publish = on_publish client.on_message = rlc.on_message