From f5fb9fc580e6419907513edfd6b687cbfc090845 Mon Sep 17 00:00:00 2001 From: Marius Flage Date: Mon, 4 Nov 2019 21:54:36 +0100 Subject: [PATCH] Checking state before actually sending a new state change. Some projectors return ERR if you try to turn off a projector that's already off. (#28529) --- homeassistant/components/pjlink/media_player.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/homeassistant/components/pjlink/media_player.py b/homeassistant/components/pjlink/media_player.py index 6474165a6cd..ea35fe7fb75 100644 --- a/homeassistant/components/pjlink/media_player.py +++ b/homeassistant/components/pjlink/media_player.py @@ -158,13 +158,15 @@ class PjLinkDevice(MediaPlayerDevice): def turn_off(self): """Turn projector off.""" - with self.projector() as projector: - projector.set_power("off") + if self._pwstate == STATE_ON: + with self.projector() as projector: + projector.set_power("off") def turn_on(self): """Turn projector on.""" - with self.projector() as projector: - projector.set_power("on") + if self._pwstate == STATE_OFF: + with self.projector() as projector: + projector.set_power("on") def mute_volume(self, mute): """Mute (true) of unmute (false) media player."""