def __init__(self, session): self.session = session self.callbacks = APCallbacks() self.callbacks.photo = self.__photo self.callbacks.audio = self.__audio self.callbacks.video = self.__video self.callbacks.videoPlay = self.__videoPlay self.callbacks.videoPause = self.__videoPause self.callbacks.videoGetPosition = self.__videoGetPosition self.callbacks.videoSetPosition = self.__videoSetPosition self.callbacks.stop = self.__close self.callbacks.stopAudio = self.__closeAudio self.server = APServer(self.callbacks) self.current = None self.videorequest = False self.videourl = ""
class AirPlay(): def __init__(self, session): self.session = session self.callbacks = APCallbacks() self.callbacks.photo = self.__photo self.callbacks.audio = self.__audio self.callbacks.video = self.__video self.callbacks.videoPlay = self.__videoPlay self.callbacks.videoPause = self.__videoPause self.callbacks.videoGetPosition = self.__videoGetPosition self.callbacks.videoSetPosition = self.__videoSetPosition self.callbacks.stop = self.__close self.callbacks.stopAudio = self.__closeAudio self.server = APServer(self.callbacks) self.current = None self.videorequest = False self.videourl = "" def stop(self): self.server.stop() def start(self): self.server.start() def __photo(self, data): if self.current is None: self.current = self.session.open(AirPlayPhoto) if self.current.__class__.__name__ != "AirPlayPhoto": print "[SIFTeam OpenAirPlay] is it busy with other contents?" return self.current.load(data) def __audioClosed(self): if self.videorequest: self.current = self.session.open(AirPlayVideo) self.current.open(self.videourl) self.videorequest = False def __audio(self): if self.current is None: self.current = self.session.openWithCallback(self.__audioClosed, AirPlayAudio) def __video(self, url, startposition): if self.current is None: self.current = self.session.open(AirPlayVideo) if self.current.__class__.__name__ != "AirPlayVideo": # if audio we replace it if self.current.__class__.__name__ == "AirPlayAudio": self.videourl = url self.videorequest = True self.current.exit() return else: print "[SIFTeam OpenAirPlay] is it busy with other contents?" return self.current.open(url) def __videoPlay(self): if self.current is not None and self.current.__class__.__name__ == "AirPlayVideo": self.current.play() def __videoPause(self): if self.current is not None and self.current.__class__.__name__ == "AirPlayVideo": self.current.pause() def __videoGetPosition(self): if self.current is not None and self.current.__class__.__name__ == "AirPlayVideo": return self.current.getPosition() return None def __videoSetPosition(self, position): if self.current is not None and self.current.__class__.__name__ == "AirPlayVideo": self.current.setPosition(position) def __close(self): if self.current is not None: self.current.exit() self.current = None self.videorequest = False def __closeAudio(self): if self.current is not None and self.current.__class__.__name__ == "AirPlayAudio": self.current.exit() self.current = None
class AirPlay(): def __init__(self, session): self.session = session self.callbacks = APCallbacks() self.callbacks.photo = self.__photo self.callbacks.audio = self.__audio self.callbacks.video = self.__video self.callbacks.videoPlay = self.__videoPlay self.callbacks.videoPause = self.__videoPause self.callbacks.videoGetPosition = self.__videoGetPosition self.callbacks.videoSetPosition = self.__videoSetPosition self.callbacks.stop = self.__close self.callbacks.stopAudio = self.__closeAudio self.server = APServer(self.callbacks) self.current = None self.videorequest = False self.videourl = "" def stop(self): self.server.stop() def start(self): self.server.start() def __photo(self, data): if self.current is None: self.current = self.session.open(AirPlayPhoto) if self.current.__class__.__name__ != "AirPlayPhoto": print "[SIFTeam OpenAirPlay] is it busy with other contents?" return self.current.load(data) def __audioClosed(self): if self.videorequest: self.current = self.session.open(AirPlayVideo) self.current.open(self.videourl) self.videorequest = False def __audio(self): if self.current is None: self.current = self.session.openWithCallback( self.__audioClosed, AirPlayAudio) def __video(self, url, startposition): if self.current is None: self.current = self.session.open(AirPlayVideo) if self.current.__class__.__name__ != "AirPlayVideo": # if audio we replace it if self.current.__class__.__name__ == "AirPlayAudio": self.videourl = url self.videorequest = True self.current.exit() return else: print "[SIFTeam OpenAirPlay] is it busy with other contents?" return self.current.open(url) def __videoPlay(self): if self.current is not None and self.current.__class__.__name__ == "AirPlayVideo": self.current.play() def __videoPause(self): if self.current is not None and self.current.__class__.__name__ == "AirPlayVideo": self.current.pause() def __videoGetPosition(self): if self.current is not None and self.current.__class__.__name__ == "AirPlayVideo": return self.current.getPosition() return None def __videoSetPosition(self, position): if self.current is not None and self.current.__class__.__name__ == "AirPlayVideo": self.current.setPosition(position) def __close(self): if self.current is not None: self.current.exit() self.current = None self.videorequest = False def __closeAudio(self): if self.current is not None and self.current.__class__.__name__ == "AirPlayAudio": self.current.exit() self.current = None