Aller au contenu
mikael2235

Piloter Tv Sony Bravia Via Hc2

Recommended Posts

Bonjour à  tous,

 

J'aimerai avoir votre aide sur le pilotage d'une TV connectée Sony Bravia, mon modèle est le KDL46NX700. Elle est connectée en ethernet.

Je souhaiterai donc l'associer à  ma HC2 pour pouvoir piloter via des scénarios.

 

J'ai trouvé des sujets sur le net avec les commandes HTTP à  envoyer en POST :

http://www.openremote.org/display/forums/Sony+TV+HTTP+control

https://wolstenhol.me/blog/using-tasker-autovoice-yatse-and-xbmc

 

 

Voilà  ce que j'ai essayé de faire ds un module virtuel, mais ça ne semble pas fonctionner, et je trouve bizarre de mettre du xml directement dans une commande POST :

HC2 = Net.FHttp("192.168.0.80/sony/IRCC/")
HC2:POST("<?xml version="1.0" encoding="utf-8"?><s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><s:Body><u:X_SendIRCC xmlns:u="urn:schemas-sony-com:service:IRCC:1"><IRCCCode>AAAAAQAAAAEAAAASAw==</IRCCCode></u:X_SendIRCC></s:Body></s:Envelope>")

Avez vous dejà  essayer ? Ou tout simplement si vous etes plus calé que moi, j'attends votre aide.

Merci. Mikael

Partager ce message


Lien à poster
Partager sur d’autres sites

J'essaye d'avancer avec des exemples que je trouve sur le forum et sur internet.

Mais je dois avoir une erreur de syntaxe dans mon code.

 

Voilà  ce que me met le debogueur :

[ERROR] 16:51:41: line FTcpSocket:
local command = "AAAAAQAAAAEAAAAQAw=="; -- menu home
--------------------------------------------------------

local selfId = fibaro:getSelfId();

local _deviceIp = fibaro:get(selfId, "IPAddress");

local _devicePort = fibaro:get(selfId, "TCPPort");
--SonyTvTcp = Net.FTcpSocket(_deviceIp, _devicePort)
SonyTvTcp = Net.FTcpSocket("192.168.0.80/sony/ircc","")
requestMethod = "POST /nrc/control_0 HTTP/1.1"
custom_header = "SOAPACTION: \"urn:schemas-sony-com:service:IRCC:1#X_SendIRCC\""

local payload = "<?xml version=\"1.0\"?><s:Envelope xmlns:s=\"http://schemas.xmlsoap.org/soap/envelope/\" s:encodingStyle=\"http://schemas.xmlsoap.org/soap/encoding/\"><s:Body><u:X_SendIRCC xmlns:u=\"urn:schemas-sony-com:service:IRCC:1\"><IRCCCode>"..command.."</IRCCCode></u:X_SendIRCC></s:Body></s:Envelope>"

tcpstring =
requestMethod .. "\r\n" ..
"CONTENT-LENGTH: " .. string.len(payload) .. "\r\n" ..
custom_header .. "\r\n\r\n" ..
payload
 
bytes, errorCode = SonyTvTcp:write(tcpstring)

if errorCode == 0 then
	fibaro:debug("tcp write OK")
else
	fibaro:debug("tcp write failed")
end

Partager ce message


Lien à poster
Partager sur d’autres sites
Invité

Bonjour mikael2235, je voulais savoir si tu avais pu avancer sur le contrôle de ta TV Sony ? Je viens d'acquérir une KD-65X8509C, et souhaitais pouvoir la contrôler depuis ma HC2, hélas sans succès.

 

  • La télé fonctionne avec le dernier firmware disponible
  • Je peux pinguer les deux équipements depuis mon PC, je sais donc que la couche réseau est bonne
  • J'ai installé le plugin TV Sony dans ma HC2 (4.056)
  • J'ai rentré manuellement l'adresse IP (je ne peux pas découvrir la télé depuis le menu de recherche). 
  • Quad je cliques sur "request authorisation key" , rien ne se passe. Cependant, je sais que ceci fonctionne bien avec des applications tierces. 

