midimonster icon indicating copy to clipboard operation
midimonster copied to clipboard

Remote control interface

Open Spacelord09 opened this issue 4 years ago • 11 comments

@cbdevnet If you add a UI backend to configure IP addresses and stuff it would make some of my projects easier.

Spacelord09 avatar Aug 17 '19 11:08 Spacelord09

A Web UI makes sense.

Spacelord09 avatar Aug 17 '19 11:08 Spacelord09

Hmm interesting idea, would need to solve some questions first

  • Where would the web interface store configuration? ** Would it overwrite/edit a loaded configuration?
  • What should be configurable? ** Backends currently only take configuration at startup time, before events are translated ** The core does not know anything about channel names, these are completely backend-internal ** Channel (re-)mapping currently is not supported during translation, only at configuration time

It might make sense to relax some of these constraints (e.g. allow the channel map to be reconfigured at runtime), but that still would require new APIs for mapping introspection (as backends currently have no insight into where their events go, they just push them to the core which does the rest).

I can see the appeal, but this is going to be a larger rework of some core limitations, so it might be some time until it happens.

cbdevnet avatar Aug 17 '19 19:08 cbdevnet

I think this Idea is a seperate Software that configures and starts the midimonster.

Spacelord09 avatar Aug 17 '19 21:08 Spacelord09

@cbdevnet Warum schreiben wir eigendlich nicht in Deutsch? ;DD

Spacelord09 avatar Aug 17 '19 21:08 Spacelord09

Naja die Arbeitssprache der Informatik ist halt schon Englisch, wenn man programmiert ist man meistens eh schon in nem eher englischen Kontext ;) Dazu kommt dass ich die Software gerne international halten wuerde, aber prinzipiell hab ich auch nichts gegen Deutsch. Sachen die auch wichtig/interessant fuer andere Leute sind, die die Issues anschauen, wuerde ich wahrscheinlich nochmal Englisch drunterschreiben damit man das auch beim nachlesen versteht. Ich reg mich auch manchmal auf wenn Issues oder Code die mich interessieren ploetzlich nur noch auf Russisch weiterdiskutiert werden :D

cbdevnet avatar Aug 17 '19 21:08 cbdevnet

Jo stimmt. Ich denke man sollte eine extra software dafür proggen, die dann nach der Configuration das midimpnster startet. Verstehst du was ich meine?

Spacelord09 avatar Aug 17 '19 23:08 Spacelord09

Kann mir das auch ganz gut als integriertes Interface (also ne REST-API oder so) vorstellen, das braeuchte dann eben mehr Integration (siehe oben).

Als Extra-Tool hat man fast die gleichen Probleme, tendentiell muss man ja irgendwie pruefen dass eingegebene Channel-Namen gueltig sind (das weiss nur das Backend selbst) und welche Konfigurationsoptionen (mit welchen gueltigen Werten) es gibt - das ist bisher programmatisch nicht so recht abfragbar, und einfach hart reinprogrammieren wuerde ichs ungern, da man dann fuer jedes neue Backend an mehr Stellen anpacken muss.

cbdevnet avatar Aug 18 '19 10:08 cbdevnet

Dann bastel mal was schönes😉 (Hast du meine Mail erhalten?)

Spacelord09 avatar Aug 18 '19 11:08 Spacelord09

Jop ich schau mal wies voran geht :) Muss mal schauen, Mails lese ich nicht so haeufig, aber angekommen sollte sie sein :)

cbdevnet avatar Aug 19 '19 17:08 cbdevnet

ich habe mal einen controller zu schreiben: https://github.com/jduepmeier/midimonster-controller

das ist ein simples webinterface, dass die Config schreiben kann und dann den service neustartet. Service management geht mit systemd oder einfach mit Subprozessen.

Ich bin gerade noch dabei das richtig zu releasen.

Edit: ist jetzt released in Version 0.1.0

jduepmeier avatar Nov 18 '21 10:11 jduepmeier

Hey @jduepmeier, cooles Projekt! Ich werde es die Tage mal austesten ;) Wenn du möchtest kannst du für dein Projekt gerne einen Artikel in unserer KnowledgeBase schreiben(https://github.com/control8r/midimonster-knowledge-base).

Spacelord09 avatar Nov 19 '21 21:11 Spacelord09