Aller au contenu
Did

Module Virtuel Pour Tv Panasonic

Recommended Posts

  Bonjour,

 

 Je recherche un module virtuel pour piloter (pas toute les commandes) une Tv Panasonic AS800. Jusquà  présent, je n'ai rien trouvé ni même d'API venant de Panasonic (toujours redirection vers les caméras).

 

  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

Peux tu vérifier si le port 55000 est ouvert ? Si oui il y a de fortes chances pour que ton Panasonic réponde aux commandes SOAP

 

il y a cela ici http://pastebin.com/h2DQMRxs

POST /nrc/control_0 HTTP/1.1
User-Agent: Panasonic iOS VR-CP UPnP/2.0
Host: 10.0.1.155:55000
Content-Type: text/xml; charset="utf-8"
SOAPACTION: "urn:panasonic-com:service:p00NetworkControl:1#X_SendKey"
Content-Length: 331

<?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_SendKey xmlns:u="urn:panasonic-com:service:p00NetworkControl:1">
   <X_KeyEvent>NRC_MUTE-ONOFF</X_KeyEvent>
  </u:X_SendKey>
 </s:Body>
</s:Envelope>
  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

 Merci Krikroff pour ta réponse mais je n'ai pas compris grand chose. J'ai bien essayé l'adresse IP du TV suivi de :55000 dans Firefox et une page blanche s'affiche. Que dois-je faire avec le script?

Partager ce message


Lien à poster
Partager sur d’autres sites

non Il faudrait essayer avec fiddler (http://www.telerik.com/fiddler) par exemple pour tester ...  ou alors tu peux essayer pour faire plus simple de créer un vd puis dans un bouton copier ce code

POST /nrc/control_0 HTTP/1.1
User-Agent: Panasonic iOS VR-CP UPnP/2.0
Host: 10.0.1.155:55000
Content-Type: text/xml; charset="utf-8"
SOAPACTION: "urn:panasonic-com:service:p00NetworkControl:1#X_SendKey"
Content-Length: 331
 
<?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_SendKey xmlns:u="urn:panasonic-com:service:p00NetworkControl:1"><X_KeyEvent>NRC_MUTE-ONOFF</X_KeyEvent></u:X_SendKey></s:Body>
</s:Envelope>0x0D0x0A0x0D0x0A

 
 
qui doit activer / désactiver le MUTE. Ne pas oublier de modifier l'adresse IP et aussi specifier l' IP et le port dans la panneau "avancé" du VD.

Partager ce message


Lien à poster
Partager sur d’autres sites

 J'ai essayé le code (avec l'IP remplacée ligne 4) dans un bouton d'un VD et changé l'IP et le port dans le panneau du VD mais ça ne coupe pas le son.

Partager ce message


Lien à poster
Partager sur d’autres sites

Did, tu arrives a commander ton viera avec la télécommande Panasonic TV Remote 2 sur iOS ?

Partager ce message


Lien à poster
Partager sur d’autres sites

Oui mais sur androïd.

Partager ce message


Lien à poster
Partager sur d’autres sites

C'est un bon début alors, tout est donc prêt ... Reste juste àtrouver les bonnes commandes !

As-tu bien coché la case attendre la réponse blah blah pour le code du bouton ? Je ne peut malheureusement pas faire de tests actuellement en live sur le Pana, après si tu n'es pas pressé ;)

Partager ce message


Lien à poster
Partager sur d’autres sites

 La case se décoche après sauvegarde (code en Lua) et reste bien cochée en string mais pas de mute sur le TV. Bien évidement, je ne suis pas aux pièces.

 

    Merci

Partager ce message


Lien à poster
Partager sur d’autres sites

En LUA c'est normal ;) le code doit être utilisé en mode string uniquement.

Partager ce message


Lien à poster
Partager sur d’autres sites

OK merci.

Partager ce message


Lien à poster
Partager sur d’autres sites

Hello, perso j'ai un panasonic Viera TX-P60ZT60 et l'app IOS panasonic "TV remote 2" et j'arrive àpiloter ma TV avec.

Et j'aimerais aussi pouvoir commander la TV via un périphérique virtuel.

Partager ce message


Lien à poster
Partager sur d’autres sites

Aller ma première nano-contribution...
 
Après avoir utilisé plusieurs mois un module virtuel qui commandait un script php je me suis dit qu'il était grandement temps de simplifier le process de contrôle de ma tv P65ST60E (le E de European version -  détail important car sur cette version il n'y a pas de WOL (wake on Lan) et le réseau est éteint quand la TV est en standby donc impossible d'allumer la TV autrement que par infrarouge ;-( )
 

Je n'ai pas réussi à  faire fonctionner les solutions à  base de string et puis il ya toujours les problèmes de retour de ligne de nombre de caractères etc...

 

Alors beaucoup plus simple et en plus ça marche :

 

1. Copier le code ci-dessous dans un bouton de device virtuel (IP de votre TV, port = 55000) :