quelqu'un aurai-t'il une idée ? ai-je oublié quelque chose ?
Merci pour votre aide. 

Partager ce message


Lien à poster
Partager sur d’autres sites

Salut MrGoose,

 

Je t'avouerai que je n'ai pas trop creuser... ca ne fonctionne toujours pas, mais si tu trouves une solution je suis preneur !!

;-)

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour,

 

Je ne sais pas si vous avez toujours besoin d'aide, mais voici ce qui a marché pour moi  (Ce code mets la télé sur HDMI1) :

HC2 = Net.FHttp("192.168.1.144","80")
xml = '<?xml version="1.0"?><s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><s:Body><u:X_SendIRCC xmlns:u="urn:schemas-sony-com:service:IRCC:1"><IRCCCode>AAAAAgAAABoAAABaAw==</IRCCCode></u:X_SendIRCC></s:Body></s:Envelope>'
response, status, errorCode = HC2:POST("/sony/IRCC", xml)
fibaro:debug(response)
fibaro:debug(status)

Le code ci-dessus pour faire simple, ce qu'il faut vraiment faire c'est de renseigner l'adresse ip et le port dans le virtual device et mettre ce code :

local thisdevice = fibaro:getSelfId()
local ip = fibaro:getValue(thisdevice, 'IPAddress')
local port = fibaro:getValue(thisdevice, 'TCPPort')
 
HC2 = Net.FHttp(ip, port)

Sinon il faudrait changer le code de tous les boutons si l'adresse ip change.

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Hello kaspi,

 

Super de voir que ça fonctionne pour toi !!

