Sony Devices Binding

Hi guys,
I’ve just updated to OH3 and I figured there is no sony binding there. Is it named something different or I have to install the 2.5.x version manually?

Cheers,
K.

Hi,

The Sony binding is not yet part of the official addons distribution.
You might try to install an alpha version of an OH3 compatible release from https://github.com/andan67/openhab-addons-sony/releases/tag/3.0.0-alpha.andan.2.
The OH2.5 version won’t work under OH3

2 Likes

Hi andan,
will the new Sony binding support the current Sony smart TV (Android based).
I have exchanged my old Sony at Christmas. :wink:

…just another info - I just found out:

  • you can control the Sony Android Smart TVs with Alexa
  • there is an skill for Sony TVs - you have to activate
  • and than you can send voice commands to your Alexa (binding) controlling the Sony TV
    :star_struck:
    … you could also work with alexa routines - switch on TV (sony skill) + switch on surround sound (openhab) + switch on TV lights (openhab)

I’ve released a new OH3 alpha version of the Sony binding:
https://github.com/andan67/openhab-addons-sony/releases/tag/3.0.0-alpha.andan.3

Besides small bug fixes and improvements, the main changes are related to making this binding compliant to OH3 coding guidelines (improved null safety checks and elimination of the depdendency on apache.commons libs). As these are quite a number of changes across the entire code, it would be great if this version would be regression tested by a number of alpha testers.

There is one issue for which I haven’t found a solution yet. If a cell for the new UI is defined from a point that is linked to the channel “sony:scalar:d8d43c4d563d:avContent#pl_title-main” which shows the currently played title of the content (e.g. TV channel), the cell refresh only works until the next restart of OH. After restart of OH, the cell shows ‘NULL’ and the console log shows the following error:

[ERROR] [org.apache.cxf.jaxrs.utils.JAXRSUtils] - No message body reader has been found for class java.lang.String, ContentType: application/octet-stream

From other OH posts I understand that this error might be fixed by adding a content type header to the UI request. However, I currently don’t know whether and how this can be fixed in the Sony binding.

Has anyone else observed this issue (I assume it will also happen with other channels) and/or an idea how to fix it?

[Note: My post from yesterday with nearly the same content was affected by the data loss due to the backup restore]

2 Likes

@andan
i am having a problem with channels not updating as you described. mine are linked to power and volume. unlinking and re-linking resolves it for a time. i had a much better reply last night but it has been wiped out

Hi @andan
thanks for your work on this binding. I try to set everything up but I struggle with launching an app on the TV. If I understand everything correctly it should be possible to launch an app but we can’t receive the status of an app (start / stop). On the scalar documentation on Github I find only ready only channels for app control. The Sony rest api documentation mentions that this should be possible with setActiveApp right?
Is it possible to launch an app with this binding?

I’m running this binding with scalar on a KD-55XF9005 android TV.
I will give the alpha 3 a try tomorrow.

Hi Stefan,

You should be able to start/stop an app using the app control status channel.
Easiest way to set this up is by creating a point in the model, linking it to the app control status channel of your choice, and picking this point using the ‘Add from model’ function when creationg a new cell in a UI page.

As example, the following UI cell configuration starts/stops the YouTube app on my (non-Android) TV:

component: oh-label-cell
config:
action: options
actionItem: BRAVIAKDL50W656A_AppYouTubeStatus
item: BRAVIAKDL50W656A_AppYouTubeStatus
title: App YouTube Status
stateAsHeader: true
expandable: false

1 Like

Hi @andan,
thanks for your fast help. This is working fine now. :+1:
I was a litte bit confused because the documentation mentioned this as read only but it behaves more like write only.
image
Btw I can confirm that channels aren’t updating with alpha 3 (tested with power, mute and volume).

Hi there

I have been using the 2.5 version for a while with no problem (mostly to get the TV power state and switch some lights on), but also to get the channels

Now, for the channels I see a little lock in the interface (new interface, not yet used to it, I always used paperUI)

I use simpleIP with org.openhab.binding.sony-3.0.0-alpha.andan.2.jar

Thank you for any hint

Hi,

I’m not sure what you mean, But as a hint, administration with the new OH3 UI requires a login by default (see documentation).

A new OH3 release is available:
https://github.com/andan67/openhab-addons-sony/releases/tag/3.0.0-alpha.andan.4

Changes;

  • Fixed issue with non-refreshing item states after OH restart
  • Added option to configure presets for TV channels.

