Announcing the GhostXML plugin. The GhostXML plugin is maybe a little different than your typical Indigo plugin. The purpose of the GhostXML plugin is to interface with XML files (web-based or the local machine) and parse the XML to device states. If the structure of the XML file changes over time, the plugin will pick up the new structure and add the states automatically. Perhaps an example would be helpful at this point:
Create the device, select GhostXML and then the GhostXML device type.
Presently, devices have one setting. The path to the XML file. It must follow one of the two example formats.
If you're successful, you will be presented with device states that mirror the supplied XML.
There is also one Action, which allows for refreshing the data on demand. Why is that so different? Well, in a nutshell, everything is transitive (hence, the Ghost part.) If an XML node goes away, so does its state. That's it. The plugin is both simple and powerful. It's also very much in alpha, so use it at your own risk. Please post bugs and feature requests to this post. If there's enough interest, I'll ask Matt and Jay to create a permanent forum. This is just the beginning and the idea here is that this plugin would be continuously developed and supported by the community. If you're interested in contributing, please let me know.
You can download it here: GhostXML Plugin.
Cheers,
Dave