Sony TV Network Remote Control Plugin

Questions and comments specific to a particular plugin should go here.

Re: Sony TV Network Remote Control Plugin

Postby kgschlosser » Sat Aug 26, 2017 6:53 am

You are only hitting one protocol


try this one. this is going to have the list of all of the protocols i know about. maybe i will find the method that will list the available protocols by using this

Code: Select all
import json
import requests
import traceback

IP_ADDRESS = '192.168.1.1'

getVersions = json.dumps({"id":1,"method":"getVersions","version":"1.0","params":[]})


try:
    print 'Protocol:', '/sony/guide'
    response = requests.post('http://%s/sony/guide' % IP_ADDRESS, data=getVersions.encode('UTF-8'))
    versions = json.loads(response.content.decode('utf-8'))['result'][0]
    for version in versions:
        version = json.dumps({"id":1,"method":"getMethodTypes","version":"1.0","params":[version]})
        response = requests.post('http://%s/sony/guide' % IP_ADDRESS, data=version.encode('UTF-8'))
        print json.dumps(json.loads(response.content.decode('utf-8')), indent=4)
        print
except:
    traceback.print_exc()
   
try:
    print 'Protocol:', '/sony/system'
    response = requests.post('http://%s/sony/system' % IP_ADDRESS, data=getVersions.encode('UTF-8'))
    versions = json.loads(response.content.decode('utf-8'))['result'][0]
    for version in versions:
        version = json.dumps({"id":1,"method":"getMethodTypes","version":"1.0","params":[version]})
        response = requests.post('http://%s/sony/system' % IP_ADDRESS, data=version.encode('UTF-8'))
        print json.dumps(json.loads(response.content.decode('utf-8')), indent=4)
        print
except:
    traceback.print_exc()

try:
    print 'Protocol:', '/sony/videoScreen'
    response = requests.post('http://%s/sony/videoScreen' % IP_ADDRESS, data=getVersions.encode('UTF-8'))
    versions = json.loads(response.content.decode('utf-8'))['result'][0]
    for version in versions:
        version = json.dumps({"id":1,"method":"getMethodTypes","version":"1.0","params":[version]})
        response = requests.post('http://%s/sony/videoScreen' % IP_ADDRESS, data=version.encode('UTF-8'))
        print json.dumps(json.loads(response.content.decode('utf-8')), indent=4)
        print
except:
    traceback.print_exc()


try:
    print 'Protocol:', '/sony/audio'
    response = requests.post('http://%s/sony/audio' % IP_ADDRESS, data=getVersions.encode('UTF-8'))
    versions = json.loads(response.content.decode('utf-8'))['result'][0]
    for version in versions:
        version = json.dumps({"id":1,"method":"getMethodTypes","version":"1.0","params":[version]})
        response = requests.post('http://%s/sony/audio' % IP_ADDRESS, data=version.encode('UTF-8'))
        print json.dumps(json.loads(response.content.decode('utf-8')), indent=4)
        print
except:
    traceback.print_exc()


try:
    print 'Protocol:', '/sony/avContent'
    response = requests.post('http://%s/sony/avContent' % IP_ADDRESS, data=getVersions.encode('UTF-8'))
    versions = json.loads(response.content.decode('utf-8'))['result'][0]
    for version in versions:
        version = json.dumps({"id":1,"method":"getMethodTypes","version":"1.0","params":[version]})
        response = requests.post('http://%s/sony/avContent' % IP_ADDRESS, data=version.encode('UTF-8'))
        print json.dumps(json.loads(response.content.decode('utf-8')), indent=4)
        print
except:
    traceback.print_exc()


try:
    print 'Protocol:', '/sony/recording'
    response = requests.post('http://%s/sony/recording' % IP_ADDRESS, data=getVersions.encode('UTF-8'))
    versions = json.loads(response.content.decode('utf-8'))['result'][0]
    for version in versions:
        version = json.dumps({"id":1,"method":"getMethodTypes","version":"1.0","params":[version]})
        response = requests.post('http://%s/sony/recording' % IP_ADDRESS, data=version.encode('UTF-8'))
        print json.dumps(json.loads(response.content.decode('utf-8')), indent=4)
        print
except:
    traceback.print_exc()

try:
    print 'Protocol:', '/sony/appControl'
    response = requests.post('http://%s/sony/appControl' % IP_ADDRESS, data=getVersions.encode('UTF-8'))
    versions = json.loads(response.content.decode('utf-8'))['result'][0]
    for version in versions:
        version = json.dumps({"id":1,"method":"getMethodTypes","version":"1.0","params":[version]})
        response = requests.post('http://%s/sony/appControl' % IP_ADDRESS, data=version.encode('UTF-8'))
        print json.dumps(json.loads(response.content.decode('utf-8')), indent=4)
        print
except:
    traceback.print_exc()
   
try:   
    print 'Protocol:', '/sony/browser'
    response = requests.post('http://%s/sony/browser' % IP_ADDRESS, data=getVersions.encode('UTF-8'))
    versions = json.loads(response.content.decode('utf-8'))['result'][0]
    for version in versions:
        version = json.dumps({"id":1,"method":"getMethodTypes","version":"1.0","params":[version]})
        response = requests.post('http://%s/sony/browser' % IP_ADDRESS, data=version.encode('UTF-8'))
        print json.dumps(json.loads(response.content.decode('utf-8')), indent=4)
        print
except:
    traceback.print_exc()

try:
    print 'Protocol:', '/sony/notification'
    response = requests.post('http://%s/sony/notification' % IP_ADDRESS, data=getVersions.encode('UTF-8'))
    versions = json.loads(response.content.decode('utf-8'))['result'][0]
    for version in versions:
        version = json.dumps({"id":1,"method":"getMethodTypes","version":"1.0","params":[version]})
        response = requests.post('http://%s/sony/notification' % IP_ADDRESS, data=version.encode('UTF-8'))
        print json.dumps(json.loads(response.content.decode('utf-8')), indent=4)
        print
except:
    traceback.print_exc()

