from .base import BaseRenderer class LiveChatLegacyPaidMessageRenderer(BaseRenderer): def __init__(self, item): super().__init__(item, "newSponsorEvent") def get_snippet(self): message = self.get_message(self.renderer) return { "type" : self.chattype, "liveChatId" : "", "authorChannelId" : self.renderer.get("authorExternalChannelId"), "publishedAt" : self.get_publishedat(self.renderer.get("timestampUsec",0)), "hasDisplayContent" : True, "displayMessage" : message, } def get_authordetails(self): authorExternalChannelId = self.renderer.get("authorExternalChannelId") #parse subscriber type isVerified, isChatOwner, _, isChatModerator = ( self.get_badges(self.renderer) ) return { "channelId" : authorExternalChannelId, "channelUrl" : "http://www.youtube.com/channel/"+authorExternalChannelId, "displayName" : self.renderer["authorName"]["simpleText"], "profileImageUrl" : self.renderer["authorPhoto"]["thumbnails"][1]["url"] , "isVerified" : isVerified, "isChatOwner" : isChatOwner, "isChatSponsor" : True, "isChatModerator" : isChatModerator } def get_message(self,renderer): message = (renderer["eventText"]["runs"][0]["text"] )+' / '+(renderer["detailText"]["simpleText"]) return message