Perfect.
TnX
Jad
Perfect.
TnX
Jad
Hi, is there a way to launch the browser or switch it to full screen mode?
https://www.openhab.org/addons/bindings/lgwebos/
see launchBrowser action
full screen mode is not accessible via api to my knowledge
Thanks. I didnât word my question properly. It should say âIs there a way to launch the browser in full screen modeâ. I guess the answer is ânoâ. Thanks for the clarifications.
@sprehn Rule triggered by Thing changed to ONLINE does not work anymore after upgrading from OH2.4
Hi Sebastian,
first off all: Thanks a lot for this great binding and caring of it over such a long time! Iâm using it since years.
I use OH2.5.4, and the DSL rules engine in a docker container running on my Synology NAS
When I want to watch Netflix for example I press the Netflix Button on my HabPanel and some actions are triggered
For step 2. I have to make sure, that the TV is switched on and ready to receive commands from OH. So I have a rule trigged by Thing âLGTVTâ changed to ONLINE"
rule "SetUp LGTV simplified"
when
Thing "lgwebos:WebOSTV:tv1" changed to ONLINE
then
logDebug( filename, "Thing 'lgwebos:WebOSTV:tv1' changed to ONLINE")
// Thread::sleep(2000)
val actions = getActions("lgwebos","lgwebos:WebOSTV:tv1")
if(null === actions) {
logInfo("actions", "Actions not found, check thing ID")
return
}
if(sceneSelected) {
logDebug( filename, "Launch '{}' on LG", setLgtvLivAppLaunch)
actions.launchApplication(setLgtvLivAppLaunch)
sceneSelected = false
}
end
In OH 2.4 this worked quite well. Now my actions take part too early as you can see in the logs below. My rule is triggered when the state changed from âOFFLINE: TV is offâ to âONLINE: Registeringâ.
09:54:23.825 [INFO ] [ome.event.ThingStatusInfoChangedEvent] - 'lgwebos:WebOSTV:tv1' changed from OFFLINE: TV is off to ONLINE: Registering - You may need to confirm pairing on TV.
09:54:23.825 [DEBUG] [smarthome.model.script.gaertner.rules] - Thing 'lgwebos:WebOSTV:tv1' changed to ONLINE
09:54:23.830 [DEBUG] [smarthome.model.script.gaertner.rules] - Launch 'netflix' on LG
09:54:23.833 [WARN ] [binding.lgwebos.action.LGWebOSActions] - Device with ThingID lgwebos:WebOSTV:tv1 is currently not connected.
09:54:23.835 [WARN ] [binding.lgwebos.action.LGWebOSActions] - Device with ThingID lgwebos:WebOSTV:tv1 does not support any app with id: netflix.
When wait for 2000ms after my rule is triggered every thin works fine
09:53:01.803 [DEBUG] [smarthome.model.script.gaertner.rules] - Launch 'netflix' on LG
09:53:01.872 [DEBUG] [binding.lgwebos.action.LGWebOSActions] - Response: org.openhab.binding.lgwebos.internal.handler.core.LaunchSession@5f0fedf9
09:53:03.514 [INFO ] [smarthome.event.ItemStateChangedEvent] - lgtvLivAppLaunch changed from com.webos.app.hdmi1 to netflix
My question: Is there a more elegant way to solve my problem? The rule should be triggered when the TV is connected and ready to receive commands from OH.
Thanks a lot!
Hi,
The âpower switchâ item should change from OFF to ON when the TV is turned on. You should be able to trigger on that event.
It also triggers when the TV changes from OFF to ON using the remote or buttons etc. At least in my case with the C9 model.
Switch tv_power âLiving Room TVâ {channel=âlgwebos:WebOSTV:asdadghahgd:powerâ, ga=âSwitchâ}
2020-05-02 10:11:56.473 [vent.ItemStateChangedEvent] - tv_power changed from OFF to ON
Hi Massssy,
thanks a lot! I tried this before and it does not work either. To make sure this is still the case I tried it again.
rule "SetUp LGTV simplified"
when
// Thing "lgwebos:WebOSTV:tv1" changed to ONLINE
Item lgtvLivPower changed from OFF to ON
then
// logDebug( filename, "Thing 'lgwebos:WebOSTV:tv1' changed to ONLINE")
logDebug( filename, "Item lgtvLivPower changed from OFF to ON")
// Thread::sleep(2000)
val actions = getActions("lgwebos","lgwebos:WebOSTV:tv1")
if(null === actions) {
logInfo("actions", "Actions not found, check thing ID")
return
}
if(sceneSelected) {
logDebug( filename, "Launch '{}' on LG", setLgtvLivAppLaunch)
actions.launchApplication(setLgtvLivAppLaunch)
sceneSelected = false
}
end
This rule is triggered later, but even not later enough in my case. Turning on DEBUG mode shows that it is triggered directly before the list of Apps appears in the log.
Here the Log entries:
11:08:17.464 [DEBUG] [smarthome.model.script.gaertner.rules] - Item lgtvLivPower changed from OFF to ON
11:08:17.464 [INFO ] [smarthome.event.ItemStateChangedEvent] - lgtvLivPower changed from OFF to ON
11:08:17.466 [DEBUG] [smarthome.model.script.gaertner.rules] - Launch 'netflix' on LG
11:08:17.469 [WARN ] [binding.lgwebos.action.LGWebOSActions] - No AppInfos found for device with ThingID lgwebos:WebOSTV:tv1.
11:08:17.471 [WARN ] [binding.lgwebos.action.LGWebOSActions] - Device with ThingID lgwebos:WebOSTV:tv1 does not support any app with id: netflix.
11:08:17.745 [DEBUG] [.lgwebos.internal.LauncherApplication] - AppInfo maxdome - Maxdome
11:08:17.747 [DEBUG] [.lgwebos.internal.LauncherApplication] - AppInfo netflix - Netflix
11:08:17.749 [DEBUG] [.lgwebos.internal.LauncherApplication] - AppInfo dazn - DAZN
11:08:17.751 [DEBUG] [.lgwebos.internal.LauncherApplication] - AppInfo ui30 - Wuaki.tv
11:08:17.753 [DEBUG] [.lgwebos.internal.LauncherApplication] - AppInfo com.disney.disneyplus-prod - Disney+
11:08:17.755 [DEBUG] [.lgwebos.internal.LauncherApplication] - AppInfo lovefilm.de - Amazon Prime Video
11:08:17.757 [DEBUG] [.lgwebos.internal.LauncherApplication] - AppInfo de.redbutton.hbbtv.app.lg-p7de - ProSieben
More ideas?
hi
use of power channel is correct -
at that point communication with tv is possible
the issue here is that once tv is connected the binding will query the device for all apps (AppInfo). these are then cached.
your command to start netflix arrives before the cache is filled and the binding does not find the appinfo object and thus ignores the command as show in the log message
using the delay is currently the only option i can think of.
btw. the app cache is available also via action getApplications() it would be possible to check if is filled
Hello,
The new channel works quite well. But Iâve the problem that there are e.g. two channels in the tvâs list with the number â1â. One is a TV channel , the other is a radio channel. In my case, if iI choose TV channel â1â, the shown channel name in the sitemap is the (wrong) Radio channel with the number â1â.
Regards,
Olli
Good catch, the number is not unique as you can have channel number N for each âserviceâ (DVB-T TV, DVB-T radio, DVB-S, âŠ). A solution has to be found, probably by extending the number with an additional info, but doing it only for users that encounters this case.
In my case the service is DVB-T2. Here in germany there are TV and Radio Channels(they are actuually internet streams) availible via DVB-T2.
TV:
Radio:
Regards,
Olli
rule "SetUp LGTV simplified"
when
// Thing "lgwebos:WebOSTV:tv1" changed to ONLINE
Item lgtvLivPower changed from OFF to ON
then
// logDebug( filename, "Thing 'lgwebos:WebOSTV:tv1' changed to ONLINE")
logDebug( filename, "Item lgtvLivPower changed from OFF to ON")
// Thread::sleep(2000)
createTimer(now.plusMillis(100), [ |
val actions = getActions("lgwebos","lgwebos:WebOSTV:tv1")
if(null === actions) {
logInfo("actions", "Actions not found, check thing ID")
return
}
if(sceneSelected) {
logDebug( filename, "Launch '{}' on LG", setLgtvLivAppLaunch)
actions.launchApplication(setLgtvLivAppLaunch)
sceneSelected = false
}
])
end
Hi Sebastian,
thanks for the quick response! That helps.
Best Budo
My PRs are now merged and the changes will be available in 2.5.5.
@memphiz : selecting the channel through the UI will now switch to the right channel even if you have several channels with the same number. As command for this channel, you can still use the channel number but you can also use the channel id which is of course the solution when you have several channels with the same number. To know what are the channel ids, there is now a console command to display them.
Great! Works perfect!
Thanks a lot,
Olli
Hint:
You have this error while using NEXT/PREVOIUS?
[INFO ] [.lgwebos.internal.MediaControlPlayer] - Only accept PlayPauseType, RewindFastforwardType, RefreshType. Type was class org.eclipse.smarthome.core.library.types.NextPreviousType.
To get your Player item work correctly use this simple workaround:
rule "Set working Player FASTFORWARD Command"
when
TV_Player received command NEXT
then
TV_Player.sendCommand(FASTFORWARD)
end
rule "Set working Player PREVIOUS Command"
when
TV_Player received command PREVIOUS
then
TV_Player.sendCommand(REWIND)
end
@Lolodomo:
The fix for the code seems to be simple, too:
From:
import org.eclipse.smarthome.core.library.types.RewindFastforwardType;
to
import org.eclipse.smarthome.core.library.types.NextPreviousType;
...
else if (NextPreviousType.NEXT== command) {
handler.getSocket().fastForward(getDefaultResponseListener());
} else if (NextPreviousType.PREVIOUS== command) {
handler.getSocket().rewind(getDefaultResponseListener());
...
in MediaControlPlayer.java
Regards,
Olli
Edit: latest version works fine.
@sprehn I had a play with pywebostv to see how it dealt with the volume when using an AVR device. To my surprise it works perfectly. It tells you the cause of the event, volumeUp/Down. The actual volume level seems to be fairly accurate. It works perfectly, it would be great if you could add support for it.
{u'scenario': u'mastervolume_ext_speaker_arc', u'muted': False, u'changed': [u'volume'], u'volume': 26, u'active': False, u'action': u'changed', u'cause': u'volumeUp'}