Very short guide on how to use the configurable presets

  • Enable the (advanced) thing configuration option Enable Configurable Presets and save new configuration

  • After thing restart, for each (non-empty) TV source you will find a csv file in the folder userdata/config/sony/presets that contains a list of all TV channels

  • The last column named ‘Rank’ determines which TV channels should be added to the preset list and in which order. The logic is as follows:

    • rank < 0: TV channel is excluded
    • rank = 0: TV channel is added to end of preset list
    • rank > 0: TV channel is added in the order of the rank value
    • Channels with same rank value are naturally ordered in preset list
  • Initially, the rank value is 0 for all channels.

  • A refresh of the preset after a change of the csv file can be triggered by selecting the first state option with label --REFRESH-- from a UI cell that is linked to the preset channel

Hope you find this feature useful. For me, this was the only praticable way to use the preset channel in the UI for the dvbs TV source (with >700 unfiltered channels).

yay! will definitely update soon

Hello,
May be I miss some settings. When I copy jar file to addon folder and I start Openhab I get the following error message:

2021-02-21 08:03:26.117 [WARN ] [org.apache.felix.fileinstall        ] - Error while starting bundle: file:/C:/Openhab/addons/org.openhab.binding.sony-3.0.0-alpha.andan.4.jar
org.osgi.framework.BundleException: Could not resolve module: org.openhab.binding.sony [208]
  Unresolved requirement: Import-Package: org.openhab.core.config.discovery.upnp

	at org.eclipse.osgi.container.Module.start(Module.java:444) ~[org.eclipse.osgi-3.12.100.jar:?]
	at org.eclipse.osgi.internal.framework.EquinoxBundle.start(EquinoxBundle.java:383) ~[org.eclipse.osgi-3.12.100.jar:?]
	at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundle(DirectoryWatcher.java:1260) [bundleFile:3.6.4]
	at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundles(DirectoryWatcher.java:1233) [bundleFile:3.6.4]
	at org.apache.felix.fileinstall.internal.DirectoryWatcher.doProcess(DirectoryWatcher.java:520) [bundleFile:3.6.4]
	at org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:365) [bundleFile:3.6.4]
	at org.apache.felix.fileinstall.internal.DirectoryWatcher.run(DirectoryWatcher.java:316) [bundleFile:3.6.4]

I use Windows 10 and 3.1.0 milestone version. I tried with 3.0.1 stable version but error message was the same.

Please read the start post section " Unresolved Requirements"

Thanks! I was installing this binding so long time ago that I have forgotten to check.

Hi @andan is it possible to solve the problem about the errors raised after the shutdown of the BDP-S6700 bluray?

Hi @Rickytr. From our previous posts I understand that the IRCC service doesn’t go online again when the device is powered on unless you change and save the configuration (access code). Correct? Does the IRCC service work without issues when it is online?

I think it will be very hard for me to identify and fix the cause of the problem, especially as it might be device specific.

BTW: Which binding version do you use?

Hi @andan, yes exactly, I have to open the thing and save, without changing anything, for the thing to go online. The strange thing is that with the thing offline I still can poweron the device by using the power channel. Other than this it seems that all services (ircc, dial, scalar) when the device is powered off never goes offline and are continuously trying to connect, flooding the logfiles with error like this:

2021-02-22 18:18:24.617 [WARN ] [ache.cxf.phase.PhaseInterceptorChain] - Interceptor for {http://xxx.xxx.xxx.xxx:50201/dial.xml}WebClient has thrown exception, unwinding now
org.apache.cxf.interceptor.Fault: Could not receive Message.
at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:65) ~[bundleFile:1.0.9]
at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:308) [bundleFile:1.0.9]
at org.apache.cxf.jaxrs.client.AbstractClient.doRunInterceptorChain(AbstractClient.java:705) [bundleFile:1.0.9]
at org.apache.cxf.jaxrs.client.WebClient.doChainedInvocation(WebClient.java:1081) [bundleFile:1.0.9]
at org.apache.cxf.jaxrs.client.WebClient.doInvoke(WebClient.java:927) [bundleFile:1.0.9]
at org.apache.cxf.jaxrs.client.WebClient.doInvoke(WebClient.java:896) [bundleFile:1.0.9]
at org.apache.cxf.jaxrs.client.WebClient.invoke(WebClient.java:461) [bundleFile:1.0.9]
at org.apache.cxf.jaxrs.client.SyncInvokerImpl.method(SyncInvokerImpl.java:135) [bundleFile:1.0.9]
at org.apache.cxf.jaxrs.client.SyncInvokerImpl.method(SyncInvokerImpl.java:130) [bundleFile:1.0.9]…

I looked into your log file but wasn’t able to find any hint concerning the cause of your problem.

Thus I think that @tmrobert8 is the only person how would be able to provide a fix in the near future.
The only thing I could offer is that you try my OH3 version of the binding. However, I will give it only a 20% chance of fixing the problem.