WebOS (LG) TV, Command payload syntax (service vs node-red)

In the documentation (here) there’s a section for the webostv.command service, where you can send it commands. This refers to a list of endpoints (kind of like commands, here).

Some of these require no parameters, for example volumeUp or volumeDown, and they work fine.

Some require parameters (or I think in the terminology used internally payloads), for example setVolume. I have found no mechanism to pass that in, at least all the variations on syntax I have tried either are not accepted, or do not work (mostly the former).

Now the actual commands can be made to work. In Node-Red for example, there is this set of nodes (here) which use similar commands, though they are wrapped up inside specific nodes. I have not used them extensively yet, but a relatively complicated thing (open the web browser to a page) worked great.

Now I realize I can, in a kludgy way, hook Node-Red up to Home Assistant, e.g. have a script toggle a button which invokes a flow, which does the thing and re-toggles; hope for no race conditions, etc. Yes, I see how that works, can do.

But what I’d really like is some scripts in HA that just call the services with the right payload. Skip all the fake-event flow invocation.

Is there a syntax I’m just missing, or is HA just not as sophisticated in the use of this as Node-Red?

The webostv.command service does not currently support passing additional parameters, however much of the specific functionality is accessible through other services. For example media_player.volume_set for the use case you give.

Which functionality are you currently missing?

Opening the web browser to a specific URL was the thing I was trying to do at the moment.