Table Of Content¶
- Technical and developers documentation
- Quick overview
- Core development
- Releasing tasks
- Test security of the Administration interface with Wapiti
- Commands
- Database model
- Network ports
- Sensors
- Tools
- Tools
- Developing a user interface
- xPL hub overview
- Brain packages development
- General informations
- Differences between a plugin and a brain package
- First, create a repository and write some specifications
- Branches management
- Brain package name
- Prepare the plugin
- Before coding : branching to ‘develop’
- Json file
- Rivescript part
- Python part
- Dedicated administration page
- Icon
- Documentation
- Tests
- Your brain is ready ? Make some users test it
- Release a version of your brain
- Rivescript rules
- Plugins developement documentation changelog
- Plugins development
- General informations
- First, create a repository and write some specifications
- Branches management
- Plugin name
- Prepare the plugin
- Before coding : branching to ‘develop’
- Json file
- Python part
- Dedicated administration page
- Icon
- Udev rules
- Documentation
- Tests
- Your plugin is ready ? Make some users test it
- Release a version of your plugin
- Some other points
- What is new in Domogik 0.4+ plugins format ? And why ?
- Plugins development workflow
- Core component : administration user interface
- Butler technical details
- Core component : dbmgr
- Core component : manager
- Core component : xplgw
- Domogik data types
- Manager Overview
- MQ Overview
- Publish Subscribe MQ messages
- Request Reply MQ messages
- Packages overview
- xPL plugins
- Plugins technical documentation
- /cmd - send commands to devices
- REST Overview
- Internal domogik xpl messages
- plcbus.basic
- Teleinfo xPL messages
- weather.basic
- The brain file tree
- Dedicated administration pages
- Conversion functions
- Create a repository for a plugin
- What should contain the documentation ?
- Doc for developers
- Documentation for plugins
- Publish your documentation with ReadTheDocs.org
- Writing documentation for sphinx in ReST format
- Documentation tree
- Domogik field types
- Git
- In git what is a branch ?
- Package icon
- Package json file
- info.json for plugins - commands section
- info.json for plugins - configuration section
- info.json for plugins - device_types section
- info.json for plugins - identity section
- Plugin json file : info.json
- Plugins json file upgrade from version 1 to json version 2
- Json sample file
- info.json for plugins - sensors section
- info.json for plugins - xpl_commands section
- info.json for plugins - xpl_stats section
- Create main folders and files in one shot
- The plugin file tree
- Plugin binary part
- Purpose
- XplPlugin and its useful functions
- Template of the binary part
- Focus on the start process
- Perform updating devices process
- Focus on the end : plugin ready
- Focus on devices tools
- Focus on the logs
- Focus on xPL : send xPL messages and listen for xPL messages
- Focus on launching threads
- Focus on the json file
- Devices detection
- Python __init__.py files
- Plugin library part
- Readme and changelog files
- Rules for packages release numbers
- Plugin specifications
- start.sh
- Testing a plugin
- Test runner for Domogik plugins
- Travis CI templates
- Udev rules files