Integration between tools/activities
Good morning,
In a recent post, in a specific discussion, I asked a question about the functionality of H5P that I repost on a general level, but it is not meant to be a critique, rather a cue to be considered as a "feature request"...
I was wondering, why is it that in tools such as Course presentation, just to give an example, but there could be others (tools that lend themselves to presenting content of various kinds, so not specific to one function -I hope I have explained myself-), it is not possible to integrate a whole range of other H5P tools.
For example, why in course presentation or in branching scenario can't I integrate a crossword exercise?
Of course I am a user who uses H5P as part of my course construction and I am not a technician, so I don't know any technical constraints, but more integration/interaction between the different tools would be interesting.
In any case, thank you to everyone who is working on this excellent and interesting product!
Bye :-)
otacke
Tue, 06/20/2023 - 18:46
Permalink
Hi!In theory, this is very
Hi!
In theory, this is very simple: Just add one single line of code to semantics.json which describes what libraries can be used. For Course Presentation, the lines at https://github.com/h5p/h5p-course-presentation/blob/master/semantics.json#L52-L81
In practice, if there's a toolbar that is used to select content types as in Course Presentation, also add some lines of CSS to style the new option. Still not a big deal - but you can see some issue here even without knowing how to code. The toolbar is full. Even with the extra expanding "menu" there's not much slack left. That is something, however, that is going to be tackled by replacing this toolbar (and all the other cases) with one single button that uses the H5P Hub to choose the subcontent (or upload existing local content or even content from the H5P OER Hub).
Still, there can be trouble. Could be that the subcontent library that you want to use doesn't properly set defaults for mandatory values, could be that the subcontent doesn't play well with its new parent because it requires some custom resize handling or takes some things for granted that it should not, etc. I covered that topic a while ago in a video.
And the latter is really the tricky bit. First and foremost, you need to test every potential new subcontent in a compound content type for issues. That takes time/resources. If you're lucky, everything works nicely. If you're not so lucky, you may be able to find a workaround in your compound content type - which also takes time/resources and is not an ideal solution. You would not want to and should not have to have custom code just to make some subcontent work. So, you could change the subcontent candidate. That may in some cases be simple, but may also require - you guessed it - quite some time/resources. On top, the subcontent type may not even be under your control and you're at the mercy of the respective maintainer to either change things himself/herself or to review the code that you contribute.
Best,
Oliver
david.delco
Thu, 06/22/2023 - 21:10
Permalink
Thank you
Hi Oliver,
Thank you for the comprehensive answer. It is clearer to me now.
Best regards. :-)