Closed 7ooL closed 6 years ago
oh please tell me i just found it, http://192.168.1.248:3000/systems.json
this is useful for anybody else who wants to write their own interface and control any setting found in the systems.json
file
Yep, that's it. For documentation if anyone else is interested, Infinitude makes all endpoint data available as both json and xml by changing the extension. Check the /state
directory for things you might want to poke.
Just remember that modifying the system configuration directly is more complex and can be dangerous, which is why the api endpoints are there.
i've started creating my own python api for easier modification of the system configuration file, It's much more than what i actually needed but it thought others may find it useful. I'll do what i can to protect users from jamming in things that may break infinitude. check it out here: https://github.com/7ooL/pyInfinitude
I appreciate the work you have done on this project but now i'm simply using it as a pass through to configure the infinity system. Can you offer me any insight on how to pass the systems.json file directly to the wall thermostat and not go through infinitude? i'd like to just pull and push the file when i need to make changes.
The thermostat uses an xml interface which is loosely documented in the wiki. The majority of what Infinitude does is to provide endpoints adhering to the protocol the thermostat expects, and to do transparent json conversions for the web interface. So you'll need to write a translator from json to the correct xml format and answer to at least the alive, status, and system endpoints with said xml.
so i think I've come across a different way to interact with the api, that would give me complete control over the entire system.
http://192.168.1.248:3000/systems/infinitude
returns and xml file of the entire system's configuration. I've noticed that the Infinitude schedule editor pushes a json version of this xml file to the same addresshttp://192.168.1.248:3000/systems/infinitude
what i can't figure out is how to convert the XML to JSON so that i can push my own edits back to infinitude. is there a particular json convention that you use that i can look for. for example Abdera, BadgerFish, Cobra, GData, Yahoo, Parker dont seem to fit what you push.
is there a way to pull /systems/infinitude in a json format so i don't need to mess with xml?