async def handle_playstatus(self, request):
self._verify_auth_parameters(request)<EOL>body = b'<STR_LIT>'<EOL>playing = self._get_response('<STR_LIT>')<EOL>revision = int(request.rel_url.query['<STR_LIT>'])<EOL>if playing.revision != revision:<EOL><INDENT>return web.Response(status=<NUM_LIT>)<EOL><DEDENT>if playing.paused is not None:<EOL><INDENT>body += tags.uint32_tag('<STR_LIT>', <NUM_LIT:3> if playing.paused else <NUM_LIT:4>)<EOL><DEDENT>if playing.title is not None:<EOL><INDENT>body += tags.string_tag('<STR_LIT>', playing.title)<EOL><DEDENT>if playing.artist is not None:<EOL><INDENT>body += tags.string_tag('<STR_LIT>', playing.artist)<EOL><DEDENT>if playing.album is not None:<EOL><INDENT>body += tags.string_tag('<STR_LIT>', playing.album)<EOL><DEDENT>if playing.genre is not None:<EOL><INDENT>body += tags.string_tag('<STR_LIT>', playing.genre)<EOL><DEDENT>if playing.total_time is not None:<EOL><INDENT>total_time = playing.total_time * <NUM_LIT:1000>  <EOL>body += tags.uint32_tag('<STR_LIT>', total_time)<EOL>if playing.position is not None:<EOL><INDENT>pos = (playing.total_time - playing.position)<EOL>body += tags.uint32_tag('<STR_LIT>', pos*<NUM_LIT:1000>)  <EOL><DEDENT><DEDENT>if playing.mediakind is not None:<EOL><INDENT>body += tags.uint32_tag('<STR_LIT>', playing.mediakind)<EOL><DEDENT>if playing.playstatus is not None:<EOL><INDENT>body += tags.uint32_tag('<STR_LIT>', playing.playstatus)<EOL><DEDENT>if playing.repeat is not None:<EOL><INDENT>body += tags.uint8_tag('<STR_LIT>', playing.repeat)<EOL><DEDENT>body += tags.uint8_tag('<STR_LIT>', playing.shuffle)<EOL>body += tags.uint32_tag('<STR_LIT>', playing.revision + <NUM_LIT:1>)<EOL>return web.Response(<EOL>body=tags.container_tag('<STR_LIT>', body), status=<NUM_LIT:200>)<EOL>
Handle  playstatus (currently playing) requests.