openLML-enrol neu entwickeln

Hallo zusammen,

…es stört mich, dass es derzeit kein funktionierendes openlml_enrol mehr gibt.
Deswegen hat der Vorstand diskutiert und beschlossen, dass wir gerne dafür Geld ausgeben, dass jemand einen lmn7 kompatiblen Nachfolger des plugins für moodle erstellt.
Dafür bräuchten wir aus der Community jemand, der folgende Dinge macht:

  1. jemanden sucht, der das entwickelt
  2. ein „Lastenheft“ schreibt (gerne mit Diskussion hier im Forum)
  3. als Schnittstelle zwischen Entwickler und Verein fungiert.

Wer könnte sich den vorstellen diese Arbeit für uns alle zu übernehmen?
Ich glaube nicht, dass das so viel Arbeit ist.

Viele Grüße

Holger
(zweiter Vorstand linuxmuster.net)

Hallo Holger,

Ich habe nie openml_enrol verwendet, und wenn ich richtig verstanden habe, war es ein PHP-Skript um die User automatisch in Moodle einzuschreiben.
Was waren genau die Funktionalitäten ?
Ich glaube, für die, die es nicht kennen, eine kurze Beschreibung wäre hilfreich um das Projekt besser vorzustellen ( und langsam brauchen wir es auch wahrscheinlich in unserer Schule ).

Gruß

Arnaud

Hallo Arnaud,

Was waren genau die Funktionalitäten ?
Ich glaube, für die, die es nicht kennen, eine kurze Beschreibung wäre
hilfreich um das Projekt besser vorzustellen ( und langsam brauchen wir
es auch wahrscheinlich in unserer Schule ).

ich kenne die INnereien nicht so genau udn kann nur sagen, welche
Funktionen es hatte (für mcih als Admin).

nicht vollständige Liste:

  • periodischer sync mit dem LDAP einstellbar in den Geplanten Aufträgen
    von moodle. Dabei werden Nutzer die im LDAP gefunden werden in moodle
    angelegt und welche die verschwunden sind werden gelöscht. Beides sind
    sehr nützliche Fähigkeiten: alle Nutzer stehen für die Kurse zum
    Einschreiben bereit und man muss nicht mehr „Aufräumen“ am Ende vom Jahr
    oder dran denken auf zu räumen, wenn man jemand im LDAP löscht.
    Das blöde ist nämlich, dass man sich, wenn man aus dem LDAP fliegt, zwar
    nicht mehr in moodle anmelden kann, aber man noch immer als normaler
    Nutzer geführt wird: mit email Adresse. Mails bekommt man von moodle
    also weiterhin …

  • es gab einen eigenen Einstellungsbereich für das Plugin. Dort konnte
    man einstellen, welche Gruppen aus dem LDAP als globale Gruppen in
    moodle verfügbar sein sollen.
    So hatte man dann die globale Gruppe 8a die man, statt alle Schüler
    einzeln, in einen Kurs aufnehmen konnte.
    Das hatte auch den Vorteil, dass wenn der Peter aus der 8a in die 8b
    versetzt wurde, dann brauchten die Lehrer in moodle in ihren Kursen
    nicht nachbessern: das kam von alleine an.

  • in den Eintellungen konnte man auch einen Kursbereich festlegen in dem
    die Lehrer „Kursersteller“ waren: sie konnten dort also ihre eigenen
    Kurse verwalten.

Vielleicht kann jemand die Liste vervollständigen.

LG

Holger

Hallo,

ich kann gerne mal eine Entwicklerin kontaktieren, die für Moodle auch Themes programmiert.

Allerdings habe ich vom technischen Background keine Ahnung und auch keine LMN um das zu testen.

Viele Grüße
Steffen

Viele Grüße
Steffen

Hallo Steffen,

ich kann gerne mal eine Entwicklerin kontaktieren, die für Moodle auch
Themes programmiert.

das wäre super.
Allerdings wäre es dann auch super, wenn du weiterhin als
Ansprechpartner für die Dame fungieren könntest.