try:
    print 'Protocol:', '/sony/accessControl'
    response = requests.post('http://%s/sony/accessControl' % IP_ADDRESS, data=getVersions.encode('UTF-8'))
    versions = json.loads(response.content.decode('utf-8'))['result'][0]
    for version in versions:
        version = json.dumps({"id":1,"method":"getMethodTypes","version":"1.0","params":[version]})
        response = requests.post('http://%s/sony/accessControl' % IP_ADDRESS, data=version.encode('UTF-8'))
        print json.dumps(json.loads(response.content.decode('utf-8')), indent=4)
        print
except:
    traceback.print_exc()
If you like the work I have been doing then feel free to Image
User avatar
kgschlosser
Site Admin
 
Posts: 2699
Joined: Fri Jun 05, 2015 5:43 am
Location: Rocky Mountains, Colorado USA

Re: Sony TV Network Remote Control Plugin

Postby blaher » Sun Aug 27, 2017 4:42 am

Code: Select all
14:38:06   ---> Welcome to EventGhost <---
14:38:11   Keyboard.F5
14:38:11   Python Script
14:38:11      Protocol: /sony/guide
14:38:11      {
14:38:11          "results": [
14:38:11              [
14:38:11                  "getServiceProtocols",
14:38:11                  [],
14:38:11                  [
14:38:11                      "string",
14:38:11                      "string*"
14:38:11                  ],
14:38:11                  "1.0"
14:38:11              ],
14:38:11              [
14:38:11                  "getSupportedApiInfo",
14:38:11                  [
14:38:11                      "{\"services\":\"string*\"}"
14:38:11                  ],
14:38:11                  [
14:38:11                      "{\"service\":\"string\", \"protocols\":\"string*\", \"apis\":\"ApiInfo[]\"}*"
14:38:11                  ],
14:38:11                  "1.0"
14:38:11              ],
14:38:11              [
14:38:11                  "getMethodTypes",
14:38:11                  [
14:38:11                      "string"
14:38:11                  ],
14:38:11                  [
14:38:11                      "string",
14:38:11                      "string*",
14:38:11                      "string*",
14:38:11                      "string"
14:38:11                  ],
14:38:11                  "1.0"
14:38:11              ],
14:38:11              [
14:38:11                  "getVersions",
14:38:11                  [],
14:38:11                  [
14:38:11                      "string*"
14:38:11                  ],
14:38:11                  "1.0"
14:38:11              ]
14:38:11          ],
14:38:11          "id": 1
14:38:11      }
14:38:11     
14:38:11      Protocol: /sony/system
14:38:11      {
14:38:11          "results": [
14:38:11              [
14:38:11                  "getCurrentTime",
14:38:11                  [],
14:38:11                  [
14:38:11                      "string"
14:38:11                  ],
14:38:11                  "1.0"
14:38:11              ],
14:38:11              [
14:38:11                  "getDeviceMode",
14:38:11                  [
14:38:11                      "{\"value\":\"string\"}"
14:38:11                  ],
14:38:11                  [
14:38:11                      "{\"isOn\":\"bool\"}"
14:38:11                  ],
14:38:11                  "1.0"
14:38:11              ],
14:38:11              [
14:38:11                  "getInterfaceInformation",
14:38:11                  [],
14:38:11                  [
14:38:11                      "{\"productCategory\":\"string\", \"productName\":\"string\", \"modelName\":\"string\", \"serverName\":\"string\", \"interfaceVersion\":\"string\"}"
14:38:11                  ],
14:38:11                  "1.0"
14:38:11              ],
14:38:11              [
14:38:11                  "getLEDIndicatorStatus",
14:38:11                  [],
14:38:11                  [
14:38:11                      "{\"mode\":\"string\", \"status\":\"string\"}"
14:38:11                  ],
14:38:11                  "1.0"
14:38:11              ],
14:38:11              [
14:38:11                  "getNetworkSettings",
14:38:11                  [
14:38:11                      "{\"netif\":\"string\"}"
14:38:11                  ],
14:38:11                  [
14:38:11                      "{\"netif\":\"string\", \"hwAddr\":\"string\", \"ipAddrV4\":\"string\", \"ipAddrV6\":\"string\", \"netmask\":\"string\", \"gateway\":\"string\", \"dns\":\"string*\"}*"
14:38:11                  ],
14:38:11                  "1.0"
14:38:11              ],
14:38:11              [
14:38:11                  "getPowerSavingMode",
14:38:11                  [],
14:38:11                  [
14:38:11                      "{\"mode\":\"string\"}"
14:38:11                  ],
14:38:11                  "1.0"
14:38:11              ],
14:38:11              [
14:38:11                  "getPowerStatus",
14:38:11                  [],
14:38:11                  [
14:38:11                      "{\"status\":\"string\"}"
14:38:11                  ],
14:38:11                  "1.0"
14:38:11              ],
14:38:11              [
14:38:11                  "getRemoteControllerInfo",
14:38:11                  [],
14:38:11                  [
14:38:11                      "{\"bundled\":\"bool\", \"type\":\"string\"}",
14:38:11                      "{\"name\":\"string\", \"value\":\"string\"}*"
14:38:11                  ],
14:38:11                  "1.0"
14:38:11              ],
14:38:11              [
14:38:11                  "getRemoteDeviceSettings",
14:38:11                  [
14:38:11                      "{\"target\":\"string\"}"
14:38:11                  ],
14:38:11                  [
14:38:11                      "{\"target\":\"string\", \"currentValue\":\"string\", \"deviceUIInfo\":\"string\", \"title\":\"string\", \"titleTextID\":\"string\", \"type\":\"string\", \"isAvailable\":\"Boolean\", \"candidate\":\"GeneralSettingsCandidate[]\"}*"
14:38:11                  ],
14:38:11                  "1.0"
14:38:11              ],
14:38:11              [
14:38:11                  "getSystemInformation",
14:38:11                  [],
14:38:11                  [
14:38:11                      "{\"product\":\"string\", \"region\":\"string\", \"language\":\"string\", \"model\":\"string\", \"serial\":\"string\", \"macAddr\":\"string\", \"name\":\"string\", \"generation\":\"string\", \"area\":\"string\", \"cid\":\"string\"}"
14:38:11                  ],
14:38:11                  "1.0"
14:38:11              ],
14:38:11              [
14:38:11                  "getSystemSupportedFunction",
14:38:11                  [],
14:38:11                  [
14:38:11                      "{\"option\":\"string\", \"value\":\"string\"}*"
14:38:11                  ],
14:38:11                  "1.0"
14:38:11              ],
14:38:11              [
14:38:11                  "getWolMode",
14:38:11                  [],
14:38:11                  [
14:38:11                      "{\"enabled\":\"bool\"}"
14:38:11                  ],
14:38:11                  "1.0"
14:38:11              ],
14:38:11              [
14:38:11                  "requestReboot",
14:38:11                  [],
14:38:11                  [],
14:38:11                  "1.0"
14:38:11              ],
14:38:11              [
14:38:11                  "setDeviceMode",
14:38:11                  [
14:38:11                      "{\"value\":\"string\", \"isOn\":\"bool\"}"
14:38:11                  ],
14:38:11                  [],
14:38:11                  "1.0"
14:38:11              ],
14:38:11              [
14:38:11                  "setLanguage",
14:38:11                  [
14:38:11                      "{\"language\":\"string\"}"
14:38:11                  ],
14:38:11                  [],
14:38:11                  "1.0"
14:38:11              ],
14:38:11              [
14:38:11                  "setPowerSavingMode",
14:38:11                  [
14:38:11                      "{\"mode\":\"string\"}"
14:38:11                  ],
14:38:11                  [],
14:38:11                  "1.0"
14:38:11              ],
14:38:11              [
14:38:11                  "setPowerStatus",
14:38:11                  [
14:38:11                      "{\"status\":\"bool\"}"
14:38:11                  ],
14:38:11                  [],
14:38:11                  "1.0"
14:38:11              ],
14:38:11              [
14:38:11                  "setWolMode",
14:38:11                  [
14:38:11                      "{\"enabled\":\"bool\"}"
14:38:11                  ],
14:38:11                  [],
14:38:11                  "1.0"
14:38:11              ],
14:38:11              [
14:38:11                  "getMethodTypes",
14:38:11                  [
14:38:11                      "string"
14:38:11                  ],
14:38:11                  [
14:38:11                      "string",
14:38:11                      "string*",
14:38:11                      "string*",
14:38:11                      "string"
14:38:11                  ],
14:38:11                  "1.0"
14:38:11              ],
14:38:11              [
14:38:11                  "getVersions",
14:38:11                  [],
14:38:11                  [
14:38:11                      "string*"
14:38:11                  ],
14:38:11                  "1.0"
14:38:11              ]
14:38:11          ],
14:38:11          "id": 1
14:38:11      }
14:38:11     
14:38:12      {
14:38:12          "results": [
14:38:12              [
14:38:12                  "getCurrentTime",
14:38:12                  [],
14:38:12                  [
14:38:12                      "{\"dateTime\":\"string\", \"timeZoneOffsetMinute\":\"int\", \"dstOffsetMinute\":\"int\"}"
14:38:12                  ],
14:38:12                  "1.1"
14:38:12              ],
14:38:12              [
14:38:12                  "setLEDIndicatorStatus",
14:38:12                  [
14:38:12                      "{\"mode\":\"string\", \"status\":\"string\"}"
14:38:12                  ],
14:38:12                  [],
14:38:12                  "1.1"
14:38:12              ]
14:38:12          ],
14:38:12          "id": 1
14:38:12      }
14:38:12     
14:38:12      Protocol: /sony/videoScreen
14:38:12      {
14:38:12          "results": [
14:38:12              [
14:38:12                  "getAudioSourceScreen",
14:38:12                  [],
14:38:12                  [
14:38:12                      "{\"screen\":\"string\"}"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "getBannerMode",
14:38:12                  [],
14:38:12                  [
14:38:12                      "{\"currentValue\":\"string\", \"candidate\":\"BannerModeCandidate[]\"}"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "getPipSubScreenPosition",
14:38:12                  [],
14:38:12                  [
14:38:12                      "{\"position\":\"string\"}"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "getSceneSetting",
14:38:12                  [],
14:38:12                  [
14:38:12                      "{\"currentValue\":\"string\", \"candidate\":\"SceneSettingCandidate[]\"}"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "setAudioSourceScreen",
14:38:12                  [
14:38:12                      "{\"screen\":\"string\"}"
14:38:12                  ],
14:38:12                  [],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "setBannerMode",
14:38:12                  [
14:38:12                      "{\"value\":\"string\"}"
14:38:12                  ],
14:38:12                  [],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "setMultiScreenMode",
14:38:12                  [
14:38:12                      "{\"mode\":\"string\", \"option\":\"MultiScreenModeOption\"}"
14:38:12                  ],
14:38:12                  [],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "setPapScreenSize",
14:38:12                  [
14:38:12                      "{\"screen\":\"string\", \"size\":\"string\"}"
14:38:12                  ],
14:38:12                  [],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "setPipSubScreenPosition",
14:38:12                  [
14:38:12                      "{\"position\":\"string\"}"
14:38:12                  ],
14:38:12                  [],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "setSceneSetting",
14:38:12                  [
14:38:12                      "{\"value\":\"string\"}"
14:38:12                  ],
14:38:12                  [],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "getMethodTypes",
14:38:12                  [
14:38:12                      "string"
14:38:12                  ],
14:38:12                  [
14:38:12                      "string",
14:38:12                      "string*",
14:38:12                      "string*",
14:38:12                      "string"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "getVersions",
14:38:12                  [],
14:38:12                  [
14:38:12                      "string*"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ]
14:38:12          ],
14:38:12          "id": 1
14:38:12      }
14:38:12     
14:38:12      {
14:38:12          "results": [
14:38:12              [
14:38:12                  "getMultiScreenMode",
14:38:12                  [],
14:38:12                  [
14:38:12                      "{\"mode\":\"string\", \"option\":\"MultiScreenModeOption\"}"
14:38:12                  ],
14:38:12                  "1.1"
14:38:12              ],
14:38:12              [
14:38:12                  "requestToNotifyScreenState",
14:38:12                  [
14:38:12                      "{\"multiScreenMode\":\"string\", \"pipSubScreenPosition\":\"string\", \"audioSourceScreen\":\"string\", \"option\":\"MultiScreenModeOption\"}"
14:38:12                  ],
14:38:12                  [
14:38:12                      "{\"multiScreenMode\":\"string\", \"pipSubScreenPosition\":\"string\", \"audioSourceScreen\":\"string\", \"option\":\"MultiScreenModeOption\"}"
14:38:12                  ],
14:38:12                  "1.1"
14:38:12              ]
14:38:12          ],
14:38:12          "id": 1
14:38:12      }
14:38:12     
14:38:12      Protocol: /sony/audio
14:38:12      {
14:38:12          "results": [
14:38:12              [
14:38:12                  "getSpeakerSettings",
14:38:12                  [
14:38:12                      "{\"target\":\"string\"}"
14:38:12                  ],
14:38:12                  [
14:38:12                      "{\"target\":\"string\", \"currentValue\":\"string\", \"deviceUIInfo\":\"string\", \"title\":\"string\", \"titleTextID\":\"string\", \"type\":\"string\", \"isAvailable\":\"Boolean\", \"candidate\":\"GeneralSettingsCandidate[]\"}*"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "getVolumeInformation",
14:38:12                  [],
14:38:12                  [
14:38:12                      "{\"target\":\"string\", \"volume\":\"int\", \"mute\":\"bool\", \"maxVolume\":\"int\", \"minVolume\":\"int\"}*"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "setAudioMute",
14:38:12                  [
14:38:12                      "{\"status\":\"bool\"}"
14:38:12                  ],
14:38:12                  [
14:38:12                      "int"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "setAudioVolume",
14:38:12                  [
14:38:12                      "{\"target\":\"string\", \"volume\":\"string\"}"
14:38:12                  ],
14:38:12                  [
14:38:12                      "int"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "setSpeakerSettings",
14:38:12                  [
14:38:12                      "{\"settings\":\"GeneralSettings[]\"}"
14:38:12                  ],
14:38:12                  [],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "getMethodTypes",
14:38:12                  [
14:38:12                      "string"
14:38:12                  ],
14:38:12                  [
14:38:12                      "string",
14:38:12                      "string*",
14:38:12                      "string*",
14:38:12                      "string"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "getVersions",
14:38:12                  [],
14:38:12                  [
14:38:12                      "string*"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ]
14:38:12          ],
14:38:12          "id": 1
14:38:12      }
14:38:12     
14:38:12      {
14:38:12          "results": [
14:38:12              [
14:38:12                  "getSoundSettings",
14:38:12                  [
14:38:12                      "{\"target\":\"string\"}"
14:38:12                  ],
14:38:12                  [
14:38:12                      "{\"target\":\"string\", \"currentValue\":\"string\", \"deviceUIInfo\":\"string\", \"title\":\"string\", \"titleTextID\":\"string\", \"type\":\"string\", \"isAvailable\":\"Boolean\", \"candidate\":\"GeneralSettingsCandidate[]\"}*"
14:38:12                  ],
14:38:12                  "1.1"
14:38:12              ],
14:38:12              [
14:38:12                  "setSoundSettings",
14:38:12                  [
14:38:12                      "{\"settings\":\"GeneralSettings[]\"}"
14:38:12                  ],
14:38:12                  [],
14:38:12                  "1.1"
14:38:12              ]
14:38:12          ],
14:38:12          "id": 1
14:38:12      }
14:38:12     
14:38:12      {
14:38:12          "results": [
14:38:12              [
14:38:12                  "setAudioVolume",
14:38:12                  [
14:38:12                      "{\"target\":\"string\", \"volume\":\"string\", \"ui\":\"string\"}"
14:38:12                  ],
14:38:12                  [],
14:38:12                  "1.2"
14:38:12              ]
14:38:12          ],
14:38:12          "id": 1
14:38:12      }
14:38:12     
14:38:12      Protocol: /sony/avContent
14:38:12      {
14:38:12          "results": [
14:38:12              [
14:38:12                  "deleteContent",
14:38:12                  [
14:38:12                      "{\"uri\":\"string\"}"
14:38:12                  ],
14:38:12                  [],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "getContentCount",
14:38:12                  [
14:38:12                      "{\"source\":\"string\", \"type\":\"string\"}"
14:38:12                  ],
14:38:12                  [
14:38:12                      "{\"count\":\"int\"}"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "getContentList",
14:38:12                  [
14:38:12                      "{\"source\":\"string\", \"stIdx\":\"int\", \"cnt\":\"int\", \"type\":\"string\"}"
14:38:12                  ],
14:38:12                  [
14:38:12                      "{\"uri\":\"string\", \"title\":\"string\", \"index\":\"int\", \"dispNum\":\"string\", \"originalDispNum\":\"string\", \"tripletStr\":\"string\", \"programNum\":\"int\", \"programMediaType\":\"string\", \"directRemoteNum\":\"int\", \"startDateTime\":\"string\", \"durationSec\":\"int\", \"channelName\":\"string\", \"fileSizeByte\":\"int\", \"isProtected\":\"bool\", \"isAlreadyPlayed\":\"bool\"}*"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "getCurrentExternalInputsStatus",
14:38:12                  [],
14:38:12                  [
14:38:12                      "{\"uri\":\"string\", \"title\":\"string\", \"connection\":\"bool\", \"label\":\"string\", \"icon\":\"string\"}*"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "getParentalRatingSettings",
14:38:12                  [],
14:38:12                  [
14:38:12                      "{\"ratingTypeAge\":\"int\", \"ratingTypeSony\":\"string\", \"ratingCountry\":\"string\", \"ratingCustomTypeTV\":\"string*\", \"ratingCustomTypeMpaa\":\"string\", \"ratingCustomTypeCaEnglish\":\"string\", \"ratingCustomTypeCaFrench\":\"string\", \"unratedLock\":\"bool\"}"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "getPlayingContentInfo",
14:38:12                  [],
14:38:12                  [
14:38:12                      "{\"uri\":\"string\", \"source\":\"string\", \"title\":\"string\", \"dispNum\":\"string\", \"originalDispNum\":\"string\", \"tripletStr\":\"string\", \"programNum\":\"int\", \"programTitle\":\"string\", \"startDateTime\":\"string\", \"durationSec\":\"int\", \"mediaType\":\"string\", \"playSpeed\":\"string\", \"bivl_serviceId\":\"string\", \"bivl_assetId\":\"string\", \"bivl_provider\":\"string\"}"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "getSchemeList",
14:38:12                  [],
14:38:12                  [
14:38:12                      "{\"scheme\":\"string\"}*"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "getSourceList",
14:38:12                  [
14:38:12                      "{\"scheme\":\"string\"}"
14:38:12                  ],
14:38:12                  [
14:38:12                      "{\"source\":\"string\"}*"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "setDeleteProtection",
14:38:12                  [
14:38:12                      "{\"uri\":\"string\", \"isProtected\":\"bool\"}"
14:38:12                  ],
14:38:12                  [],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "setFavoriteContentList",
14:38:12                  [
14:38:12                      "{\"favSource\":\"string\", \"contents\":\"string*\"}"
14:38:12                  ],
14:38:12                  [],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "setPlayContent",
14:38:12                  [
14:38:12                      "{\"uri\":\"string\"}"
14:38:12                  ],
14:38:12                  [],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "setPlayTvContent",
14:38:12                  [
14:38:12                      "{\"channel\":\"string\"}"
14:38:12                  ],
14:38:12                  [],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "setTvContentVisibility",
14:38:12                  [
14:38:12                      "{\"uri\":\"string\", \"epgVisibility\":\"string\", \"channelSurfingVisibility\":\"string\", \"visibility\":\"string\"}*"
14:38:12                  ],
14:38:12                  [],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "getMethodTypes",
14:38:12                  [
14:38:12                      "string"
14:38:12                  ],
14:38:12                  [
14:38:12                      "string",
14:38:12                      "string*",
14:38:12                      "string*",
14:38:12                      "string"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "getVersions",
14:38:12                  [],
14:38:12                  [
14:38:12                      "string*"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ]
14:38:12          ],
14:38:12          "id": 1
14:38:12      }
14:38:12     
14:38:12      {
14:38:12          "results": [
14:38:12              [
14:38:12                  "getContentCount",
14:38:12                  [
14:38:12                      "{\"source\":\"string\", \"type\":\"string\", \"target\":\"string\"}"
14:38:12                  ],
14:38:12                  [
14:38:12                      "{\"count\":\"int\"}"
14:38:12                  ],
14:38:12                  "1.1"
14:38:12              ],
14:38:12              [
14:38:12                  "getCurrentExternalInputsStatus",
14:38:12                  [],
14:38:12                  [
14:38:12                      "{\"uri\":\"string\", \"title\":\"string\", \"connection\":\"bool\", \"label\":\"string\", \"icon\":\"string\", \"status\":\"string\"}*"
14:38:12                  ],
14:38:12                  "1.1"
14:38:12              ],
14:38:12              [
14:38:12                  "setPlayTvContent",
14:38:12                  [
14:38:12                      "{\"channel\":\"PlayTvChannel\", \"source\":\"string\", \"sourceType\":\"string\", \"broadcastFreqName\":\"string\", \"ignoreVisibilitySettings\":\"bool\"}"
14:38:12                  ],
14:38:12                  [],
14:38:12                  "1.1"
14:38:12              ]
14:38:12          ],
14:38:12          "id": 1
14:38:12      }
14:38:12     
14:38:12      {
14:38:12          "results": [
14:38:12              [
14:38:12                  "getContentList",
14:38:12                  [
14:38:12                      "{\"source\":\"string\", \"stIdx\":\"int\", \"cnt\":\"int\", \"type\":\"string\", \"target\":\"string\"}"
14:38:12                  ],
14:38:12                  [
14:38:12                      "{\"uri\":\"string\", \"title\":\"string\", \"index\":\"int\", \"dispNum\":\"string\", \"originalDispNum\":\"string\", \"tripletStr\":\"string\", \"programNum\":\"int\", \"programMediaType\":\"string\", \"directRemoteNum\":\"int\", \"epgVisibility\":\"string\", \"channelSurfingVisibility\":\"string\", \"visibility\":\"string\", \"startDateTime\":\"string\", \"channelName\":\"string\", \"fileSizeByte\":\"int\", \"isProtected\":\"bool\", \"isAlreadyPlayed\":\"bool\", \"productID\":\"string\", \"contentType\":\"string\", \"storageUri\":\"string\", \"videoCodec\":\"string\", \"chapterCount\":\"int\", \"durationSec\":\"double\", \"audioCodec\":\"string*\", \"audioFrequency\":\"string*\", \"audioChannel\":\"string*\", \"subtitleLanguage\":\"string*\", \"subtitleTitle\":\"string*\", \"parentalRating\":\"string*\", \"parentalSystem\":\"string*\", \"parentalCountry\":\"string*\", \"sizeMB\":\"int\", \"createdTime\":\"string\", \"userContentFlag\":\"bool\"}*"
14:38:12                  ],
14:38:12                  "1.2"
14:38:12              ]
14:38:12          ],
14:38:12          "id": 1
14:38:12      }
14:38:12     
14:38:12      Protocol: /sony/recording
14:38:12      {
14:38:12          "results": [
14:38:12              [
14:38:12                  "addSchedule",
14:38:12                  [
14:38:12                      "{\"type\":\"string\", \"uri\":\"string\", \"title\":\"string\", \"startDateTime\":\"string\", \"durationSec\":\"int\", \"repeatType\":\"string\", \"quality\":\"string\"}"
14:38:12                  ],
14:38:12                  [
14:38:12                      "{\"annotation\":\"int\"}"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "deleteSchedule",
14:38:12                  [
14:38:12                      "{\"id\":\"string\", \"type\":\"string\", \"uri\":\"string\", \"title\":\"string\", \"startDateTime\":\"string\", \"durationSec\":\"int\"}"
14:38:12                  ],
14:38:12                  [],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "getConflictScheduleList",
14:38:12                  [
14:38:12                      "{\"uri\":\"string\", \"title\":\"string\", \"startDateTime\":\"string\", \"durationSec\":\"int\", \"repeatType\":\"string\"}"
14:38:12                  ],
14:38:12                  [
14:38:12                      "{\"id\":\"string\", \"title\":\"string\", \"type\":\"string\", \"uri\":\"string\", \"startDateTime\":\"string\", \"durationSec\":\"int\", \"repeatType\":\"string\"}*"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "getHistoryList",
14:38:12                  [
14:38:12                      "{\"stIdx\":\"int\", \"cnt\":\"int\"}"
14:38:12                  ],
14:38:12                  [
14:38:12                      "{\"id\":\"string\", \"title\":\"string\", \"channelName\":\"string\", \"startDateTime\":\"string\", \"durationSec\":\"int\", \"reasonId\":\"int\", \"reasonMsg\":\"string\"}*"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "getRecordingStatus",
14:38:12                  [],
14:38:12                  [
14:38:12                      "{\"status\":\"string\"}"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "getScheduleList",
14:38:12                  [
14:38:12                      "{\"stIdx\":\"int\", \"cnt\":\"int\"}"
14:38:12                  ],
14:38:12                  [
14:38:12                      "{\"id\":\"string\", \"type\":\"string\", \"uri\":\"string\", \"title\":\"string\", \"channelName\":\"string\", \"startDateTime\":\"string\", \"durationSec\":\"int\", \"repeatType\":\"string\", \"overlapStatus\":\"string\", \"recordingStatus\":\"string\", \"quality\":\"string\"}*"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "getSupportedRepeatType",
14:38:12                  [],
14:38:12                  [
14:38:12                      "string*"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "getMethodTypes",
14:38:12                  [
14:38:12                      "string"
14:38:12                  ],
14:38:12                  [
14:38:12                      "string",
14:38:12                      "string*",
14:38:12                      "string*",
14:38:12                      "string"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "getVersions",
14:38:12                  [],
14:38:12                  [
14:38:12                      "string*"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ]
14:38:12          ],
14:38:12          "id": 1
14:38:12      }
14:38:12     
14:38:12      {
14:38:12          "results": [
14:38:12              [
14:38:12                  "addSchedule",
14:38:12                  [
14:38:12                      "{\"type\":\"string\", \"uri\":\"string\", \"title\":\"string\", \"startDateTime\":\"string\", \"durationSec\":\"int\", \"repeatType\":\"string\", \"quality\":\"string\", \"eventId\":\"string\"}"
14:38:12                  ],
14:38:12                  [
14:38:12                      "{\"annotation\":\"int\"}"
14:38:12                  ],
14:38:12                  "1.1"
14:38:12              ],
14:38:12              [
14:38:12                  "getScheduleList",
14:38:12                  [
14:38:12                      "{\"stIdx\":\"int\", \"cnt\":\"int\"}"
14:38:12                  ],
14:38:12                  [
14:38:12                      "{\"id\":\"string\", \"type\":\"string\", \"uri\":\"string\", \"title\":\"string\", \"channelName\":\"string\", \"startDateTime\":\"string\", \"durationSec\":\"int\", \"repeatType\":\"string\", \"overlapStatus\":\"string\", \"recordingStatus\":\"string\", \"quality\":\"string\", \"eventId\":\"string\"}*"
14:38:12                  ],
14:38:12                  "1.1"
14:38:12              ]
14:38:12          ],
14:38:12          "id": 1
14:38:12      }
14:38:12     
14:38:12      {
14:38:12          "results": [
14:38:12              [
14:38:12                  "addSchedule",
14:38:12                  [
14:38:12                      "{\"type\":\"string\", \"uri\":\"string\", \"title\":\"string\", \"startDateTime\":\"string\", \"durationSec\":\"int\", \"repeatType\":\"string\", \"quality\":\"string\", \"eventId\":\"string\", \"id\":\"string\", \"avoidDoubleRecording\":\"string\", \"mode\":\"string\", \"priority\":\"string\", \"storageUri\":\"string\", \"override\":\"string\", \"autoTransfer\":\"string\", \"trackedTitle\":\"string\", \"videoIndex\":\"int\", \"audioIndex\":\"int\", \"subtitleIndex\":\"int\", \"groupId\":\"string\", \"recordItemWithParentalLock\":\"string\", \"ignoreError\":\"string\"}"
14:38:12                  ],
14:38:12                  [
14:38:12                      "{\"annotation\":\"int\", \"conflict\":\"ConflictSchedule[]\"}"
14:38:12                  ],
14:38:12                  "1.2"
14:38:12              ]
14:38:12          ],
14:38:12          "id": 1
14:38:12      }
14:38:12     
14:38:12      Protocol: /sony/appControl
14:38:12      {
14:38:12          "results": [
14:38:12              [
14:38:12                  "getApplicationList",
14:38:12                  [],
14:38:12                  [
14:38:12                      "{\"title\":\"string\", \"uri\":\"string\", \"icon\":\"string\", \"data\":\"string\"}*"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "getApplicationStatusList",
14:38:12                  [],
14:38:12                  [
14:38:12                      "{\"name\":\"string\", \"status\":\"string\"}*"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "getWebAppStatus",
14:38:12                  [],
14:38:12                  [
14:38:12                      "{\"active\":\"bool\", \"url\":\"string\"}"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "setActiveApp",
14:38:12                  [
14:38:12                      "{\"uri\":\"string\", \"data\":\"string\"}"
14:38:12                  ],
14:38:12                  [],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "setTextForm",
14:38:12                  [
14:38:12                      "string"
14:38:12                  ],
14:38:12                  [
14:38:12                      "int"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "terminateApps",
14:38:12                  [],
14:38:12                  [],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "getMethodTypes",
14:38:12                  [
14:38:12                      "string"
14:38:12                  ],
14:38:12                  [
14:38:12                      "string",
14:38:12                      "string*",
14:38:12                      "string*",
14:38:12                      "string"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "getVersions",
14:38:12                  [],
14:38:12                  [
14:38:12                      "string*"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ]
14:38:12          ],
14:38:12          "id": 1
14:38:12      }
14:38:12     
14:38:12      {
14:38:12          "results": [
14:38:12              [
14:38:12                  "getTextForm",
14:38:12                  [
14:38:12                      "{\"encKey\":\"string\"}"
14:38:12                  ],
14:38:12                  [
14:38:12                      "{\"text\":\"string\"}"
14:38:12                  ],
14:38:12                  "1.1"
14:38:12              ],
14:38:12              [
14:38:12                  "setTextForm",
14:38:12                  [
14:38:12                      "{\"encKey\":\"string\", \"text\":\"string\"}"
14:38:12                  ],
14:38:12                  [],
14:38:12                  "1.1"
14:38:12              ]
14:38:12          ],
14:38:12          "id": 1
14:38:12      }
14:38:12     
14:38:12      Protocol: /sony/browser
14:38:12      {
14:38:12          "results": [
14:38:12              [
14:38:12                  "actBrowserControl",
14:38:12                  [
14:38:12                      "{\"control\":\"string\"}"
14:38:12                  ],
14:38:12                  [
14:38:12                      "int"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "getTextUrl",
14:38:12                  [],
14:38:12                  [
14:38:12                      "{\"url\":\"string\", \"title\":\"string\", \"type\":\"string\", \"favicon\":\"string\"}"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "setTextUrl",
14:38:12                  [
14:38:12                      "{\"url\":\"string\", \"title\":\"string\", \"type\":\"string\", \"favicon\":\"string\"}"
14:38:12                  ],
14:38:12                  [
14:38:12                      "int"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "getMethodTypes",
14:38:12                  [
14:38:12                      "string"
14:38:12                  ],
14:38:12                  [
14:38:12                      "string",
14:38:12                      "string*",
14:38:12                      "string*",
14:38:12                      "string"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "getVersions",
14:38:12                  [],
14:38:12                  [
14:38:12                      "string*"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ]
14:38:12          ],
14:38:12          "id": 1
14:38:12      }
14:38:12     
14:38:12      Protocol: /sony/notification
14:38:12      Traceback (most recent call last):
14:38:12        File "9", line 112, in <module>
14:38:12      KeyError: 'result'
14:38:12      Protocol: /sony/accessControl
14:38:12      {
14:38:12          "results": [
14:38:12              [
14:38:12                  "actRegister",
14:38:12                  [
14:38:12                      "{\"clientid\":\"string\", \"nickname\":\"string\", \"level\":\"string\"}",
14:38:12                      "{\"function\":\"string\", \"value\":\"string\"}*"
14:38:12                  ],
14:38:12                  [],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "getMethodTypes",
14:38:12                  [
14:38:12                      "string"
14:38:12                  ],
14:38:12                  [
14:38:12                      "string",
14:38:12                      "string*",
14:38:12                      "string*",
14:38:12                      "string"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ],
14:38:12              [
14:38:12                  "getVersions",
14:38:12                  [],
14:38:12                  [
14:38:12                      "string*"
14:38:12                  ],
14:38:12                  "1.0"
14:38:12              ]
14:38:12          ],
14:38:12          "id": 1
14:38:12      }
14:38:12     
blaher
Experienced User
 
Posts: 463
Joined: Thu Nov 17, 2011 1:27 am

Re: Sony TV Network Remote Control Plugin

Postby blaher » Sun Aug 27, 2017 4:44 am

Code: Select all
14:37:58: 2 MainThread: ConfigDialog.GetEvent => (5100, (u'import json\nimport requests\nimport traceback\n\nIP_ADDRESS = \'192.168.168.198\'\n\ngetVersions = json.dumps({"id":1,"method":"getVersions","version":"1.0","params":[]})\n\n\ntry:\n    print \'Protocol:\', \'/sony/guide\'\n    response = requests.post(\'http://%s/sony/guide\' % IP_ADDRESS, data=getVersions.encode(\'UTF-8\'))\n    versions = json.loads(response.content.decode(\'utf-8\'))[\'result\'][0]\n    for version in versions:\n        version = json.dumps({"id":1,"method":"getMethodTypes","version":"1.0","params":[version]})\n        response = requests.post(\'http://%s/sony/guide\' % IP_ADDRESS, data=version.encode(\'UTF-8\'))\n        print json.dumps(json.loads(response.content.decode(\'utf-8\')), indent=4)\n        print\nexcept:\n    traceback.print_exc()\n   \ntry:\n    print \'Protocol:\', \'/sony/system\'\n    response = requests.post(\'http://%s/sony/system\' % IP_ADDRESS, data=getVersions.encode(\'UTF-8\'))\n    versions = json.loads(response.content.decode(\'utf-8\'))[\'result\'][0]\n    for version in versions:\n        version = json.dumps({"id":1,"method":"getMethodTypes","version":"1.0","params":[version]})\n        response = requests.post(\'http://%s/sony/system\' % IP_ADDRESS, data=version.encode(\'UTF-8\'))\n        print json.dumps(json.loads(response.content.decode(\'utf-8\')), indent=4)\n        print\nexcept:\n    traceback.print_exc()\n\ntry:\n    print \'Protocol:\', \'/sony/videoScreen\'\n    response = requests.post(\'http://%s/sony/videoScreen\' % IP_ADDRESS, data=getVersions.encode(\'UTF-8\'))\n    versions = json.loads(response.content.decode(\'utf-8\'))[\'result\'][0]\n    for version in versions:\n        version = json.dumps({"id":1,"method":"getMethodTypes","version":"1.0","params":[version]})\n        response = requests.post(\'http://%s/sony/videoScreen\' % IP_ADDRESS, data=version.encode(\'UTF-8\'))\n        print json.dumps(json.loads(response.content.decode(\'utf-8\')), indent=4)\n        print\nexcept:\n    traceback.print_exc()\n\n\ntry:\n    print \'Protocol:\', \'/sony/audio\'\n    response = requests.post(\'http://%s/sony/audio\' % IP_ADDRESS, data=getVersions.encode(\'UTF-8\'))\n    versions = json.loads(response.content.decode(\'utf-8\'))[\'result\'][0]\n    for version in versions:\n        version = json.dumps({"id":1,"method":"getMethodTypes","version":"1.0","params":[version]})\n        response = requests.post(\'http://%s/sony/audio\' % IP_ADDRESS, data=version.encode(\'UTF-8\'))\n        print json.dumps(json.loads(response.content.decode(\'utf-8\')), indent=4)\n        print\nexcept:\n    traceback.print_exc()\n\n\ntry:\n    print \'Protocol:\', \'/sony/avContent\'\n    response = requests.post(\'http://%s/sony/avContent\' % IP_ADDRESS, data=getVersions.encode(\'UTF-8\'))\n    versions = json.loads(response.content.decode(\'utf-8\'))[\'result\'][0]\n    for version in versions:\n        version = json.dumps({"id":1,"method":"getMethodTypes","version":"1.0","params":[version]})\n        response = requests.post(\'http://%s/sony/avContent\' % IP_ADDRESS, data=version.encode(\'UTF-8\'))\n        print json.dumps(json.loads(response.content.decode(\'utf-8\')), indent=4)\n        print\nexcept:\n    traceback.print_exc()\n\n\ntry:\n    print \'Protocol:\', \'/sony/recording\'\n    response = requests.post(\'http://%s/sony/recording\' % IP_ADDRESS, data=getVersions.encode(\'UTF-8\'))\n    versions = json.loads(response.content.decode(\'utf-8\'))[\'result\'][0]\n    for version in versions:\n        version = json.dumps({"id":1,"method":"getMethodTypes","version":"1.0","params":[version]})\n        response = requests.post(\'http://%s/sony/recording\' % IP_ADDRESS, data=version.encode(\'UTF-8\'))\n        print json.dumps(json.loads(response.content.decode(\'utf-8\')), indent=4)\n        print\nexcept:\n    traceback.print_exc()\n\ntry:\n    print \'Protocol:\', \'/sony/appControl\'\n    response = requests.post(\'http://%s/sony/appControl\' % IP_ADDRESS, data=getVersions.encode(\'UTF-8\'))\n    versions = json.loads(response.content.decode(\'utf-8\'))[\'result\'][0]\n    for version in versions:\n        version = json.dumps({"id":1,"method":"getMethodTypes","version":"1.0","params":[version]})\n        response = requests.post(\'http://%s/sony/appControl\' % IP_ADDRESS, data=version.encode(\'UTF-8\'))\n        print json.dumps(json.loads(response.content.decode(\'utf-8\')), indent=4)\n        print\nexcept:\n    traceback.print_exc()\n   \ntry:   \n    print \'Protocol:\', \'/sony/browser\'\n    response = requests.post(\'http://%s/sony/browser\' % IP_ADDRESS, data=getVersions.encode(\'UTF-8\'))\n    versions = json.loads(response.content.decode(\'utf-8\'))[\'result\'][0]\n    for version in versions:\n        version = json.dumps({"id":1,"method":"getMethodTypes","version":"1.0","params":[version]})\n        response = requests.post(\'http://%s/sony/browser\' % IP_ADDRESS, data=version.encode(\'UTF-8\'))\n        print json.dumps(json.loads(response.content.decode(\'utf-8\')), indent=4)\n        print\nexcept:\n    traceback.print_exc()\n\ntry:\n    print \'Protocol:\', \'/sony/notification\'\n    response = requests.post(\'http://%s/sony/notification\' % IP_ADDRESS, data=getVersions.encode(\'UTF-8\'))\n    versions = json.loads(response.content.decode(\'utf-8\'))[\'result\'][0]\n    for version in versions:\n        version = json.dumps({"id":1,"method":"getMethodTypes","version":"1.0","params":[version]})\n        response = requests.post(\'http://%s/sony/notification\' % IP_ADDRESS, data=version.encode(\'UTF-8\'))\n        print json.dumps(json.loads(response.content.decode(\'utf-8\')), indent=4)\n        print\nexcept:\n    traceback.print_exc()\n\ntry:\n    print \'Protocol:\', \'/sony/accessControl\'\n    response = requests.post(\'http://%s/sony/accessControl\' % IP_ADDRESS, data=getVersions.encode(\'UTF-8\'))\n    versions = json.loads(response.content.decode(\'utf-8\'))[\'result\'][0]\n    for version in versions:\n        version = json.dumps({"id":1,"method":"getMethodTypes","version":"1.0","params":[version]})\n        response = requests.post(\'http://%s/sony/accessControl\' % IP_ADDRESS, data=version.encode(\'UTF-8\'))\n        print json.dumps(json.loads(response.content.decode(\'utf-8\')), indent=4)\n        print\nexcept:\n    traceback.print_exc()',))


The .log, if that's easier to read.
blaher
Experienced User
 
Posts: 463
Joined: Thu Nov 17, 2011 1:27 am

Re: Sony TV Network Remote Control Plugin

Postby kgschlosser » Sun Aug 27, 2017 9:29 am

I'm all set. Thanks for the log tho.. I have about 95% of the back end running. and it is working well too. @topix has a Sony TV and was kind enough to lend it to me (in the virtual sense) he port forwarded to the TV for me so I could test things.

But I have gotten almost all of it done right down to getting the icons for the applications 8) :D. This has been a tricky bugger because I wanted to keep it all instance orientated. I plan on using an object based list control for displaying the various components. I have also made the back end so it can run without EG. I am thinking of using the Windows notification system, named pipes and a call back HTTP system to transmit events and also be able to control it externally. but have it be a complete standalone program.

From my searching there is no complete API for controlling these Bravia TV's but there is soon going to be one.
If you like the work I have been doing then feel free to Image
User avatar
kgschlosser
Site Admin
 
Posts: 2699
Joined: Fri Jun 05, 2015 5:43 am
Location: Rocky Mountains, Colorado USA

Re: Sony TV Network Remote Control Plugin

Postby blaher » Thu Aug 31, 2017 5:30 am

Sounds great. :) Looking forward to a test drive. :D
blaher
Experienced User
 
Posts: 463
Joined: Thu Nov 17, 2011 1:27 am

Previous

Return to Plugin Support

Who is online

Users browsing this forum: No registered users and 6 guests