Skip to main content

Recap

So let's recap on what we just achieved:

  1. We've created a new, empty plugin
  2. We created three different metrics and registered them to MoBro
  3. Then we used the scheduler to periodically update the values of our dynamic metrics
  4. We exposed the metric update frequency to the user as a plugin setting
  5. We published the plugin as a single .zip file
  6. And finally we've successfully installed the plugin to MoBro

If we take a look at all the resulting code, we can see that it's actually not that much.
Lots of the heavy lifting (like scheduling, settings, communication with MoBro) is taken over by the SDK, so we can focus on creating and updating metrics.

Furthermore, the published plugin is quite small. The published .zip file for this plugin is just 4KB in size.

Template

Didn't follow all the steps in this 'Getting Started' tutorial?
Or something is just off and doesn't work?

Don't worry, the final result of the plugin we've created in this tutorial is available as a project on GitHub.
You can have a look at the code and check out the repository here: Plugin.Template

Next steps

Wondering on how to continue after creating this first plugin?
Here are some suggestions on topics that probably make sense to take a closer look at now:

  • In depth: Plugin configuration
    Take a look at all the available attributes in the mobro_plugin_config.json file and what they are used for
    Learn how you can add different fields (checkboxes, drop-downs,...) to the plugin settings
  • In depth: IMoBroPlugin
    Check on the additional available functions of the IMoBroPlugin interface we've already implemented (like Init) and when they can/should be used
  • In depth: Registering items
    Take a closer look at registering metrics, metrics types and units, custom categories, etc.
  • In depth: Updating metrics
    Take a closer look at updating metric values and the value restrictions imposed by the metric type
  • In depth: Error handling
    Take a look at how to properly handle errors (like missing/invalid settings) and how exceptions are handled
  • Existing plugins
    Take a look at some existing, open-source plugins to get a better feel on how plugins can be implemented