Allerdings habe ich vom technischen Background keine Ahnung und auch
keine LMN um das zu testen.

testen mach ich dann, dann ist nicht das Problem.

Du kannst auch sagen, dass es das Plugin mit Quelltext schon gibt, un
ddass sie eigentlich nur zwei Dinge machen muss:

  1. anpassen an moodle 3.9 (das Plugin funktioniert meine ich nur bis 3.6
    richtig)
  2. anpassen von LDAP der lmn62 an AD der lmn7.
    Also eigentlich aus einer LDAP Anbindung eine AD Anbindung machen.

Die Frage ist halt, ob die auch sowas macht: nicht nur design sondern
auch Datenbank (Nutzer) gedöns.

Sie kann natürlich jederzeit einen Tread in ask starten und die
Community befragen … wir sind ja als „eher gesprächig“ bekannt :slight_smile:

LG

Holger

Kurze Zwischeninfo: bei uns funktioniert es auch mit moodle 3.7.7 Ich muss es nur nach jedem update von moodle durch BelWü wieder aktivieren.

Ich wäre aber an so etwas sehr interessiert, ab besten auch noch mit Funktionalität zur Gruppen- nicht nur Kurseinschreibung. Leider kenne ich aber niemanden, der so etwas programmiert.

Gruß
Angelika

Habe nochmal gestöbert… Ich hatte die Infos, die ich seinerzeit von Frank erhalten hatte, bereits im Forum gepostet, und zwar hier

Hallo Steffen,

ich kann gerne mal eine Entwicklerin kontaktieren, die für Moodle auch
Themes programmiert.

das wäre super.
Allerdings wäre es dann auch super, wenn du weiterhin als
Ansprechpartner für die Dame fungieren könntest.

was hat der Entwickler gesagt?

LG

Holger

Hallo zusammen,

kann sich wirklich niemand finden, der bereit ist ein wenig Zeit in
unser Projekt zu investieren, indem er sich als „zuständig“ für das
openlml-enrol Plugin bereit erklärt?

Er (Sie) müsste ja nichts selber entwickeln sondern nur einen Entwickler
(oder Firma) suchen und die dann betreuen: mehr oder weniger deren
Fragen hier ins Forum weiterleiten.

… bitte …

LG

Holger

Hallo,

man könnte natürlich Frank Schütte fragen, der hat sein Plugin scheinbar für eine andere Serverlösung weiterentwickelt:

https://moodle.org/plugins/pluginversions.php?plugin=enrol_oss

Letzter Commit vor 12 Tagen - ich würde sogar denken, dass jemand ™ Motivierter das anpassen könnte, immerhin läufts auch mit aktuellen Moodles.

VG

Frank

Hallo zusammen,

wir betreiben zwar (noch) kein LinuxMuster, unsere Benutzerdaten sind aber auch in einem LDAP (eDirectory).
Ich hab ein kleines Skript gemacht, welches im Verzeichnis „Klassenzimmer“ anlegt. Dort sind dann die Schüler der Klasse, die unterrichtenden Lehrer und die Klassenlehrer eingetragen. Infos stammen aus Untis. Mit diesem Klassenzimmer-Object des LDAP-Verzeichnisses legt dann das Moodle LDAP-Enrolement-Plugin automatisch die Klassenzimmer an.

Die Benutzer selbst werden automatisch mit dem LDAP synchronisiert (LDAP User sync). Da die Schüler eine Schul-Emailadresse besitzen, sind sie in Moodle direkt einsatzbereit und müssen nicht noch eine Email hinterlegen und verifizieren.

Ein weiteres Skript legt in LDAP Klassengruppen an. Diese werden auch für die Nextcloud verwendet. In Moodle sorgt das „Cohort sync“-Plugin für das Anlegen und Synchronisieren der globalen Gruppen. Mittels eines moosh-Kommandos kann man dann die Klassenzimmer gleich gemäß dem Musterklassenzimmer einrichten.

Ferner gibts noch ein kleines Skript, welches im LDAP Gruppen der an einer Schulart unterrichtenden Lehrer anlegt. Das kann man auch immer gebrauchen. Z.B. zum zielgerichteten Kalendertausch.

