Api Viessmann pour récupération de données avec Vitoconnect
-
- Timide
- Messages : 282
- Inscription : 30 nov. 2017, 13:54
Re: Script pour Gestion Chaudière Viessmann connecté
Ca ne fait pas d'erreur pourtant. Néanmoins, j'imagine que le programme réduit est censé être plus petit que le programme normal et donc que c'est parce que ton programme normal est déjà à 20.
-
- Timide
- Messages : 282
- Inscription : 30 nov. 2017, 13:54
Re: Script pour Gestion Chaudière Viessmann connecté
Attention aussi que la branche develop me sert de branche de développement. Comme j'ai pas encore vraiment de test unitaires et de build continus parfois les commit sont foireux. Normalement, la branche censée être stable est le master qui contient les releases.
-
- Timide
- Messages : 282
- Inscription : 30 nov. 2017, 13:54
Re: Script pour Gestion Chaudière Viessmann connecté
Code : Tout sélectionner
Code : Tout sélectionner
{"everything":[
{"actions": [
{
"isExecutable": true,
"href": "http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/devices/0/features/heating.dhw.schedule/setSchedule",
"method": "POST",
"title": "setSchedule",
"name": "setSchedule",
"fields": [
{
"name": "newSchedule",
"type": "Schedule",
"required": true,
"maxEntries": 4,
"resolution": 10,
"modes": [
"on"
],
"defaultMode": "off"
}
]
}
]},
{"actions": [
{
"isExecutable": true,
"href": "http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/devices/0/features/heating.dhw.oneTimeCharge/activate",
"method": "POST",
"title": "activate",
"name": "activate"
},
{
"isExecutable": true,
"href": "http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/devices/0/features/heating.dhw.oneTimeCharge/deactivate",
"method": "POST",
"title": "deactivate",
"name": "deactivate"
}
]},
{"actions": [
{
"isExecutable": true,
"href": "http://0.0.0.0:8082/operational-data/installations/291/gateways/7123456789123456/devices/0/features/heating.circuits.1.operating.programs.reduced/setTemperature",
"method": "POST",
"title": "setTemperature",
"name": "setTemperature",
"fields": [
{
"name": "targetTemperature",
"type": "number",
"required": true,
"min": 3,
"max": 37,
"stepping": 1
}
]
}
]},
{"actions": [
{
"isExecutable": false,
"href": "http://0.0.0.0:8082/operational-data/installations/291/gateways/7123456789123456/devices/0/features/heating.circuits.1.operating.programs.eco/activate",
"method": "POST",
"title": "activate",
"name": "activate",
"fields": [
{
"name": "temperature",
"type": "boolean",
"required": false,
"min": 3,
"max": 37,
"stepping": 1
}
]
},
{
"isExecutable": false,
"href": "http://0.0.0.0:8082/operational-data/installations/291/gateways/7123456789123456/devices/0/features/heating.circuits.1.operating.programs.eco/deactivate",
"method": "POST",
"title": "deactivate",
"name": "deactivate"
}
]},
{"actions": [
{
"isExecutable": true,
"href": "http://0.0.0.0:8082/operational-data/installations/291/gateways/7123456789123456/devices/0/features/heating.circuits.1.operating.programs.normal/setTemperature",
"method": "POST",
"title": "setTemperature",
"name": "setTemperature",
"fields": [
{
"name": "targetTemperature",
"type": "number",
"required": true,
"min": 3,
"max": 37,
"stepping": 1
}
]
}
]},
{"actions": [
{
"isExecutable": true,
"href": "http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/features/gateway.firmware/update",
"method": "POST",
"title": "update",
"name": "update",
"fields": [
{
"name": "version",
"type": "string",
"required": true,
"regEx": "/([0-9]+)\\.([0-9]+)\\.([0-9]+)(?:(\\-[0-9A-Za-z-]+(?:\\.[0-9A-Za-z-]+)*))?(?:\\+[0-9A-Za-z-\\-\\.]+)?/"
},
{
"name": "updateUrl",
"type": "string",
"required": true
}
]
}
]},
{"actions": [
{
"isExecutable": false,
"href": "http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/devices/0/features/heating.circuits.0.circulation.schedule/setSchedule",
"method": "POST",
"title": "setSchedule",
"name": "setSchedule",
"fields": [
{
"name": "newSchedule",
"type": "Schedule",
"required": true,
"maxEntries": 4,
"resolution": 10,
"modes": [
"on"
],
"defaultMode": "off"
}
]
}
]},
{"actions": [
{
"isExecutable": true,
"fields": [
{
"enum": [
"standby",
"dhw",
"dhwAndHeating",
"forcedReduced",
"forcedNormal"
],
"type": "string",
"name": "mode",
"required": true
}
],
"href": "http://0.0.0.0:8082/operational-data/installations/291/gateways/7123456789123456/devices/0/features/heating.circuits.1.operating.modes.active/setMode",
"method": "POST",
"title": "setMode",
"name": "setMode"
}
]},
{"actions": [
{
"isExecutable": true,
"href": "http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/devices/0/features/heating.circuits.0.operating.programs.reduced/setTemperature",
"method": "POST",
"title": "setTemperature",
"name": "setTemperature",
"fields": [
{
"name": "targetTemperature",
"type": "number",
"required": true,
"min": 3,
"max": 37,
"stepping": 1
}
]
}
]},
{"actions": [
{
"isExecutable": true,
"href": "http://0.0.0.0:8082/operational-data/installations/291/gateways/7123456789123456/devices/0/features/heating.circuits.1.dhw.schedule/setSchedule",
"method": "POST",
"title": "setSchedule",
"name": "setSchedule",
"fields": [
{
"name": "newSchedule",
"type": "Schedule",
"required": true,
"maxEntries": 4,
"resolution": 10,
"modes": [
"on"
],
"defaultMode": "off"
}
]
}
]},
{"actions": [
{
"isExecutable": true,
"href": "http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/devices/0/features/heating.dhw.temperature/setTargetTemperature",
"method": "POST",
"title": "setTargetTemperature",
"name": "setTargetTemperature",
"fields": [
{
"name": "temperature",
"type": "number",
"required": true,
"min": 10,
"max": 95,
"stepping": 1
}
]
}
]},
{"actions": [
{
"isExecutable": true,
"href": "http://0.0.0.0:8082/operational-data/installations/291/gateways/7123456789123456/devices/0/features/heating.circuits.1.operating.programs.comfort/setTemperature",
"method": "POST",
"title": "setTemperature",
"name": "setTemperature",
"fields": [
{
"name": "targetTemperature",
"type": "number",
"required": true,
"min": 3,
"max": 37,
"stepping": 1
}
]
},
{
"isExecutable": false,
"href": "http://0.0.0.0:8082/operational-data/installations/291/gateways/7123456789123456/devices/0/features/heating.circuits.1.operating.programs.comfort/activate",
"method": "POST",
"title": "activate",
"name": "activate"
},
{
"isExecutable": false,
"href": "http://0.0.0.0:8082/operational-data/installations/291/gateways/7123456789123456/devices/0/features/heating.circuits.1.operating.programs.comfort/deactivate",
"method": "POST",
"title": "deactivate",
"name": "deactivate"
}
]},
{"actions": [
{
"isExecutable": false,
"href": "http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/devices/0/features/heating.circuits.0.heating.curve/setCurve",
"method": "POST",
"title": "setCurve",
"name": "setCurve",
"fields": [
{
"name": "slope",
"type": "number",
"required": true,
"min": 0.2,
"max": 3.5,
"stepping": 0.1
},
{
"name": "shift",
"type": "number",
"required": true,
"min": -13,
"max": 40,
"stepping": 1
}
]
}
]},
{"actions": [
{
"isExecutable": false,
"href": "http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/devices/0/features/heating.circuits.0.operating.programs.eco/activate",
"method": "POST",
"title": "activate",
"name": "activate",
"fields": [
{
"name": "temperature",
"type": "boolean",
"required": false,
"min": 3,
"max": 37,
"stepping": 1
}
]
},
{
"isExecutable": false,
"href": "http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/devices/0/features/heating.circuits.0.operating.programs.eco/deactivate",
"method": "POST",
"title": "deactivate",
"name": "deactivate"
}
]},
{"actions": [
{
"isExecutable": true,
"href": "http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/features/gateway.logLevel/setLogLevel",
"method": "POST",
"title": "setLogLevel",
"name": "setLogLevel",
"fields": [
{
"name": "version",
"type": "number",
"required": true,
"enum": [
2,
3,
4,
5,
6
]
}
]
}
]},
{"actions": [
{
"isExecutable": true,
"href": "http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/devices/0/features/heating.circuits.0.operating.programs.normal/setTemperature",
"method": "POST",
"title": "setTemperature",
"name": "setTemperature",
"fields": [
{
"name": "targetTemperature",
"type": "number",
"required": true,
"min": 3,
"max": 37,
"stepping": 1
}
]
}
]},
{"actions": [
{
"isExecutable": true,
"href": "http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/devices/0/features/heating.circuits.0.operating.programs.holiday/schedule",
"method": "POST",
"title": "schedule",
"name": "schedule",
"fields": [
{
"name": "start",
"type": "string",
"required": true
},
{
"name": "end",
"type": "string",
"required": true
}
]
},
{
"isExecutable": true,
"href": "http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/devices/0/features/heating.circuits.0.operating.programs.holiday/unschedule",
"method": "POST",
"title": "unschedule",
"name": "unschedule"
}
]},
{"actions": [
{
"isExecutable": true,
"href": "http://0.0.0.0:8082/operational-data/installations/291/gateways/7123456789123456/devices/0/features/heating.circuits.1.operating.programs.holiday/schedule",
"method": "POST",
"title": "schedule",
"name": "schedule",
"fields": [
{
"name": "start",
"type": "string",
"required": true
},
{
"name": "end",
"type": "string",
"required": true
}
]
},
{
"isExecutable": true,
"href": "http://0.0.0.0:8082/operational-data/installations/291/gateways/7123456789123456/devices/0/features/heating.circuits.1.operating.programs.holiday/unschedule",
"method": "POST",
"title": "unschedule",
"name": "unschedule"
}
]},
{"actions": [
{
"isExecutable": true,
"fields": [
{
"enum": [
"standby",
"dhw",
"dhwAndHeating",
"forcedReduced",
"forcedNormal"
],
"type": "string",
"name": "mode"
}
],
"href": "http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/devices/0/features/heating.circuits.0.operating.modes.active/setMode",
"method": "POST",
"title": "setMode",
"name": "setMode"
}
]},
{"actions": [
{
"isExecutable": false,
"href": "http://0.0.0.0:8082/operational-data/installations/291/gateways/7123456789123456/devices/0/features/heating.circuits.1.circulation.schedule/setSchedule",
"method": "POST",
"title": "setSchedule",
"name": "setSchedule",
"fields": [
{
"name": "newSchedule",
"type": "Schedule",
"required": true,
"maxEntries": 4,
"resolution": 10,
"modes": [
"on"
],
"defaultMode": "off"
}
]
}
]},
{"actions": [
{
"isExecutable": false,
"href": "http://0.0.0.0:8082/operational-data/installations/291/gateways/7123456789123456/devices/0/features/heating.circuits.1.heating.curve/setCurve",
"method": "POST",
"title": "setCurve",
"name": "setCurve",
"fields": [
{
"name": "slope",
"type": "number",
"required": true,
"min": 0.2,
"max": 3.5,
"stepping": 0.1
},
{
"name": "shift",
"type": "number",
"required": true,
"min": -13,
"max": 40,
"stepping": 1
}
]
}
]},
{"actions": [
{
"isExecutable": true,
"href": "http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/devices/0/features/heating.circuits.0.dhw.schedule/setSchedule",
"method": "POST",
"title": "setSchedule",
"name": "setSchedule",
"fields": [
{
"name": "newSchedule",
"type": "Schedule",
"required": true,
"maxEntries": 4,
"resolution": 10,
"modes": [
"on"
],
"defaultMode": "off"
}
]
}
]},
{"actions": [
{
"isExecutable": true,
"href": "http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/features/gateway.status/reboot",
"method": "POST",
"title": "reboot",
"name": "reboot"
}
]},
{"actions": [
{
"isExecutable": true,
"href": "http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/devices/0/features/heating.circuits.0.operating.programs.comfort/setTemperature",
"method": "POST",
"title": "setTemperature",
"name": "setTemperature",
"fields": [
{
"name": "targetTemperature",
"type": "number",
"required": true,
"min": 3,
"max": 37,
"stepping": 1
}
]
},
{
"isExecutable": false,
"href": "http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/devices/0/features/heating.circuits.0.operating.programs.comfort/activate",
"method": "POST",
"title": "activate",
"name": "activate"
},
{
"isExecutable": false,
"href": "http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/devices/0/features/heating.circuits.0.operating.programs.comfort/deactivate",
"method": "POST",
"title": "deactivate",
"name": "deactivate"
}
]},
{"actions": [
{
"isExecutable": true,
"href": "http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/devices/0/features/heating.circuits.0.heating.schedule/setSchedule",
"method": "POST",
"title": "setSchedule",
"name": "setSchedule",
"fields": [
{
"name": "newSchedule",
"type": "Schedule",
"required": true,
"maxEntries": 4,
"resolution": 10,
"modes": [
"normal"
],
"defaultMode": "reduced"
}
]
}
]},
{"actions": [
{
"isExecutable": true,
"href": "http://0.0.0.0:8082/operational-data/installations/291/gateways/7123456789123456/devices/0/features/heating.circuits.1.heating.schedule/setSchedule",
"method": "POST",
"title": "setSchedule",
"name": "setSchedule",
"fields": [
{
"name": "newSchedule",
"type": "Schedule",
"required": true,
"maxEntries": 4,
"resolution": 10,
"modes": [
"normal"
],
"defaultMode": "reduced"
}
]
}
]}
]
}
-
- Timide
- Messages : 282
- Inscription : 30 nov. 2017, 13:54
Re: Script pour Gestion Chaudière Viessmann connecté
Comme je suis sympa j'ai un peu extrait les parties intéressantes à savoir les urls. Je joins l'ensemble des fichiers en question dans le zip. En cherchant dedans doit y avoir les informations de conso gaz et élec.
Code : Tout sélectionner
"http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/devices/0/features/heating.dhw.schedule/setSchedule"
"http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/devices/0/features/heating.dhw.oneTimeCharge/activate"
"http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/devices/0/features/heating.dhw.oneTimeCharge/deactivate"
"http://0.0.0.0:8082/operational-data/installations/291/gateways/7123456789123456/devices/0/features/heating.circuits.1.operating.programs.eco/activate"
"http://0.0.0.0:8082/operational-data/installations/291/gateways/7123456789123456/devices/0/features/heating.circuits.1.operating.programs.eco/deactivate"
"http://0.0.0.0:8082/operational-[attachment=0]features.zip[/attachment]data/installations/291/gateways/7123456789123456/devices/0/features/heating.circuits.1.operating.programs.normal/setTemperature"
"http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/features/gateway.firmware/update"
"http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/devices/0/features/heating.circuits.0.circulation.schedule/setSchedule"
"http://0.0.0.0:8082/operational-data/installations/291/gateways/7123456789123456/devices/0/features/heating.circuits.1.operating.modes.active/setMode"
"http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/devices/0/features/heating.circuits.0.operating.programs.reduced/setTemperature"
"http://0.0.0.0:8082/operational-data/installations/291/gateways/7123456789123456/devices/0/features/heating.circuits.1.dhw.schedule/setSchedule"
"http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/devices/0/features/heating.dhw.temperature/setTargetTemperature"
"http://0.0.0.0:8082/operational-data/installations/291/gateways/7123456789123456/devices/0/features/heating.circuits.1.operating.programs.comfort/setTemperature"
"http://0.0.0.0:8082/operational-data/installations/291/gateways/7123456789123456/devices/0/features/heating.circuits.1.operating.programs.comfort/activate"
"http://0.0.0.0:8082/operational-data/installations/291/gateways/7123456789123456/devices/0/features/heating.circuits.1.operating.programs.comfort/deactivate"
"http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/devices/0/features/heating.circuits.0.heating.curve/setCurve"
"http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/devices/0/features/heating.circuits.0.operating.programs.eco/activate"
"http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/devices/0/features/heating.circuits.0.operating.programs.eco/deactivate"
"http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/features/gateway.logLevel/setLogLevel"
"http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/devices/0/features/heating.circuits.0.operating.programs.normal/setTemperature"
"http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/devices/0/features/heating.circuits.0.operating.programs.holiday/schedule"
"http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/devices/0/features/heating.circuits.0.operating.programs.holiday/unschedule"
"http://0.0.0.0:8082/operational-data/installations/291/gateways/7123456789123456/devices/0/features/heating.circuits.1.operating.programs.holiday/schedule"
"http://0.0.0.0:8082/operational-data/installations/291/gateways/7123456789123456/devices/0/features/heating.circuits.1.operating.programs.holiday/unschedule"
"http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/devices/0/features/heating.circuits.0.operating.modes.active/setMode"
"http://0.0.0.0:8082/operational-data/installations/291/gateways/7123456789123456/devices/0/features/heating.circuits.1.circulation.schedule/setSchedule"
"http://0.0.0.0:8082/operational-data/installations/291/gateways/7123456789123456/devices/0/features/heating.circuits.1.heating.curve/setCurve"
"http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/devices/0/features/heating.circuits.0.dhw.schedule/setSchedule"
"http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/devices/0/features/heating.circuits.0.dhw.schedule/setSchedule"
"http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/devices/0/features/heating.circuits.0.operating.programs.comfort/setTemperature"
"http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/devices/0/features/heating.circuits.0.operating.programs.comfort/activate"
"http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/devices/0/features/heating.circuits.0.operating.programs.comfort/deactivate"
"http://0.0.0.0:8082/operational-data/installations/demo/gateways/7123456789123456/devices/0/features/heating.circuits.0.heating.schedule/setSchedule"
"http://0.0.0.0:8082/operational-data/installations/291/gateways/7123456789123456/devices/0/features/heating.circuits.1.heating.schedule/setSchedule"
- Pièces jointes
-
- features.zip
- (81.83 Kio) Téléchargé 42 fois
Re: Script pour Gestion Chaudière Viessmann connecté
Bonjour à tous,
Je parcours ce fil depuis plusieurs jours, et même si je coince encore, un grand merci et un special Thanks à @thetrueavatar
Pour vous donner un peu de contexte, j'ai réactivé ma Jeedom mini+ qui dormait depuis 2 ans faute d'objets. La semaine dernière, installation d'une chaudière dont vous avez compris la marque , avec le Vitoconnect. J'utilise Vicare, suis inscrit. J'ai des têtes POP dans différentes pièces, et l'installation est nickel. Je vois tout sur le Dashboard.
Venons en à mon problème. J'ai honte car je suis informaticien mais je coince car je tâtonne sur le mode de fonctionnement des scripts dans Jeedom, raison pour laquelle j'ai un eu honte
J'ai installé le dev avec un Git hier soir, et en vous lisant je tente différentes choses mais rien ne fonctionne ^^
@thetrueavatar est très actif, c'est super top mais comme j'essaye de ratrapper les 15 RER de retard, j'essaye d'éliminer les infos obsolètes.
Concrètement, j'ai fait le git au 17/09/18 à 21h30. Je crée un script, avec type action/défaut , rempli le champs requête avec : /var/www/html/plugins/script/core/ressources/Viessmann-Api/example/Main.php , tout en ayant modifié credentials.properties
Quand je clic sur Test, il me dit succès, mais je n'y crois pas trop. Du coup, je clic sur l'engrenage pour tester l'URL, mais j'ai une page blanche.
Je commence à me dire qu'il me ajouter une autre ligne de script , avec un type JSON pour la restitution ?
Bref, la je coince et vous demande de l'aide malgré ma demie journée de lecture de ce post :-/
Dernière question, suis étonné que le seul credentials.properties pour mettre son compte soit dans example, mais encore une fois je n'ai peut être rien compris.
Bref, si vous pouviez me déniaiser en me mettant le pied à l'étrier , je vous en serais très reconnaissant, et une fois fait, j'essaierai de mettre mes compétences à profit pour aider.
Bonne journée à tous,
Mikado
Je parcours ce fil depuis plusieurs jours, et même si je coince encore, un grand merci et un special Thanks à @thetrueavatar
Pour vous donner un peu de contexte, j'ai réactivé ma Jeedom mini+ qui dormait depuis 2 ans faute d'objets. La semaine dernière, installation d'une chaudière dont vous avez compris la marque , avec le Vitoconnect. J'utilise Vicare, suis inscrit. J'ai des têtes POP dans différentes pièces, et l'installation est nickel. Je vois tout sur le Dashboard.
Venons en à mon problème. J'ai honte car je suis informaticien mais je coince car je tâtonne sur le mode de fonctionnement des scripts dans Jeedom, raison pour laquelle j'ai un eu honte
J'ai installé le dev avec un Git hier soir, et en vous lisant je tente différentes choses mais rien ne fonctionne ^^
@thetrueavatar est très actif, c'est super top mais comme j'essaye de ratrapper les 15 RER de retard, j'essaye d'éliminer les infos obsolètes.
Concrètement, j'ai fait le git au 17/09/18 à 21h30. Je crée un script, avec type action/défaut , rempli le champs requête avec : /var/www/html/plugins/script/core/ressources/Viessmann-Api/example/Main.php , tout en ayant modifié credentials.properties
Quand je clic sur Test, il me dit succès, mais je n'y crois pas trop. Du coup, je clic sur l'engrenage pour tester l'URL, mais j'ai une page blanche.
Je commence à me dire qu'il me ajouter une autre ligne de script , avec un type JSON pour la restitution ?
Bref, la je coince et vous demande de l'aide malgré ma demie journée de lecture de ce post :-/
Dernière question, suis étonné que le seul credentials.properties pour mettre son compte soit dans example, mais encore une fois je n'ai peut être rien compris.
Bref, si vous pouviez me déniaiser en me mettant le pied à l'étrier , je vous en serais très reconnaissant, et une fois fait, j'essaierai de mettre mes compétences à profit pour aider.
Bonne journée à tous,
Mikado
-
- Timide
- Messages : 282
- Inscription : 30 nov. 2017, 13:54
Re: Script pour Gestion Chaudière Viessmann connecté
Pour les credentials.properties, je l'ai rajouté dans le fichier .gitignore de sorte à ce qu'il ne soit pas pushé sur le github par erreur. J'ai tout mis dans example, car je voyais que certaines personne ne s'y retrouvaient pas si tout n'était pas dans le même répertoire. J'ai donc mis le phar, le fichier credentials et les fichiers php dans le même répertoire pour simplifier l'installation. Mon développement est une API à laquelle on passe les paramètres user/pwd et sur laquelle on appelle les méthodes. J'ai mis un exemple avec un chargement depuis un fichier credentials.properties mais ceci ne fait pas partie du code de l'API à proprement parlé.
Perso j'ai testé l'intégration jeedom pour la partie get Pour les set, j'ai lancé le script et vu que la valeur était bien changée en refaisant un get.
Perso je suis aussi informaticien et je trouve jeedom complètement horrible d'un point de vue ergonomique. C'est pas du tout intuitif. Alors certes il y a de la documentation mais moi je crois en l'adage "une bonne interface c'est comme une blague, si tu dois l'expliquer c'est qu'elle n'est pas bonne". Je ne peux donc t'aider sur la partie "jeedom" car je ne m'y connais pas.
t
Sinon le Main.php contient par défaut un ensemble d'example d'appel à mon API. J'ai rajouté des méthodes Set mais en ayant hardcodé les paramètres. Il faudrait donc prendre les paramètre de l'entrée (via la variable php $argv[0]).
Perso j'ai testé l'intégration jeedom pour la partie get Pour les set, j'ai lancé le script et vu que la valeur était bien changée en refaisant un get.
Perso je suis aussi informaticien et je trouve jeedom complètement horrible d'un point de vue ergonomique. C'est pas du tout intuitif. Alors certes il y a de la documentation mais moi je crois en l'adage "une bonne interface c'est comme une blague, si tu dois l'expliquer c'est qu'elle n'est pas bonne". Je ne peux donc t'aider sur la partie "jeedom" car je ne m'y connais pas.
t
Sinon le Main.php contient par défaut un ensemble d'example d'appel à mon API. J'ai rajouté des méthodes Set mais en ayant hardcodé les paramètres. Il faudrait donc prendre les paramètre de l'entrée (via la variable php $argv[0]).
Re: Script pour Gestion Chaudière Viessmann connecté
@Mikado
J'en suis au même point que toi, les variables ne remonte pas dans Jeedom
Avec une seule variable dans Main.php
Tu as :
J'en suis au même point que toi, les variables ne remonte pas dans Jeedom
Avec une seule variable dans Main.php
Code : Tout sélectionner
<?php
include __DIR__.'/bootstrap.php';
echo $viessmannApi->getOutsideTemperature();
-
- Timide
- Messages : 282
- Inscription : 30 nov. 2017, 13:54
Re: Script pour Gestion Chaudière Viessmann connecté
Pige pas comment passer un param au script du style "php SetNormalProgramTemperature.php temperature" avec temperature la variable. Si qqun qui connait un peu le plugin script pouvait éclairer ma lanterne...
Sinon pour le script faut l'adapter pour qu'il utilise le premier paramètre passé en argument:
Sinon pour le script faut l'adapter pour qu'il utilise le premier paramètre passé en argument:
Code : Tout sélectionner
<?php
include __DIR__.'/bootstrap.php';
$viessmannApi->setNormalProgramTemperature($argv[0]);
Re: Script pour Gestion Chaudière Viessmann connecté
Bonsoir à tous,
J'avoue je suis un peu perdu avec toute ces modif.
Moi j'ai que le get normal program temperature qui fonctionne!
lorsque le développement sera plus avancé il serait intéressant d'avoir un tuto qui reprend la globalité.
J'avoue je suis un peu perdu avec toute ces modif.
Moi j'ai que le get normal program temperature qui fonctionne!
lorsque le développement sera plus avancé il serait intéressant d'avoir un tuto qui reprend la globalité.
-
- Timide
- Messages : 282
- Inscription : 30 nov. 2017, 13:54
Re: Script pour Gestion Chaudière Viessmann connecté
Bonjour,
Pour ma part, je fourni une API technique indépendante de jeedom. Je donne un coup de main car j'intègre aussi petit à petit mon dev dans jeedom en crééant des examples. Néanmoins, Ca reste une API et donc technique ce qui peu faire peur aux néophites. Pour être honnête, je n'y connais rien en jeedom donc limite j'attend plus que le reste de la communauté nous aide à intégrer mon API.
Mon API est documentée sur le wiki:
https://github.com/thetrueavatar/Viessmann-Api/wiki
Au niveau développement, ben j'ai presque fini en fait. On peut lire et écrire n'importe quelle valeurs via le service Viessmann. Je dois encore finir quelques méthodes simplifiées pour éviter de devoir connaître le nom techniques et le format json lors des appels.
Pour ma part, je fourni une API technique indépendante de jeedom. Je donne un coup de main car j'intègre aussi petit à petit mon dev dans jeedom en crééant des examples. Néanmoins, Ca reste une API et donc technique ce qui peu faire peur aux néophites. Pour être honnête, je n'y connais rien en jeedom donc limite j'attend plus que le reste de la communauté nous aide à intégrer mon API.
Mon API est documentée sur le wiki:
https://github.com/thetrueavatar/Viessmann-Api/wiki
Au niveau développement, ben j'ai presque fini en fait. On peut lire et écrire n'importe quelle valeurs via le service Viessmann. Je dois encore finir quelques méthodes simplifiées pour éviter de devoir connaître le nom techniques et le format json lors des appels.
Dernière édition par thetrueavatar le 19 sept. 2018, 11:24, édité 1 fois.
Re: Script pour Gestion Chaudière Viessmann connecté
Hello thetrueavatar,
Encore merci pour ton Taf. Je sais comment utiliser une API, mais je n'ai pas encore compris dans Jeedom comment faire un script et restituer les données. Une fois compris, si j'y arrive je posterai
Le lien vers ton wiki fait un 404 il manque le i de wiki
En le relisant, je lance l'exemple dont tu parles dans le wiki, mais cela me donne :
du coup, j'ai vérifié suis en PHP 5.6.30 alors que ton API réclame du PHP 7 d'après ton wiki. Faut que je check si l'upgrade ne met pas la merde dans Jeedom....
Bonne journée à tous
Encore merci pour ton Taf. Je sais comment utiliser une API, mais je n'ai pas encore compris dans Jeedom comment faire un script et restituer les données. Une fois compris, si j'y arrive je posterai
Le lien vers ton wiki fait un 404 il manque le i de wiki
En le relisant, je lance l'exemple dont tu parles dans le wiki, mais cela me donne :
Code : Tout sélectionner
Erreur dans l'exécution du terminal, la valeur retournée est : 255. Détails : Array ( [0] => PHP Warning: Unsupported declare 'strict_types' in phar:///var/www/html/plugins/script/core/ressources/Viessmann/Viessmann-Api/example/Viessmann-Api-0.3-SNAPSHOT.phar/src/API/ViessmannAPI.php on line 1 PHP Parse error: syntax error, unexpected '{', expecting identifier (T_STRING) in phar:///var/www/html/plugins/script/core/ressources/Viessmann/Viessmann-Api/example/Viessmann-Api-0.3-SNAPSHOT.phar/src/API/ViessmannAPI.php on line 5 )
Bonne journée à tous
Re: Script pour Gestion Chaudière Viessmann connecté
C'est encore moi
A priori, Jeedom est compatible php 7, mais comme j'ai une box jeedom mini+, j'ai pas trop envie de me couper du support, just in case.
Ce qui est bizarre, c'est que il n'y a pas encore si longtemps, suis pas sur que ton dev nécessitait php 7. Si ? je serais le seul en php 5 ?
C'est du super boulot que tu fais, mais si cela oblige à l'upgrade php, tu te coupes de ceux qui utilisent la release officielle de Jeedom non ?
A priori, Jeedom est compatible php 7, mais comme j'ai une box jeedom mini+, j'ai pas trop envie de me couper du support, just in case.
Ce qui est bizarre, c'est que il n'y a pas encore si longtemps, suis pas sur que ton dev nécessitait php 7. Si ? je serais le seul en php 5 ?
C'est du super boulot que tu fais, mais si cela oblige à l'upgrade php, tu te coupes de ceux qui utilisent la release officielle de Jeedom non ?
-
- Timide
- Messages : 282
- Inscription : 30 nov. 2017, 13:54
Re: Script pour Gestion Chaudière Viessmann connecté
je dis juste que j'ai testé en php 7. Perso je ne l'impose pas. Je vais enlever l'histoire du strict car pour être honnête je ne savais pas vraiment ce que ça faisait.
-
- Timide
- Messages : 282
- Inscription : 30 nov. 2017, 13:54
Re: Script pour Gestion Chaudière Viessmann connecté
Voila j'ai enlevé le strict_type et j'ai fait une release 0.2.1 https://github.com/thetrueavatar/Viessm ... /tag/0.2.1
-
- Timide
- Messages : 282
- Inscription : 30 nov. 2017, 13:54
Re: Script pour Gestion Chaudière Viessmann connecté
Bon j'ai réussi à faire fonctionner le set de valeur pour la consigne normal. L'astuce est que la valeur du curseur est référencée par #slider#.
En gros, il faut définir une commande avec comme paramètre:
- nom: le nom de votre commande. La valeur affichée se trouve en dessous du nom de la commande. Sélectionnez le nom de la commande pour récupérer la donnée. Chez moi c'est ConsigneprogrammeNormal
- Type script: script
- Type: Action. Perso j'ai choisir Curseur comme représentation
- Requête: spécifier le chemin du script. L'argument du script est #slider# pour récupérer la valeur du curseur et la passer en paramètre.
- Divers: Sélectionnez le nom de la commande pour affichier la consigne normal. Chez moi ConsigneprogrammeNormal. Comme valeur de l'information mettez #slider# comme ça l'affichage sera adapté en mettant celui du curseur.
Avec ceci ça fonctionne nickel pour moi. C'est un peu lent mais j'ai l'impression que c'est le serveur viessmann ou mon code réseau qui fait ça.
En gros, il faut définir une commande avec comme paramètre:
- nom: le nom de votre commande. La valeur affichée se trouve en dessous du nom de la commande. Sélectionnez le nom de la commande pour récupérer la donnée. Chez moi c'est ConsigneprogrammeNormal
- Type script: script
- Type: Action. Perso j'ai choisir Curseur comme représentation
- Requête: spécifier le chemin du script. L'argument du script est #slider# pour récupérer la valeur du curseur et la passer en paramètre.
Code : Tout sélectionner
/var/www/html/plugins/script/core/ressources/viessmann/SetNormalProgramTemperature.php #slider#
Avec ceci ça fonctionne nickel pour moi. C'est un peu lent mais j'ai l'impression que c'est le serveur viessmann ou mon code réseau qui fait ça.
Re: Script pour Gestion Chaudière Viessmann connecté
Bonsoir,
j'ai pas trop compris ton explication.
comment fais tu pour choisir la temp a partir de ton dashboard? as tu un virtuel?
comment la valeur de la temp est elle intégrée dans le fichier .php?
merci d'avance
Denis
j'ai pas trop compris ton explication.
comment fais tu pour choisir la temp a partir de ton dashboard? as tu un virtuel?
comment la valeur de la temp est elle intégrée dans le fichier .php?
merci d'avance
Denis
Re: Script pour Gestion Chaudière Viessmann connecté
Bonsoir,
le git clone est il tj necessaire avec l'utilisation du fichier phar?
quels sont les fichier indispensable à placer dans : /var/www/html/plugins/script/core/ressources/ ?
Denis
le git clone est il tj necessaire avec l'utilisation du fichier phar?
quels sont les fichier indispensable à placer dans : /var/www/html/plugins/script/core/ressources/ ?
Denis
Re: Script pour Gestion Chaudière Viessmann connecté
Bonsoir,
autre constatation:
dans mon php, la ligne suivante ne fonctionne pas:
$viessmannApi->setNormalProgramTemperature($argv[1]); me donne une erreur --> PHP Fatal error: Uncaught Error: Call to a member function setNormalProgramTemperature() on null...
par contre si j'utilise ceci: $viessmanApi->setRawJsonData(ViessmannAPI::HEATING_PROGRAM_NORMAL,"setTemperature","{\"targetTemperature\":$argv[1]}"); alors ça fonctionne.
pourquoi il ne comprends pas la commande : setNormalProgramTemperature?
Denis
autre constatation:
dans mon php, la ligne suivante ne fonctionne pas:
$viessmannApi->setNormalProgramTemperature($argv[1]); me donne une erreur --> PHP Fatal error: Uncaught Error: Call to a member function setNormalProgramTemperature() on null...
par contre si j'utilise ceci: $viessmanApi->setRawJsonData(ViessmannAPI::HEATING_PROGRAM_NORMAL,"setTemperature","{\"targetTemperature\":$argv[1]}"); alors ça fonctionne.
pourquoi il ne comprends pas la commande : setNormalProgramTemperature?
Denis
-
- Timide
- Messages : 282
- Inscription : 30 nov. 2017, 13:54
Re: Script pour Gestion Chaudière Viessmann connecté
J'utilise le plugin script. Quand tu définis une commande tu peux choisir soit le type info pour afficher une valeur soit le type action pour pouvoir définir celle-ci. En php $argv[1] signifie: le premier élément du paramètre passé au script. Donc si tu fais
Code : Tout sélectionner
php setNormalTempareture.php 20
Code : Tout sélectionner
setNormalTemperature.php #slider#
En effet, le git clone n'est plus nécessaire vu que je livre en phar. Toutefois, le phar ne contient que l'api pas les exemples.le git clone est il tj necessaire avec l'utilisation du fichier phar?
quels sont les fichier indispensable à placer dans : /var/www/html/plugins/script/core/ressources/ ?
En pratique tu as besoin du phar pour l'api, de tes fichiers "example" genre setNormalTempareture.php, de bootstraph.php et de credentials.properties.
En pratique, quand je rajoute de nouvelles méthodes à l'API je publie une nouvelle version du phar. Par contre, lorsque je fais évoluer les exemples je mets à jour directement dans le git.
Pour ton dernier problème, il te dit juste que l'objet $viessmannApi n'existe pas et donc que tu appelles une fonction sur un objet qui n'existe pas. Il semble que ça soit $viessmanApi qui existe. J'avais fait une erreur de typo en oubliant le 2ème n de viessmann. L'objet en question est défini dans le fichier bootstrap.php par la ligne
Code : Tout sélectionner
$viessmannApi = new ViessmannAPI($params)
A mon avis, ton bootstrap.php n'est pas à jour et contient encore la définition avec un seul n.
Re: Script pour Gestion Chaudière Viessmann connecté
Bonjour,
En effet il y avait un "n" trop peu. Encore merci pour l'aide.
Denis
En effet il y avait un "n" trop peu. Encore merci pour l'aide.
Denis
Qui est en ligne ?
Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 2 invités