Expertenmodus

Zuletzt geändert von Carina Enke am 16.01.2024

 

Verwendungsbeispiele für Expertenregeln

Nachfolgend sind Beispiele aufgeführt, die Ihnen zeigen, wie Sie die Expertenregeln verwenden können.

Typische Anwendungsbeispiele

In einem öffentlichen Kurs einzelne Inhalte nur für registrierte Nutzer sichtbar schalten ...

Sie wollen Inhalte in einem öffentlichen Kurs vor Gästen verbergen? Tragen Sie im Tab Sichtbarkeit des betreffenden Kursbausteins bei Expertenmodus in das Textfeld nachfolgenden Inhalt ein. Damit wird der Kursbaustein in einem öffentlich zugänglichen Kurs für nicht registrierte Gastnutzer angezeigt.

isGuest()=false

Konfiguration im Kurseditor

Kurseditor - Konfiguration nur registrierte Nutzer_de.png

Ansicht als registrierter Nutzer

Kursrun - Ansicht registrierte Nutzer_de.png

Ansicht als Gastnutzer

Kurseditor - Konfiguration nicht für Gäste_de.png

Ansicht als Kursverantwortlicher

Kursrun - Ansicht Kursverantwortlicher_de.png

In einem öffentlichen Kurs einzelne Inhalte nur für Gäste sichtbar schalten ...

Sie wollen Inhalte in einem öffentlichen Kurs ausschließlich Gästen und Kursverantwortlichen anzeigen? Tragen Sie im Tab Sichtbarkeit des betreffenden Kursbausteins bei Expertenmodus in das Textfeld nachfolgenden Inhalt ein. Damit wird der Kursbaustein in einem öffentlich zugänglichen Kurs nur Gastnutzern und Kursverantwortlichen angezeigt.

isGuest()=true |isCourseAdministrator() 

Konfiguration im Kurseditor

Kurseditor - Konfiguration nur Gäste und Kursverantwortliche_de.png

Ansicht als registrierter Nutzer

Kursansicht - nicht für registrierte Nutzer_de.png

Ansicht als Gastnutzer

Kursrun - Ansicht nur Gäste_de.png

Ansicht als Kursverantwortlicher

Kursrun - Ansicht Kursverantwortlicher_de.png

Kursinhalte nach Testergebnis freigeben ...
Sie wollen Inhalte in Abhängigkeit eines Tests freigeben? Die Umsetzung dieses Szenarios wird auf der Seite Lernwegsteuerung nach Testergebnis erläutert.
Weitere Anwendungsbeispiele für Expertenregeln ...
Neben den allgemeinen Beispielen, die unabhängig von der Institution verwendet werden können, sind auch Einschränkungen zu Daten möglich, welche institutionsspezifisch sind und je nach Institution übermittelt werden.
Für OPAL-Nutzer enthält die Seite Übersicht der OPAL-Shibboleth-Attribute alle aktuell verwendbaren institutionsspezifischen Attribute sächsischer Institutionen.

Beispiele für Regeln in den Tabs «Sichtbarkeit», «Zugang» und «Punkte» (Struktur-Baustein)

Auswirkungen

isGuest(0)=true

Eingetragen im Tab Sichtbarkeit sehen nur Gäste den Kursbaustein, alle registrierten Nutzer dagegen nicht.

Eingetragen im Tab Zugang haben ausschließlich Gäste Zugang zu diesem Kursbaustein.

Alternativ kann auch die Angabe isGuest(0) oder isGuest(0)=1 verwendet werden.

isGuest(0)=false

Eingetragen im Tab Sichtbarkeit sehen Gäste den Kursbaustein nicht. Eingetragen im Tab Zugang haben Gäste keinen Zugang zu den Inhalten des Kursbausteins.

inLearningGroup("Anfänger") = false

Mit Ausnahme der Gruppe «Anfänger» ist der Kursbaustein für alle Kursteilnehmer sichtbar.

(now >= date("22.03.2017 12:00")) & (now <= date("23.08.2017 18:00")) | inLearningGroup("Betreuer")

