Overview
This section provides guides on building some example modules for Allsky.
The following points should be considered when developing modules:
- All module filenames must be prefixed with
allsky_. - All modules must be unique i.e. there can only be one
allsky_examplemodule. - The module manager is sensitive to errors in the meta_data structure. Please ensure the structure is valid JSON.
- Modules must return a result, a text string indicating the outcome of the module. This is used in the module debug popup in the module manager.
- All of the example modules here can be found in the allsky modules repository.
Tips when writing modulesΒΆ
- Ensure you limit the modules to the correct pipelines. Some modules make sense to run in the capture pipelines, dya and night and some don't.
- Ensure you keen the version numbers and changelog updated when releasing new versions, this helps the module installer identify new versions.
- DO NOT write modules that take a long time to execute and put them in the capture pipelines, this can cause delays in capturing imgages.
- Make use of the functions available in the Shared Module module.
- Make use of the
env.jsonfile, by setting"secret": "true"where required for module arguments, This ensures that sensitive data is never passed outside of Allsky. - If you are using the database ensure you set up the required purging of old data.