Je viens d'essayer avec le code que tu as donné, mais je n'y arrive toujours pas :-(

 

Peux tu exporter ton module virtuel  et le poster ici (ou donner un lien) ?

 

Merci d'avance !

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour,

 

Comme je suis nouveau sur le forum, je n'ai pas trouvé comment faire pour attacher le module virtuel si tu peux m'aider.

 

Sinon, post ton code pour voir.

 

@+

Partager ce message


Lien à poster
Partager sur d’autres sites

effectivement je n'arrive pas le faire fonctionner non plus

si tu pouvait détailler d'avantage sur que tu a mis dans ton virtual divice.

Merci

Partager ce message


Lien à poster
Partager sur d’autres sites

Je vais détailler les étapes que j'ai suivies pour le virtual device : 

  1. Tout d'abord, il faut autoriser la Fibaro HC2 à  envoyer les requêtes HTTP à  la TV SONY
    • Pour ce faire, la manière la plus simple est de télécharger le plugin SONY dans la liste des Plugins Fibaro / Multimedia
    • A l'aide du plugin, ajoutez l'adresse IP de la Télé et cliquez sur le bouton "Rechercher"
    • Cliquez sur le bouton : "request authorization key" 
    • Un code va s'afficher dans la télé il faut donc le rentrer dans le module. (je me rappelle que ça n'a pas marché chez mois du premier coup, j'ai du faire Taper la touche Enter sur le clavier, je ne me rappelle pas très bien)
    • Une fois, la Fibaro HC2 est autorisée, on peut utiliser la télécommande du plugin pour contrôler la Télé. Si cette étape est bonne, il faut passer au point N* 2
  2. Créez un virtual Device
  3. Saisissez l'adresse IP de la télé (celle qui a marché pour le point N* 1) et le numéro de port 80
  4. Créez un bouton; 
  5. Choisissez "Code LUA"
  6. Copiez / Collez ce code : (Surtout ne changez rien, même PAS les guillemets et apostrophes)
    1. local thisdevice = fibaro:getSelfId()
      local ip = fibaro:getValue(thisdevice, 'IPAddress')
      local port = fibaro:getValue(thisdevice, 'TCPPort')
       
      HC2 = Net.FHttp(ip, port)
      xml = '<?xml version="1.0"?><s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><s:Body><u:X_SendIRCC xmlns:u="urn:schemas-sony-com:service:IRCC:1"><IRCCCode>AAAAAQAAAAEAAAAvAw==</IRCCCode></u:X_SendIRCC></s:Body></s:Envelope>'
      response, status, errorCode = HC2:POST("/sony/IRCC", xml)
      
      fibaro:debug(response)
      fibaro:debug(status)
      

      Ce code éteint la télé.

J'espère que cela marcherait pour vous.

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour à  tous,

 

j'ai reçu ma box hier et j'ai installé mes premiers modules (FGR222 pour mes volets roulants), ça fonctionne impeccable.

J'ai une TV Sony (46EX720) qui est connecté en ethernet sur mon réseau et j'arrive à  la commander via une app sur mon iPhone.

J'ai également installé le plugin pour les TV SONY mais je n'arrive pas le paramétrer, en effet, je reste bloqué sur le "request authorization key" que je n'arrive pas à  avoir. Avez-vous fait des avancées? Merci.

Partager ce message


Lien à poster
Partager sur d’autres sites
Invité

J'ai malheureusement exactement le même problème, et n'ai pas trouvé de solution àce jour :-(

Envoyé de mon iPhone en utilisant Tapatalk

Partager ce message


Lien à poster
Partager sur d’autres sites

Toujours pas solution pour activer le plugin Sony ? J'ai essayé des dizaines de fois et rien à faire... ça ne veut pas.

 

@kaspi, tu pilotes entièrement ta TV ?

Partager ce message


Lien à poster
Partager sur d’autres sites

@Yohan, visiblement le plugin marche pour quelques un et pas pour beaucoup ! 

 

Tu utilises toujours le code que nous avons fait ensemble ? 

Partager ce message


Lien à poster
Partager sur d’autres sites

Oui c'est étrange que ça fonctionne pour certains et pas pour d'autres... la version de la TV peut être?

Oui j'utilise le code que je vais d'ailleurs partager.

Envoyé de mon SM-G925F en utilisant Tapatalk


Partager ce message


Lien à poster
Partager sur d’autres sites

Oui c'est certainement cela.

 

il y a 9 minutes, Yohan a dit :

Oui j'utilise le code que je vais d'ailleurs partager.

 

Très bonne idée :60:

Partager ce message


Lien à poster
Partager sur d’autres sites
Invité

Pour info je suis également bloqué sur l'étape "Request Authorisation Key". Cependant, j'ai redémarré la HC2 l'autre jour car j'avais un soucis avec une scène. Au moment ou la HC2 à redémarré, j'ai vu le message me donnant la clef sur la TV, malheureusement le temps est limité (60s), et cette bon dieu de HC2 n'était toujours pas dispo. J'ai réessayé plusieurs fois, mais sans succès. Pour info j'étais en Wifi. Peut être que les gens dans la même situation que moi peuvent essayer, on ne sait jamais !

Partager ce message


Lien à poster
Partager sur d’autres sites

petit retour.

 

je controle bien ma sony avec mes telephones mais impossible avec le plugin HC2... je bloque au meme endroit que vous tous

 

Partager ce message


Lien à poster
Partager sur d’autres sites

@schwinnyTa télé est comme la notre, trop vieille. Comme toi nous avons le contrôle par smartphone mais impossible avec le plug-in HC2.

  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

Et oui... 

je suis justement en train de faire le menage dessus :) 

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Je ne comprends pas quand tu dis "faire le ménage dessus"? Tu essais de trouver une solution pour le faire fonctionner?

Si c'est le cas, nous sommes nombreux à être intéressé.

Partager ce message


Lien à poster
Partager sur d’autres sites

hélé, non je supprime les vieux matériels qui était autorisé dessus ...

 

la seule solution a laquelle je pense serait d'usurper le code d'autorisation d'un téléphone mais je ne vois pas comment faire.

Partager ce message


Lien à poster
Partager sur d’autres sites

Oui j'ai fait comme toi. Tout ce qui était obsolète sut ma TV ont été supprimé. Mais cela n'a pas réglé le problème, impossible de faire apparaître le code pour le pairage sur la HC2.

Si tu trouves la solution ça serai cool.

Partager ce message


Lien à poster
Partager sur d’autres sites

×