Sony Devices Binding

Oliverk

(Sorry for the long post)

I’m next to positive the ID observation you made is not correct (but I absolutely may be incorrect since I don’t have an AV!). I’ve testing the device id with both the bravias and two blurays and they work fine. They don’t really care as long as the content follows “some name:xx-xx-xx-xx-xx-xx”. If you are running that register URL with the same deviceid as the remote AND you never cleared out the old registration on the AV - the register appears to work because it’s a renewal of an existing device id rather than a true register (again, that’s how the bravias/blurays work).

Now the one thing I’m unsure of is the “xx-xx-xx-xx-xx-xx” - that really should be a valid mac address of the device registering - however on your system I can’t seem to get the local mac address (weird in itself) - so I hardcoded the dummy 00-11-22-33-44-55. Again shouldn’t matter (works on both of my test beds).

Would your mind trying the following tests:

  1. Go to the AV itself and delete all media remotes - try the register with the “MediaRemote%3Ab8-27-eb-fb-3f-15” type - success or not?
  2. Delete all media remotes - try the register with “MediaRemote%3A00-11-22-33-44-55” - success or not?
  3. Delete all media remotes - try the register with “openHAB%3A00-11-22-33-44-55” - success or not?
  4. Delete all media remotes - try the register with “openHAB%3Ab8-27-eb-fb-3f-15” - success or not?

That would tell me alot about how the AV responds to the device id format

Note: your point #2 is ABSOLUTELY correct. I forgot that my current process is a two phase registration (request then approve) and I modified the “approve” part of that with the “initial” - forgetting the first part which has the “new”. That’s what you were encountering in this weekend. Once you run the above tests - I’ll make changes based on the results and hopefully have something today that will work.

Thanks for all your help!
Tim

sorry that my previous post and capture was not clear, but i really tested many combination and finally could proof that any id other than MediaRemote%3Axx-xx-xx-xx-xx-xx will fail. i always deleted any previously registered device on the AV before the next test.

no, i created a “new” device ID based on the MAC adress of my openhab PI NIC: MediaRemote%3Ab8-27-eb-fb-3f-15

no, it also works with any valid MAC address, also with your hardcoded dummy 00-11-22-33-44-55.

anyway no problem to double check, i will do the tests you have requested in the next 30 minutes and sent you the results including the capture.

thanks!

as expected, please find below the results of my tests.

  1. MediaRemote%3Ab8-27-eb-fb-3f-15 --> success
  2. MediaRemote%3A00-11-22-33-44-55 --> success
  3. openHAB%3A00-11-22-33-44-55 --> no
  4. openHAB%3Ab8-27-eb-fb-3f-15 --> no

In case of successfull device registration you’ll se a HTTP 200 OK response in the capture

glad that my information is of help! please let me know if you need any further tests.

thanks, Oliver

Wow - can’t believe they actually enforce that. Good to know however - next version will will enforce that (blurays and bravias won’t care - so it’s compatible with them also). Also glad to see the dummy mac address works as well!

Thanks for doing those tests! I’ll post a new one shortly…
Tim

Posted - give it a shot!

great - openhab has registered successfully!

2017-02-13 19:42:19.404 [DEBUG] [inding.sony.internal.net.HttpRequest] - 19 * Sending client request on thread safeCall-1038
19 > GET http://192.168.205.46:50001/cers/register?name=OpenHAB+%28MediaRemote%3A00-11-22-33-44-55%29&registrationType=initial&deviceId=MediaRemote%3A00-11-22-33-44-55
19 > Connection: close
19 > User-Agent: OpenHab/Sony/Binding
19 > X-CERS-DEVICE-ID: MediaRemote:00-11-22-33-44-55
19 > X-CERS-DEVICE-INFO: OpenHab/Sony/Binding

2017-02-13 19:42:19.450 [DEBUG] [inding.sony.internal.net.HttpRequest] - 20 * Client response received on thread safeCall-1038
20 < 200
20 < Connection: close
20 < CONTENT-LENGTH: 0
20 < CONTENT-TYPE: text/xml; charset="utf-8"
20 < X-AV-Physical-Unit-Info: pa="STR-DN1030"
20 < X-AV-Server-Info: av="5.0"; cn="Sony Corporation"; mn="STR-DN1030"; mv="1.00"

and after removing RQST from the access code my Sony STR-DN1030 Thing became Online :slight_smile:
so i will now start playing around with the channels and items…

thank you very much Tim for your great work!

and please let me know if you need any further support or testing of your binding.

Woohoo! If you would could you post the output of the ircc transformation file that it created (should find it under the transform directory) and the response to the getStatus/getContentInformation urls (you’ll see it in the debug output)? For the bravia tvs, the only channels that work are power and ircc - the rest of the channels are unique to blurays. Be interesting to see what AVs support (getContentInformation may or may be implemented btw in avs)

Actually - looking at your actionlist - you will only support the power, ircc command and text channel. I’m still interested in seeing what the transform file and the getStatus looks like however (see if there is any new information)

And looking at the commands from the getRemote from your mediaremote pcap - there may or may not be an issue. Some of the commands have “STR:” prefixed to them and I’m not sure how the transform service handles those. Easiest thing to do is to try out a command in the PaperUI->Control->Click on the “-” under IRCC Command and enter “STR:TvMain” (press enter) and see if the AV switches over (or if you get an error or anything in the log)

