XIBO Module development for school project

my name is Fabian Maurhart and I am a soon to be fully educated Software Developer. For our graduation project we decided to make a plugin/module for XIBO which allows other students to see when a teacher is ill and someone has to represent him. The API or Website we use for our schedule and general Informations is called “WebUntis”.

Now to my question:

I am new to XIBO development and now I need a module that automatically receives information from an API and shows them on the screen. This should be updated within an hour or something like that. I tried to look at the module documentation and searched several similar forum topic but didnt find something to start with. I tried looking at existing modules like twitter but they are built with many different confusing files and I still dont know how to start.

I would really appreciate if someone could give me a brief introduction in module design/development. Maybe a very very very simple starting example.

With best regards
Fabian Maurhart and project team.

I assume you’ve already seen it, but just in case - https://xibo.org.uk/manual/en/advanced_modules.html

In most cases new module will come with (at least) 4 files, .json, actual module class file, add and edit twig files.

Let’s say we will use HLS module as an example:
HLS module class - https://github.com/xibosignage/xibo-cms/blob/develop/lib/Widget/Hls.php
,json - https://github.com/xibosignage/xibo-cms/blob/develop/modules/hls.json
twigs - https://github.com/xibosignage/xibo-cms/blob/develop/modules/hls-form-add.twig / https://github.com/xibosignage/xibo-cms/blob/develop/modules/hls-form-edit.twig

While you can of course look at Twitter, ticker or forecast, those might be less clear, as they are slightly more complex.

Those four files in not overly complicated form, will allow you to install a new module (on Modules page) and then to use it on layouts.

You can also look at the embed html module, as perhaps you will find something that you use in your module in there as well, actually you could probably get away using this embed html module with your website, but if you want to create a new module that will make use of your API then that’s fine of course.

If you look at those example files and find something not clear or confusing, please do reply in this topic.

1 Like

did you manage to start the project? How or what did you do? You can also share with me. I find myself in your same situation. If you want you can write to me in private

thank you