local command = "NRC_MUTE-ONOFF";
--------------------------------------------------------
local selfId = fibaro:getSelfId();
local _deviceIp = fibaro:get(selfId, "IPAddress");
local _devicePort = fibaro:get(selfId, "TCPPort");
panasonicTvTcp = Net.FTcpSocket(_deviceIp, _devicePort)
requestMethod = "POST /nrc/control_0 HTTP/1.1"
custom_header = "SOAPACTION: \"urn:panasonic-com:service:p00NetworkControl:1#X_SendKey\""
local payload = "<s:Envelope xmlns:s=\"http://schemas.xmlsoap.org/soap/envelope/\" s:encodingStyle=\"http://schemas.xmlsoap.org/soap/encoding/\"><s:Body><u:X_SendKey xmlns:u=\"urn:panasonic-com:service:p00NetworkControl:1\"><X_KeyEvent>"..command.."</X_KeyEvent></u:X_SendKey></s:Body></s:Envelope>"
tcpstring =
requestMethod .. "\r\n" ..
"CONTENT-LENGTH: " .. string.len(payload) .. "\r\n" ..
custom_header .. "\r\n\r\n" ..
payload

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

remplacer la commande en ligne 1 par l'une des commandes disponibles  :

/*$keys = array(
"NRC_CH_DOWN-ONOFF", // channel down
"NRC_CH_UP-ONOFF", // channel up
"NRC_VOLUP-ONOFF", // volume up
"NRC_VOLDOWN-ONOFF", // volume down
"NRC_MUTE-ONOFF", // mute
"NRC_TV-ONOFF", // TV
"NRC_CHG_INPUT-ONOFF", // AV,
"NRC_RED-ONOFF", // red
"NRC_GREEN-ONOFF", // green
"NRC_YELLOW-ONOFF", // yellow
"NRC_BLUE-ONOFF", // blue
"NRC_VTOOLS-ONOFF", // VIERA tools
"NRC_CANCEL-ONOFF", // Cancel / Exit
"NRC_SUBMENU-ONOFF", // Option
"NRC_RETURN-ONOFF", // Return
"NRC_ENTER-ONOFF", // Control Center click / enter
"NRC_RIGHT-ONOFF", // Control RIGHT
"NRC_LEFT-ONOFF", // Control LEFT
"NRC_UP-ONOFF", // Control UP
"NRC_DOWN-ONOFF", // Control DOWN
"NRC_3D-ONOFF", // 3D button
"NRC_SD_CARD-ONOFF", // SD-card
"NRC_DISP_MODE-ONOFF", // Display mode / Aspect ratio
"NRC_MENU-ONOFF", // Menu
"NRC_INTERNET-ONOFF", // VIERA connect
"NRC_VIERA_LINK-ONOFF", // VIERA link
"NRC_EPG-ONOFF", // Guide / EPG
"NRC_TEXT-ONOFF", // Text / TTV
"NRC_STTL-ONOFF", // STTL / Subtitles
"NRC_INFO-ONOFF", // info
"NRC_INDEX-ONOFF", // TTV index
"NRC_HOLD-ONOFF", // TTV hold / image freeze
"NRC_R_TUNE-ONOFF", // Last view
"NRC_POWER-ONOFF", // Power off

"NRC_REW-ONOFF", // rewind
"NRC_PLAY-ONOFF", // play
"NRC_FF-ONOFF", // fast forward
"NRC_SKIP_PREV-ONOFF", // skip previous
"NRC_PAUSE-ONOFF", // pause
"NRC_SKIP_NEXT-ONOFF", // skip next
"NRC_STOP-ONOFF", // stop
"NRC_REC-ONOFF", // record

// numeric buttons
"NRC_D1-ONOFF", "NRC_D2-ONOFF", "NRC_D3-ONOFF", "NRC_D4-ONOFF", "NRC_D5-ONOFF",
"NRC_D6-ONOFF", "NRC_D7-ONOFF", "NRC_D8-ONOFF", "NRC_D9-ONOFF", "NRC_D0-ONOFF",

// The below commands were not avaliable in the iPhone app when using my
// VIERA G30 - they were pulled out from a disassembly instead
// only these top three did anything on my TV

"NRC_P_NR-ONOFF", // P-NR (Noise reduction)
"NRC_OFFTIMER-ONOFF", // off timer
"NRC_R_TUNE-ONOFF", // Seems to do the same as INFO

"NRC_CHG_NETWORK-ONOFF",
"NRC_CC-ONOFF",
"NRC_SAP-ONOFF",
"NRC_RECLIST-ONOFF",
"NRC_DRIVE-ONOFF",
"NRC_DATA-ONOFF",
"NRC_BD-ONOFF",
"NRC_FAVORITE-ONOFF",
"NRC_DIGA_CTL-ONOFF",
"NRC_VOD-ONOFF",
"NRC_ECO-ONOFF",
"NRC_GAME-ONOFF",
"NRC_EZ_SYNC-ONOFF",
"NRC_PICTAI-ONOFF",
"NRC_MPX-ONOFF",
"NRC_SPLIT-ONOFF",
"NRC_SWAP-ONOFF",
"NRC_R_SCREEN-ONOFF",
"NRC_30S_SKIP-ONOFF",
"NRC_PROG-ONOFF",
"NRC_TV_MUTE_ON-ONOFF",
"NRC_TV_MUTE_OFF-ONOFF",
"NRC_DMS_CH_UP-ONOFF",
"NRC_DMS_CH_DOWN-ONOFF");
*/