Der Kursbaustein ist zwischen dem 22.03.2017 und 23.08.2017 für alle Kursteilnehmer sichtbar, während er für Mitglieder der Lerngruppe «Betreuer» jederzeit sichtbar ist.

(now >= date("03.09.2017 00:00")) & (now <= date("13.10.2017 00:00")) & inRightGroup("Assessoren")| isUser("autor")

Der Kursbaustein ist zwischen dem 03.09.2017 und 13.10.2017 für alle Kursteilnehmer der Rechtegruppe «Assessoren» sichtbar, während er für die Person mit dem Benutzernamen «autor» jederzeit sichtbar ist.

isInAttribute("surname","Mue")

Gibt TRUE für alle Personen, deren Attribut «surname» die Buchstabenfolge "Mue" enthält. Gibt z. B. TRUE für den Wert "Mueller" oder "Muehlebacher" zurück.

(getUserProperty("orgUnit") = "Marketing")

Prüft, ob eine Person in der Organisationseinheit "Marketing" ist. Dies ist zum Beispiel sinnvoll, wenn die Daten automatisiert aus LDAP übernommen werden.

(getPassed("69742969114730") | getPassed("69742969115733") | getPassed("69742969118009")) * 10

Diese Regel wird im Tab «Punkte» -> «Punkte verarbeiten» des Bausteins Struktur gesetzt. Der Baustein Struktur zeigt 10 Punkte, wenn einer der Tests (Kursbaustein-IDs "69742969114730", "69742969115733" oder "69742969118009") bestanden wurde, sonst 0 Punkte.

(getScore("69742969114730") + getScore("69742969115733") + getScore("69742969118009")) >= 140 | getPassed("69978845384688")

Diese Regel wird im Tab «Punkte» -> «Bestanden wenn» des Bausteins Struktur gesetzt. Der Baustein Struktur zeigt ein «Bestanden», wenn in allen Tests zusammen minimal 140 Punkte erzielt werden oder wenn manuell ein «Bestanden» gesetzt wird (Kursbaustein Bewertung mit ID "69978845384688").

getAttempts("70323786958847") > 0

Gibt TRUE zurück, sobald der betreffende Kursteilnehmer den Test mit spezifizierter ID ein erstes Mal abgeschlossen hat.

getAttempts("70323524635734") <= 3

Gibt FALSE zurück, sobald der betreffende Kursteilnehmer mehr als 3 Dateien in den Abgabeordner des Kursbausteins Aufgabe gelegt hat.

getInitialEnrollmentDate("70323786958847") <= date("26.5.2017 18:00")

Gibt TRUE für diejenigen Kursteilnehmer zurück, die sich vor 18 Uhr des 26. Mai 2017 über den Kursbaustein Einschreibung mit spezifizierter ID in eine zur Auswahl stehende Gruppe eingeschrieben haben.

getInitialEnrollmentDate("70323786958847") + 2h > now

Gibt TRUE während zwei Stunden ab Einschreibezeitpunkt für diejenigen Kursteilnehmer zurück, die sich über den Kursbaustein Einschreibung mit spezifizierter ID in eine zur Auswahl stehende Gruppe eingeschrieben haben. So kann abgebildet werden, dass jeder Kursteilnehmer nur während einer bestimmten Zeitdauer z. B. ein Skript bearbeiten kann.

(getInitialCourseLaunchDate(0) >= never) | (getInitialCourseLaunchDate(0) + 2h > now)

Gibt TRUE zurück, wenn der Kursteilnehmer den Kurs noch nicht besucht hat oder während der ersten zwei Stunden des ersten Kursbesuchs. So kann abgebildet werden, dass jeder Kursteilnehmer nur während einer bestimmten Zeitdauer den Kurs sehen kann.

(getRecentCourseLaunchDate(0) + 10min) > now

Gibt TRUE zurück, wenn sich der Benutzer seit mehr als 10 Minuten im Kurs bewegt.

getOnyxTestOutcome("84692289655276","SCORE") >= 10

