From e6909c77b41db0075cd6c7b4157454602aae7ccb Mon Sep 17 00:00:00 2001 From: Edi Feschiyan Date: Tue, 28 Apr 2020 12:21:58 +0300 Subject: Cleaned up geoclue --- geoclue.py | 31 ++++++++++++++----------------- 1 file changed, 14 insertions(+), 17 deletions(-) diff --git a/geoclue.py b/geoclue.py index ab4eba2..cbccf3b 100644 --- a/geoclue.py +++ b/geoclue.py @@ -1,32 +1,29 @@ -import asyncio -from random import randint from aglbaseservice import AGLBaseService +import asyncio +import os class GeoClueService(AGLBaseService): - def __init__(self, ip, port=None, api='geoclue', service='agl-service-geoclue'): - super().__init__(ip=ip, port=port, api=api, service=service) + def __init__(self, ip, port=None, api='geoclue'): + super().__init__(ip=ip, port=port, api=api, service='agl-service-geoclue') async def location(self, waitresponse=False): return await self.request('location', waitresponse=waitresponse) - # verb = 'location' - # msgid = randint(0, 999999) - # - # await self.send(f'[2,"{msgid}","{self.api}/{verb}",""]') - # return await self.receive() - async def subscribe(self, event='location'): - super().subscribe(event=event) + async def subscribe(self, event='location', waitresponse=False): + await super().subscribe(event=event, waitresponse=waitresponse) - async def unsubscribe(self, event='location'): - super().unsubscribe(event=event) + async def unsubscribe(self, event='location', waitresponse=False): + await super().unsubscribe(event=event, waitresponse=waitresponse) async def main(loop): - GCS = await GeoClueService(ip='192.168.128.13') - print(await GCS.location()) - listener = loop.create_task(GCS.listener()) - await listener + addr = os.environ.get('AGL_TGT_IP', 'localhost') + GCS = await GeoClueService(ip=addr) + tasks = [] + tasks.append(loop.create_task(GCS.location())) + tasks.append(loop.create_task(GCS.listener())) + loop.run_until_complete(tasks) if __name__ == '__main__': -- cgit