Répéter l'opération pour chacun des boutons de commande souhaités

 

Bonne soirée

  • Upvote 2

Partager ce message


Lien à poster
Partager sur d’autres sites

 Intéressant, mais comment ça marche, il faut refaire les boutons que l'on souhaite? Le premier code à  copier dans un bouton est à  laisser en chaîne ou en code Lua? Ou peut-être est-ce dans la mainloop qu'il faut le copier?

Partager ce message


Lien à poster
Partager sur d’autres sites

Il suffit de copier le code dans chacun des boutons que tu veux créer.

Ensuite tu remplaces la commande en ligne 1 en choisissant l'une des commandes de la grande liste.

 

Je n'ai pas encore eu le temps de m'en occuper mais j'imagine qu'il y a tout ce qu'il faut pour que quelqu'un avec un peu de temps nous face un beau virtual device ou plugin. ;-)

Partager ce message


Lien à poster
Partager sur d’autres sites

 Merci bat,

Cela veut dire que le premier code (comme il est) devrait couper le son? Mais il ne fait rien (essayé en chaîne et Lua avec la bonne IP et le port). Je vais tester plus sérieusement demain.

Partager ce message


Lien à poster
Partager sur d’autres sites

  J'ai bien mis l'adresse IP et le port TCP dans l'onglet général mais cela ne bouge pas. Je les ai ensuite renseigné aussi dans les lignes 4 et 5 mais rien non plus.

local _deviceIp = fibaro:get(selfId, "192.168.1.14");
local _devicePort = fibaro:get(selfId, "55000");

Partager ce message


Lien à poster
Partager sur d’autres sites
Invité chris6783

Did,

 

le fibaro:get va chercher les propriétes par leur nom, tu devrais laisser le noms des proprieté du virtual device

 

fibaro:get(selfId, "IPAddress") et  fibaro:get(selfId, "TCPPort")

pour tester tu peux ajouter un debug ou meme écrire

local _deviceIp = "192.168.1.14" mais pas local _deviceIp = fibaro:get(selfId, "192.168.1.14");

 

 

EDIT : C getValue a priori qu'il te faut meme s'il me sembait quen 3.x les 2 passent

http://www.domotique-fibaro.fr/index.php/cp/21-fonction-fibarogetvaluedeviceid-propertyname/

 

local _deviceIp = fibaro:getValue(selfId, 'IPAddress')

Partager ce message


Lien à poster
Partager sur d’autres sites

 C'était pour tester mais rien n'y fait. Ca ne doit pas être compatible avec les AS800.

Partager ce message


Lien à poster
Partager sur d’autres sites
 
Thank you for al codes.
You have a brand new Panasonic 65 "CX800 and made a small VD to control some inputs, power and channel numbers

 

Thanks for the al codes. 

Got a brand new Panasonic 65 "CX800 and made a small VD to control Some inputs, power and channel numbers That Work

 

IP adres: 192.168.x.x or your IP.
TCP port: 55000

Panasonic_CX800.vfib

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour à¡ tous,

 

J ai suivi avec attention ce post car je souhaitais automatiser certaines taches en lien avec la TV,

 

malheureusement, en vérifiant par le débogage il m indique l'erreur suivante :

 

[ERROR] 16:52:48: line FTcpSocket:

 
 
je précise que la TV est connectée en Wifi sur ma freebox, comme la HC2 en RJ45.
 
Lorsque je teste l,adresse IP de la TV, j ai bien une page blanche (contrairement à  la page d erreur que j obtiens lorsque j éteins la TV ce qui est normal)
 
Je vous remercie par avance pour votre aide
 
 

Partager ce message


Lien à poster
Partager sur d’autres sites

 Bonsoir @dvine,

Je retombe sur ce post et j'ai installé ton VD mais à  part l'adresse IP de la TV, que mets tu comme numéro de port TCP?

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour, Désolé de ne pas mentionner. adres IP : 192.168.x.x ou votre adresse IP . port TCP : 55000

Bonjour, Désolé de ne pas mentionner. adres IP : 192.168.x.x ou votre adresse IP . port TCP : 55000 modifier aslo mon poste.

Partager ce message


Lien à poster
Partager sur d’autres sites

 Merci de ta réponse @dvine,

C'est ce que j'avais essayé mais ça ne fonctionne toujours pas chez moi.

Je m'étais dit en installant un module tout fait qui fonctionne ailleurs où j'ai juste à  renseigner l'IP de la tv et le port TCP mais rien.

Mon modèle est un AS800E.

Partager ce message


Lien à poster
Partager sur d’autres sites

×