Also statt eines Spezial-Plugins in Moodle bin ich den anderen Weg gegangen: Innerhalb des Directories die Gruppen so anzulegen, dass man sie mit den Bordmitteln von Moodle greifen kann.

Nur beim Import des Untis-Stundenplans in Moodle bin ich den anderen Weg gegangen und hab ein Plugin für Moodle gemacht, aber das ist eine andere Geschichte.

Liebe Grüße

Raphael

Hallo Frank,

man könnte natürlich Frank Schütte fragen, der hat sein Plugin scheinbar
für eine andere Serverlösung weiterentwickelt:

Moodle plugins directory: OSS Enrolment: Versions | Moodle.org

GitHub https://github.com/fschuett/moodle-enrol_oss

Frank Schütte wurde im März schon kontaktiert und hat mehrere Hinweise
gegeben und auch signalisiert, dass er den gesammten code gerne weiter
geben würde.
Dass er es für OSS weiter entwickelt hat hat er auch gesagt: und dass
sie dort eine AD haben.

Wer auch immer das hier „Betreuen“ würde, hätte schon viel Hilfe: nur
leider kann ich das nicht machen, weil ich jetzt schon so viel um die
Ohren habe, dass ich manche Dinge eben nicht mehr richtig machen kann …

Deswegen suche ich jemand, der sich dafür verantwortlich zeigt.

LG

Holger

Hallo Raphael,

das klingt ja interessant.

Ich hab ein kleines Skript gemacht, welches im Verzeichnis
„Klassenzimmer“ anlegt.

… ein script auf dem novell server, oder?

dann das Moodle LDAP-Enrolement-Plugin automatisch die Klassenzimmer an.

hab ich da im LDAP enrolment von moodle einen Knopf übersehen?
„Klassen“ gibt es bei uns im LDAP ja schon: wenn ich die in moodle
abbilden könnte, wäre das schon viel Wert.

Die Benutzer selbst werden automatisch mit dem LDAP synchronisiert (LDAP
User sync).

wo schaltet man den in moodle ein?

Ein weiteres Skript legt in LDAP Klassengruppen an. Diese werden auch
für die Nextcloud verwendet.

das ist bei uns unnötig, weil es das im LDAP schon gibt: in der
Nextcloud hab ich schon die Klassen mit Teilnehmern.
Man kann also sowiso mit der „7a“ etwas teilen oder mit „teachers“.

In Moodle sorgt das „Cohort sync“-Plugin
für das Anlegen und Synchronisieren der globalen Gruppen.

OK: da muss ich mal hinschauen.

Nur beim Import des Untis-Stundenplans in Moodle bin ich den anderen Weg
gegangen und hab ein Plugin für Moodle gemacht, aber das ist eine andere
Geschichte.

das klingt auch interessant.
Da hab ich diesen Weg gewählt: ich synce die html Dateien auf einen
Server in ein .htacess gesichertes Verzeichnis: in moodle ist ein Link
auf diese Dateien.
Funktioniert auch gut seit Jahren und spart WebUntis …

LG

Holger

Hallo Holger,

für das User-Sync gibts unter „Site administration“ - „Server“ - „Tasks“ - „Scheduled tasks“ den Task:
\auth_ldap\task\sync_task

Die Skripte, die die Gruppen generieren sind kleine Perl-Skripte. Wir verwenden (noch) die NovellML.

Das LDAP-Enrolement Modul ist sehr mächtig. Ich hab auch erst ein wenig gebraucht, bis ich verstanden habe, wie man dort was einstellen kann/muss. Über das „Map roles from LDAP“ können wir da auch die Klassenlehrer und die unterrichtenden Kollegen eintragen. Klassensprecher haben wir nicht über LDAP abgebildet. Das müssen dann die Klassenlehrer von Hand eintragen. Die Klassensprecher haben in dem Moodle-„Klassenzimmer“ dann das Recht den Kalender zu pflegen.
Mittels des Schalters „Auto create“ legt das LDAP-Enrolement-Plugin das Klassenzimmer direkt an.