Gibt TRUE zurück, wenn der Benutzer mindestens 10 Punkte erreicht hat.

getOnyxTestOutcomeZK("84389429397045","PASS") ="true"

Gibt TRUE zurück, wenn der Benutzer den Test bestanden hat.

getMark("84692289655276") > 4

Gibt TRUE zurück, wenn die Note des Nutzers für den angegebenen Baustein besser als 4 ist.

getProgress("69742969114730")>=100

Gibt TRUE zurück, wenn der Nutzer den angegebenen Kursbaustein erledigt hat (Kursfortschritt).

Achtung!

Bitte beachten Sie, dass die oben erwähnten Kursbaustein-IDs Beispiele sind. Wenn Sie Ihren Kurs erstellen, müssen Sie jeweils die IDs Ihrer Kurse referenzieren.

Expertnsyntax

Übersicht der verfügbaren Expertensyntax ...

Typ

Syntax

Bedeutung

Konstanten

TRUE oder 1

Wahr

FALSE oder 0

Falsch

Variable

now

Momentane Server-Systemzeit

Funktionen

date("[date]")

Datum abfragen

inLearningGroup("[string]")

Gibt TRUE für alle Mitglieder der Lerngruppe mit dem Titel [string] des aktuellen Kurses zurück.

inLearningGroup("[string1]","[string2]")

Gibt TRUE für alle Mitglieder der angegebenen Lerngruppe [string1] des Kurses mit der angegebenen Kurs-ID=[string2] zurück.

inLearningGroupWaitingList("[string]")

Gibt TRUE für alle Benutzer in der Warteliste der Lerngruppe [string] des aktuellen Kurses zurück.

inLearningGroupWaitingList("[string1]","[string2]")

Gibt TRUE für alle Benutzer in der Warteliste der Lerngruppe [string1] des Kurses mit der angegebenen Kurs-ID=[string2] zurück.

inRightGroup("[string]")

Gibt TRUE für alle Mitglieder der Rechtegruppe [string] zurück.

isLearningGroupFull("[string]")

Gibt für die angegebene Lerngruppe im aktuellen Kurs den Boolean TRUE (=voll) oder FALSE (=nicht voll) zurück.

isLearningGroupFull("[string1]","[string2]")

Gibt für die angegebene Lerngruppe=[string1] des Kurses mit Kurs-ID=[string2] den Boolean TRUE (=voll) oder FALSE (=nicht voll) zurück.

isUser("[string]")

Gibt TRUE für den Benutzer mit dem Benutzernamen [string] zurück.

inLearningArea("[string]")

Gibt TRUE für alle Mitglieder der Gruppen im Lernbereich [string] des aktuellen Kurses zurück.

inLearningArea("[string1]","[string2]")

Gibt TRUE für alle Mitglieder der Gruppen im angegebenen Lernbereich [string1] des Kurses mit der angegebenen Kurs-ID=[string2] zurück.

getNumberOfEnrollments("[string1]*")

Gibt TRUE zurück, wenn die konfigurierte Anzahl der Lerngruppenmitgliedschaften im Lernbereich (string1) erreicht ist.

isGlobalAuthor()

Gibt TRUE für alle Mitglieder der OPAL-Autorengruppe zurück.

isCourseAdministrator()

Gibt TRUE für alle Besitzer Ihres Kurses (Lernressource) zurück.

isCourseCoach()

Gibt TRUE für alle Benutzer zurück, die eine Lerngruppe betreuen.

isGuest()

Gibt TRUE für alle Benutzer zurück, die OPAL als Gäste besuchen.

isExternalUser()

Gibt TRUE für alle zurück, die OPAL als externe Benutzer verwenden.

hasAttribute("[AttrName]","[string]")

Gibt TRUE zurück, wenn [string] dem Wert des AAI-Attributs [AttrName] des jeweiligen Benutzers entspricht.

isInAttribute("[AttrName]","[substring]")

Gibt TRUE zurück, wenn [substring] einem Teil des Wertes des AAI-Attributs [AttrName] des jeweiligen Benutzers entspricht.

getUserProperty("[string]")

