diff options
author | Edi Feschiyan <edi.feschiyan@konsulko.com> | 2020-05-14 12:32:59 +0300 |
---|---|---|
committer | Edi Feschiyan <edi.feschiyan@konsulko.com> | 2020-06-09 09:29:49 +0300 |
commit | 32540833af3e633880aa365284c72950da27fece (patch) | |
tree | 7f319fad0d79ad2c7a10baccd012ed58876da7c1 /gps.py | |
parent | 219e992aa8a8e5a7db48cc9d66bb0ddbbe7c21a3 (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.py | 29 |
1 files changed, 12 insertions, 17 deletions
@@ -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() |