Die Kollegen legen ihrerseits ihre Fachkurse an und binden sie mittels „Cohort enrolement“ an die jeweilige Klasse. Somit übertragen sich auch Veränderungen in der Klassenzusammensetzung automatisch in Moodle. Nur bei den Fachkursen, da müssen die Kollegen sich ihre Schüler zusammensuchen und einschreiben. Auf jeden Fall müssen sich die Schülerinnen und Schüler um nichts mehr kümmern. Sie sind in die betreffenden Kurse eingeschrieben und haben auf ihrem Dashboard alles im Blick. (Auch der Stundenplan mit aktuellem Vertretungsplan - alles OHNE Webuntis)

Ferner haben wir noch Aulas für die jeweiligen Schularten angelegt. Darüber kann Information klassenübergreifend verteilt oder Abfragen wie „Kurswahl Oberstufe“ abgehandelt werden. Mittels Meta-Kurs ist die entsprechende Aula an die Klassenzimmer gebunden.

Liebe Grüße

Raphael

Hallo zusammen,

ich wollte dazu eigentlich nicht mehr groß etwas schreiben - denn all das ist ja mehr als ausgiebig diskutiert worden.

Nachdem wir bei uns nun monatelang Gehirnschmalz in Moodle gesteckt haben und inzwischen einige Jahre Erfahrung gesammelt haben, sehe ich einfach das Hauptproblem, dass wir in der lml keine Möglichkeiten haben, Schulstrukturen abzubilden. Und genau das will man (irgendwie) in Moodle. Es gibt in der LML Lehrer, Klassen, Projekte. Und es gibt wohl theoretisch auch die Option, mehr abzubilden - aber das gibt es so bisher halt nicht (letztens erst: Hausmeister/Mitarbeiter… „Geht ja über Extraklassen“. Das stimmt - aber damit fehlt halt die Möglichkeit, Hierarchien abzubilden).

Klar - wenn der Verein jetzt Geld in ein neues enrol-Plugin stecken mag, seis drum. Ich denke aber, die Kernprobleme („Wer sind die Lehrkräfte einer Klasse“, „Wie hängen Personen jenseits von Klassen zusammen“/„Wie realisiert man Schülergruppen jenseits von Klassen?“) wären die wichtigeren Baustellen. Die Diskussion ist nicht neu, aber die Aussage damals „Gruppen jenseits von Klassen muss man sich dann halt zusammenklicken“ finde ich doch recht problematisch - denn das betrifft jedes Jahr von Neuem viele, wirklich viele Schülerinnen und Schüler, die von Lehrern „zusammengeklickt“ werden sollen. Und das finde ich extrem unkomfortabel - und da wird es nach derzeitigem Stand auch in den nächsten Jahren keine Lösung geben. Und da schläft eben die Konkurrenz nicht.

Natürlich haben viele noch ein eher flacheres/einfaches Moodle und da würde das Plugin genügen. Aber auch dann geht das Abbilden der LDAP-Nutzer und -Klassen in Moodle über die REST-Schnittstelle wirklich einfach. Das funktioniert zudem mit jeder Moodle-Installation ganz ohne Plugin und von überall aus.
Da die Schulkonsole technisch meines Wissens ähnliche Gundlagen hat, wie Flask, könnte man das vermutlich sogar mit wenig Aufwand dort einbauen.
Daher fände ich das Geld dort sinnvoller investiert, als in einem Plugin, welches das o.g. Problem nur weiter zementiert (und im Übrigen regelmäßig gewartet werden muss, damit sich die Problematik nicht wiederholt).

Viele Grüße
Thomas

3 „Gefällt mir“