Even if it works - I’m thinking that maybe I’ll just make a blanket policy to strip anything up to a colon if one is found (looking at the commands, there doesn’t seem any overlap if I do that). That way the commands are easier to deal with - thoughts?

Actually - one more thing as well - restart the binding. I want to see if the AVs will handle the “registrationType=renewal” ok or not…

sorry, had no time today for further tests…below the output from the logs

2017-02-13 20:40:42.057 [DEBUG] [ding.sony.internal.ircc.IrccProtocol] - getContentInformation is not implemented
2017-02-13 20:40:44.063 [DEBUG] [inding.sony.internal.net.HttpRequest] - 2545 * Sending client request on thread ESH-thingHandler-3
2545 > GET http://192.168.205.46:50001/cers/getStatus
2545 > Connection: close
2545 > User-Agent: OpenHab/Sony/Binding
2545 > X-Auth-PSK: 0
2545 > X-CERS-DEVICE-ID: MediaRemote:00-11-22-33-44-55
2545 > X-CERS-DEVICE-INFO: OpenHab/Sony/Binding

2017-02-13 20:40:44.646 [DEBUG] [inding.sony.internal.net.HttpRequest] - 2546 * Client response received on thread ESH-thingHandler-3
2546 < 200
2546 < Connection: close
2546 < CONTENT-LENGTH: 146
2546 < CONTENT-TYPE: text/xml; charset="utf-8"
2546 < X-AV-Physical-Unit-Info: pa="STR-DN1030"
2546 < X-AV-Server-Info: av="5.0"; cn="Sony Corporation"; mn="STR-DN1030"; mv="1.00"
<statusList><status name="viewing"><statusItem field="source" value="TV" /><statusItem field="zone2Source" value="SOURCE" /></status></statusList>

and attached the transform file ircc-5f9ec1b3-ed59-1900-4530-5453edf73098.map.xml (2.7 KB)

here also the output after restarting the bundle. registrationType renewal seems to work, but some strange error at the end “exception: Premature end of file.”?
http://pastebin.com/bK4qHXvR

will do the testing of the channels tomorrow…

Interesting - has no issues with the renewal. Appears to support the viewing->source channel (in fact, has a viewing->zone2Source channel that I’ll add to support) - note those are readonly channels. The transform map is interesting - I’ll be removing the “STR:” parts on it in the next version also.

I don’t get the “premature end of file” - that’s saying it didn’t get the full chunk of data from the AV. I’ll do a little research on that.

BTW - if you try the IRCC channel, the channel is CASE SENSITIVE. So you’ll need to type “BLUETOOTH” to start bluetooth, “Left” to go left, “Confirm” to hit enter, etc

I just posted number 2 for today:

  1. Delete the ircc map file to allow it to recreate (should remove the “STR:” parts in the commands - let me know if it doesn’t)
  2. Included a new channel - viewing#zone2source that should contain the source for zone2

Could you also reply with the exact directions to put the AV into pairing mode (want to include it in the documentation

Latest testing file should fix your issue - let me know if it doesn’t

Stuliet - download the latest from the openhab2-addons sony thread - should be able to connect now (you need to put the AV into registration mode as documented by Oliverk for it to properly pair)

Unfortunately not:

2017-02-14 18:22:13.034 [INFO ] [y.internal.simpleip.SimpleIpProtocol] - Response took too long - ignoring
2017-02-14 18:22:47.027 [INFO ] [y.internal.simpleip.SimpleIpProtocol] - Response took too long - ignoring
2017-02-14 18:23:21.138 [INFO ] [y.internal.simpleip.SimpleIpProtocol] - Response took too long - ignoring
2017-02-14 18:23:55.182 [INFO ] [y.internal.simpleip.SimpleIpProtocol] - Response took too long - ignoring
2017-02-14 18:24:29.394 [INFO ] [y.internal.simpleip.SimpleIpProtocol] - Response took too long - ignoring
2017-02-14 18:25:03.505 [INFO ] [y.internal.simpleip.SimpleIpProtocol] - Response took too long - ignoring

I used “sony-binding-2017-02-13-2”

Andi,

Download the latest “sony-binding-2017-02-14-1” and try that one

Tim

the new ircc map file was created, removed the STR: parts and is working fine!

2017-02-14 20:12:42.829 [DEBUG] [ding.sony.internal.ircc.IrccProtocol] - Transformed VolumeUp with map file 'ircc-5f9ec1b3-ed59-1900-4530-5453edf73098.ma
p' to ircc:AAAAAgAAADAAAAASAQ%3D%3D

here the exact directions to put the Sony STR-DN1030 into pairing Mode:
Settings/Network/Media Remote Device/Start Registration

Thanks Tim & Oliver, this is working for me with the sony-binding-2017-02-13-1.jar binding. Now to work out ho to use it!

Stuart,

Download the 2017-02-14-1 or the 2017-02-13-2 to get the latest changes

BTW - which model do you have? Nevermind - you have the STN-1050. Any chance you can turn on debug and post what the “getStatus” URL is returning?

Tim