aboutsummaryrefslogtreecommitdiffstats
path: root/gps.py
diff options
context:
space:
mode:
authorEdi Feschiyan <edi.feschiyan@konsulko.com>2020-05-14 12:32:59 +0300
committerEdi Feschiyan <edi.feschiyan@konsulko.com>2020-06-09 09:29:49 +0300
commit32540833af3e633880aa365284c72950da27fece (patch)
tree7f319fad0d79ad2c7a10baccd012ed58876da7c1 /gps.py
parent219e992aa8a8e5a7db48cc9d66bb0ddbbe7c21a3 (diff)
removing waitresponse, will be using *Service.response() to get a packet. trying to figure out async generator as a service listener. WIP
Diffstat (limited to 'gps.py')
-rw-r--r--gps.py29
1 files changed, 12 insertions, 17 deletions
diff --git a/gps.py b/gps.py
index 2fd1c36..61e3153 100644
--- a/gps.py
+++ b/gps.py
@@ -13,38 +13,33 @@ class GPSService(AGLBaseService):
def __init__(self, ip, port=None):
super().__init__(api='gps', ip=ip, port=port, service='agl-service-gps')
- async def location(self, waitresponse=False):
- return await self.request('location', waitresponse=waitresponse)
+ async def location(self):
+ return await self.request('location')
- async def subscribe(self, event='location', waitresponse=False):
- return await super().subscribe(event=event, waitresponse=waitresponse)
+ async def subscribe(self, event='location'):
+ return await super().subscribe(event=event)
- async def unsubscribe(self, event='location', waitresponse=False):
- return await super().subscribe(event=event, waitresponse=waitresponse)
+ async def unsubscribe(self, event='location'):
+ return await super().subscribe(event=event)
async def main(loop):
args = GPSService.parser.parse_args()
gpss = await GPSService(args.ipaddr)
- r = await loop.run_in_executor(xc, gpss.response)
+ l = await loop.run_in_executor(xc, gpss.listener)
+ # print(await r.__anext__())
if args.loglevel:
- GPSService.logger.setLevel(args.loglevel)
+ gpss.logger.setLevel(args.loglevel)
if args.location:
- await gpss.location()
- async for response in r:
- await gpss.location()
- print(await r.__anext__())
-
-
- # loc = await l
- # print(loc)
+ msgid = await gpss.location()
+ print(await gpss.receive())
if args.subscribe:
await gpss.subscribe(args.subscribe)
- await gpss.listener()
+ print(await l.__anext__())
if __name__ == '__main__':
loop = asyncio.get_event_loop()