Gibt die angegebene Benutzer-Eigenschaft des ausführenden Nutzers zurück.

getPassed("[integer]")

Gibt vom Kursbaustein mit spezifizierter ID den Boolean TRUE (=Bestanden) oder FALSE (=Nicht bestanden) zurück.

getScore("[integer]")

Gibt vom Kursbaustein mit spezifizierter ID die Anzahl der Punkte zurück.

getAttempts("[integer]")

Gibt vom Kursbaustein mit spezifizierter ID die Anzahl abgeschlossener Versuche zurück. Kann auf Kursbausteine vom Typ Test, Selbsttest, Fragebogen (mögliche Rückgabewerte 0 oder 1) und Aufgabe (Rückgabewert = Anzahl abgegebener Dateien) angewandt werden.

getInitialEnrollmentDate("[integer]")

Gibt vom Kursbaustein Einschreibung mit spezifizierter ID das Datum des erstmaligen Einschreibens des betreffenden Kursteilnehmers zurück.

getRecentEnrollmentDate("[integer]")

Gibt vom Kursbaustein Einschreibung mit spezifizierter ID das Datum des letzten Einschreibens des betreffenden Kursteilnehmers zurück.

getInitialCourseLaunchDate()

Gibt das Datum des erstmaligen Kursbesuchs des betreffenden Kursteilnehmers zurück.

getRecentCourseLaunchDate()

Gibt das Datum des letzten Kursbesuchs des betreffenden Kursteilnehmers zurück.

getPassedWithCourseId("[integer-1]","[integer-2]")

Gibt vom Kursbaustein mit ID=[integer-2] des Kurses mit ID=[integer-1] den Boolean TRUE (=Bestanden) oder FALSE (=Nicht bestanden) zurück.

getScoreWithCourseId("[integer-1]","[integer-2]")

Gibt vom Kursbaustein mit ID=[integer-2] des Kurses mit ID=[integer-1] die Anzahl der Punkte zurück.

getMarkWithCourseId("[integer-1]","[integer-2]")

Gibt vom Kursbaustein mit ID=[integer-2] des Kurses mit ID=[integer-1] die Note zurück.

hasEvaluationCompleted("KB-ID")

Gibt TRUE für alle Benutzer zurück, die den angegebenen Kursbaustein erfolgreich beendet haben.

getNumberOfEnrollments("[string1]*")

Gibt TRUE zurück, wenn die konfigurierte Anzahl der Lerngruppenmitgliedschaften im Lernbereich (string1) erreicht ist.

getOnyxTestOutcome("[string1]","[string2]")

Gibt vom Onyx-Test-Kursbaustein mit spezifizierter ID (string1) und spezifizierter Ausgabevariable (string2) den Wert dieser Variablen zurück. Der Rückgabewert ist eine Zahl.

getOnyxTestOutcomeZK("[string1]","[string2]")

Gibt vom Onyx-Test-Kursbaustein mit spezifizierter ID (string1) und spezifizierter Ausgabevariable (string2) den Wert dieser Variablen zurück. Der Rückgabewert ist eine Zeichenkette.

getProgress("[integer]")

Gibt vom Kursbaustein mit spezifizierter ID den Fortschritt als numerischen Wert zwischen 0 und 100 (Prozent) zurück.

isPasswordConfirmed("[string]")

Gibt TRUE nach Eingabe des korrekten Passworts (string1) zurück.

Kann nur bei Kursbausteinen verwendet werden, die auch im einfachen Modus eine Passwortbeschränkung anbieten.

comesFrom("[string]")

Gibt TRUE zurück, wenn der Nutzer ein verlinktes Konto zum OLAT mit der angegebenen System-ID hat.

Einheiten

min

Minuten

h

Stunden

w

Wochen

m

Monate

Operatoren

=

gleich

>

größer als

<

kleiner als

>=

größer gleich

<=

kleiner gleich

*

Multiplikation

/

Division

+

Addition

-

Subtraktion

Booleans
 

&

Logisches UND

|

Logisches ODER

!

Logisches NICHT