Hi zusammen,
ich sehe es zwar genauso wie du, Thomas (@thoschi) – war in der Zwischenzeit aber trotzdem bereits tätig. Frank Schütte meinte ja bereits, dass sein Plugin prinzipiell auch mit v7 bzw einem AD laufen müsste und dass es seiner Meinung nach vermutlich lediglich an ein paar falschen Settings liegt, dass es mit der v7 bisher nicht zusammenlief …
Nun hatte ich einen unserer Schüler auf das Problem losgelassen, der es in relativ kurzer Zeit auf seiner Testinstallation einkreisen und vermutlich lösen konnte. Da er jedoch keine vollständig eingerichteten Klassen/Strukturen hat wie auf einem Produktivsystem, konnte er es bisher nicht ausgiebig testen. Dennoch poste ich jetzt vorab die Ergebnisse (auch wenn das natürlich kontraproduktiv zum Beitrag von Thomas ist). Wer möchte, kann es sich anschauen und es mit den hier dargestellten Einstellungen versuchen. Sehr viel sinnvoller und vor allem sehr viel mächtiger ist aber der Weg über die REST-API - wie von @thoschi vorgestellt.

Dennoch ist es vielleicht gut, wenn dieses Thema als „gelöst“ markiert werden kann, sofern es bei anderen funktioniert.
Hier also die vermutlich richtigen Settings für v7 und das open_enrol-Plugin:
ldap_auth.pdf (75,5 KB)
openlml.pdf (39,0 KB)
Wer testet das in einer produktiven Umgebung und gibt dann hier Bescheid?

Noch eine Ergänzung: Ob und wie das jetzt mit den Projekten funktioniert, kann ich nicht beurteilen, da die Projekte innerhalb der v7-WebUI meiner Meinung nach kein vorangestelltes „p_“ mehr erhalten, oder?

Schöne Grüße,
Michael

Was hat denn die WebUI damit zu tun? Projekte haben nachwievor ein p_ prefix, das wird (auch wen irrelevant) in der WebUI so dargestellt.

… da sieht man es. Sonst nichts. Ich hatte im Hinterkopf wahrscheinlich das ehemalige „Projekt“ p_wifi, das es jetzt ja so nicht mehr gibt und nur noch wifi heißt. Ist ja umso besser, wenn alle anderen (richtigen) Projekte auch weiterhin mit p_ gefiltert werden können…

Unter’m Strich scheint aber der „Andrang“ auf die bereitgestellten PDF Dateien sehr überschaubar zu sein: 0x angeklickt?!? Ferien-Effekt?? Nur E-Mail-Leser hier?

Ja das liegt daran, dass p_wifi ja damals eine Krücke war die nachgereicht wurde um das überhaupt zu realisieren.
Jetzt gibt es ja dafür die Managementgroups. Das wofür die Projekte ursprünglich gedacht waren funktioniert weiter wie gehabt :slight_smile:

Hallo Michael,

Dennoch ist es vielleicht gut, wenn dieses Thema als „gelöst“ markiert
werden kann, sofern es bei anderen funktioniert.
Hier also die vermutlich richtigen Settings für v7 und das
open_enrol-Plugin:
ldap_auth.pdf
https://ask.linuxmuster.net/uploads/short-url/8T5QoaxZX6jLorr8yC7ayXXSF7S.pdf
(75,5 KB)
openlml.pdf
https://ask.linuxmuster.net/uploads/short-url/AsbEaVXnFdra9VikxI30CPs8ZFa.pdf
(39,0 KB)
Wer testet das in einer produktiven Umgebung und gibt dann hier Bescheid?

ich hab jetzt erst mal die LDAP Einstellungen verglichen.
Folgende Dinge sind bei mir anders:

	bei dir		bei mir

LDAP-Codierung: utf-8 cp1252

Kontexte: ou=schools,dc=… ou=default-school,ou=schools,dc=…

ObjectClass (objectClass=user) (will ja keine Rechner drin
haben …)

Entfernte externe Nutzer: nur intenr zugänglich intern löschen
(ich will ja, dass sie rausgeschmissen werden …)

Daten übernehmen (Nachname) : sn
(ich will auch Nachnamen sehen).

Jetzt mach ich mal das neuste openlml_enrol plugin rein und stell alles
nach deiner Doku ein … aber vorher mach ich ein Backup vom
moodleserver :slight_smile:

LG

Holger