Welcome to the LimeSurvey Community Forum

Ask the community, share ideas, and connect with other LimeSurvey users!

Timerfunktion / Zeitlimit funktioniert nicht

  • ckayser
  • ckayser's Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
3 years 5 months ago #207139 by ckayser
Hallo,

ich habe folgendes Problem:

Ich habe bei einer Umfrage eine Fragengruppe erstellt und den Fragentyp (Textanzeige) ausgewählt um ein Video (über Link integriert) abspielen zu lassen. Wichtig ist, dass die Teilnehmer*innen das Video nur 1x abspielen können. Hierfür habe ich zusätzlich noch einen Timer integriert, der die Länge des Videos hat. Dieser Timer funktioniert bei mir jedoch nicht. Es wird nur ein Balken, aber keine ablaufende Zeit angezeigt, weder in der Fragenvorschau, noch wenn die Umfrage aktiviert wurde. Ich habe das ganze auch bereits mit einem anderen Browser versucht, ohne Erfolg.

Anbei noch die Fragegruppenlogik



Vielen Dank für eure Antworten!

  • LimeSurvey Version 3.23.0+200813
The topic has been locked.
  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
3 years 5 months ago #207142 by Joffm
Hallo,
bevor ich mir jetzt etwas bastele, um Dein Scenario nachzuspielen (daher ist es für uns immer besser, Du sendest von Dir aus einen LSS export mit den relevanten Fragen/Gruppen) ein Vorschlag.

Man kann mit javascript einfach nach Beendigung des Videos auf die nächste Seite gehen.
Dann ist kein Timer nötig.

Außerdem habe ich das Gefühl, das der Timer in nicht aktivierten Studien manchmal etwas spinnt.

Bis später
Joffm

Volunteers are not paid.
Not because they are worthless, but because they are priceless
The topic has been locked.
  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
3 years 5 months ago #207146 by Joffm
Hallo,
zunächst die Feststellung:
Der Timer funktioniert bei mir auch nicht (in 3.22.28)

Aber wie ich schon sagte, nicht schlimm.
Im Beispiel findest Du zwei Videos.
Beide werden eingebunden mit:
Code:
<div class="embed-responsive embed-responsive-16by9">
<video autoplay="autoplay" id="myvideo"><source src="https://Mafopartner.de/wiebke/img/Happy/happypeanuts.mp4" type="video/mp4" /> Browser unterstützt dieses Format nicht.</video>
</div>
Beim ersten wird mithilfe dieses kleinen javascript-snippets
Code:
<script type="text/javascript" charset="utf-8">    
  $(document).ready(function() {  
 
    // Hide the "Next" button
    $('#ls-button-submit').hide();
 
    var vid = document.getElementById("myvideo");
                vid.volume = 0.3; 
    vid.onended = function() {
      // Show the "Next" button
      $('#ls-button-submit').show().trigger('click');
    }
    });
</script>
zunächst der "Weiter"-Button versteckt, mit "volume" die Lautstärke eingestellt.
Am Ende des Videos ("onended") wird der "Weiter"-Button wieder angezeigt, und auch gleich gedrückt.

Solltest Du eine Uni-Installation benutzen und Dir das Einbinden von javascript durch den Admin untersagt sein, funktioniert das zweite Beispiel eigentlich auch.
Nach Beendigung des Videos ist Schluss. Da keine "Controls" da sind, kann es nicht neu gestartet werden, und auch ein Refresh des Browsers bringt nichts.
Und da man nicht auf die vorherige Seite zurückgehen kann, ist von daher auch nichts zu befürchten.

Ich werde dieses Beispiel um 20:00 Uhr wieder entfernen. Sag deshalb Bescheid, wenn Du es heruntergelafden hast.

File Attachment:

File Name: limesurvey...6733.lss
File Size:17 KB


Viel Erfolg
Joffm

Volunteers are not paid.
Not because they are worthless, but because they are priceless
The topic has been locked.
More
3 years 5 months ago #207148 by jelo

Joffm wrote: Der Timer funktioniert bei mir auch nicht (in 3.22.28)

Bugreport? Wobei ich eher für Entfernung der Funktion wäre. Die funktionierte in den letzten Jahren eh nie durchgängig sauber.

The meaning of the word "stable" for users
www.limesurvey.org/forum/development/117...ord-stable-for-users
The topic has been locked.
  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
3 years 5 months ago #207152 by Joffm

Bugreport?

Noch nicht.
Soweit ich mich erinnere, funktionierte sie bei einer früheren "Spielerei" damit (auch 3.x).
Ich benutze sie eben sehr, sehr, sehr, sehr selten.
Werde noch etwas testen.

Wobei ich eher für Entfernung der Funktion wäre. Die funktionierte in den letzten Jahren eh nie durchgängig sauber.

Ich auch

Joffm

Volunteers are not paid.
Not because they are worthless, but because they are priceless
The topic has been locked.
  • ckayser
  • ckayser's Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
3 years 5 months ago #207172 by ckayser
Replied by ckayser on topic Timerfunktion / Zeitlimit funktioniert nicht
Vielen Dank für die Tipps.

Ich habe die zweite Version in mein Script eingebunden, da ich am Uni-Account angemeldet bin. Leider funktioniert dies auch nicht. Jetzt kommt man durch den fehlenden `Weiter-Button`nicht mehr auf die nächste Seite, kann aber das Video beliebig oft wiederholen, da es ja über VIMEO als Link integriert ist. ( Da das Video zu groß ist, kann ich es nur über Link-Einbettung integrieren aber nicht hochladen. )

Anbei nochmal die .LSG-Datei, bereits mit integriertem Tipp.


Gruß

File Attachment:

File Name: limesurvey...2784.lsq
File Size:2 KB
The topic has been locked.
  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
3 years 5 months ago #207181 by Joffm
Gut,
zunächst hast Du ein bisschen Unsinn eingebaut.
var vid = document.getElementById(" player.vimeo.com/video/470465003?portrait=0 ");
Die ID in meinem Beispiel bezieht sich auch das <video> tag und lautet "myvideo".

In Deinem IFrame gibt es gar keine ID.
Und der Timer war ja immer noch drin.
Und da die ID falsch war, gab es auch kein "onended" und der "Weiter"-Button blieb versteckt.

Gut, Du willst also einen IFrame benutzen. Da ist das dann anders.
Hier kannst Du die "timeout"-function nutzen.
Code:
<script type="text/javascript" charset="utf-8">
$(document).ready(function(){
    $('#ls-button-submit').hide();
  setTimeout(function () {
                 $('#ls-button-submit').show().trigger('click');
 
  }, 480000);
});
</script>
Die macht einfach nichts als zu warten; die Zeit wird dabei in Millisekunden angegeben, hier also 480000=8 Minuten.

Und jetzt kommt noch Dein großes Problem dabei.
"Autoplay" wird in dieser Form von Browsern nicht mehr unterstützt, es sei denn, es handelt es sich um eine "stumme" Datei. Klar, der Benutzer soll nicht durch irgendwelche aufploppenden, nervigen Musikstücke, Jingles, usw. genervt werden.
Daher sind die Controls da, so dass der Teilnehmer die Datei starten muss. Dann kann er sie natürlich auch erneut starten.

Für die zweite Frage habe ich die Datei einmal von Vimeo heruntergeladen und auf meinen Server geschoben.
Dann geht es wieder.
Ich weiß ja nicht, wieviele dieser Dateien Du hast und ob Du da von der Uni her beschränkt bist; ich habe hier das Video ohne Probleme hochladen können.


Schaue es Dir einfach an
1. Ist das Video im IFrame mit der timeout-funktion.
2. Das Video auf meinem Server und mit javascript "onended"
3. Dasselbe noch einmal, nur ist hier das Video als Ressource in die Studie geladen (wird daher bei Dir nicht zu sehen sen.

File Attachment:

File Name: limesurvey...6951.lss
File Size:17 KB


Joffm

Volunteers are not paid.
Not because they are worthless, but because they are priceless
The following user(s) said Thank You: ckayser
The topic has been locked.
  • holch
  • holch's Avatar
  • Away
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
3 years 5 months ago #207182 by holch
Deine "LSG"-Datei eine "LSQ"-Datei, sollte aber eigentlich eine "LSS"-Datei sein. ;-)

Mach es den Helfern doch einfacher dir zu helfen. Eine LSS-Datei kann man einfach so importieren, ohne noch was machen zu müssen.

LSG und LSQ benötigen ja immer eine Studie in die man sie importiert. Leider sind diese Dateien Sprachabhängig. D.h. wenn du die falsche Basissprache hast, musst du wieder neu anfangen. Gut, hier ist die Basissprache vermutlich deutsch. Trotzdem. Mache es den Helfern so einfach wie möglich.

I answer at the LimeSurvey forum in my spare time, I'm not a LimeSurvey GmbH employee.
No support via private message.

The following user(s) said Thank You: ckayser
The topic has been locked.
  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
3 years 5 months ago #207183 by Joffm
Danke, @holch, dass Du es erwähnt hast.
Ich wollte es auch schreiben, habe es aber durch das lange "Herumspielen" und Testen doch wieder vergessen.
Oder war Herr Alzheimer wieder im Zimmer?

Ich will es daher noch einmal ausführlich erklären:
Es gibt vier verschieden Dateitypen des Exportes

a. lsq (question): Hier wird eine einzelne Frage exportiert.

b. lsg (group): Hier wird eine einzelne Fragengruppe exportiert.

Dies beiden Exporttypen sind sprachsensitiv. D.h. man kann einen Export nur in eine Studie importieren, wenn die Basissprachen übereinstimmen.
Stelle Dir bitte vor, jemand hat als Basissprache "spanisch (Kolumbien)" gewählt. Dann müssten wir dies erraten, damit wir diesen Export wieder importieren können.

c. lss (survey): Dies ist die gesamte Studie. Der Export enthält auch sämtliche Einstellung, welche studienweit gelten; dies ist manchmal sehr wichtig für unsere Hilfestellung.

d. lsa (archive): Dies ist die gesamte Studie inklusive der Daten. Ist also zur Archivierung von gemachten Studien gedacht. Man kann sie wieder importieren und hat wieder das "Gesamtkunstwerk". Für uns normalerweise uninteressant.

Wir erbitten immer einen lss Export. Dieser sollte dann aber nicht alle 24 Gruppen mit 123 Fragen enthalten, sondern nur den relevanten Teil.
Dazu kann man die Studie kopieren und alles Überflüssige löschen.


Joffm

Und daraus mache ich jetzt einen Textbaustein. ;)

Volunteers are not paid.
Not because they are worthless, but because they are priceless
The topic has been locked.
  • ckayser
  • ckayser's Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
3 years 5 months ago #207186 by ckayser
Replied by ckayser on topic Timerfunktion / Zeitlimit funktioniert nicht
Vielen Dank für die Hilfe!

Und entschuldige meinen "Unsinn" und das falsche Datei-Format. Ich bin absoluter Laie auf diesem Gebiet und mir ist der Unterschied nicht bekannt gewesen. Aber durch die ausführliche Erklärung hab ich jetzt was nützliches dazugelernt! Danke :)
The topic has been locked.
  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
3 years 5 months ago #207202 by Joffm
Hallo, Chiara,
ich nehme den "Unsinn" auch wieder zurück.
Zugegeben, als ich HTML gelernt habe, hatte ich auch Probleme die Bedeutung von IDs und den Unterschied zwischen IDs und Klassen zu verstehen.

Und die Bezeichnung der ID mit "myvideo" verführte natürlich dazu zu glauben, dies sei ein Platzhalter für "mein Video".

Es ist aber so:
Das <video> bekommt eine ID (hier eben "myvideo", könnte auch "tralala" sein), damit man später vom javascript aus genau darauf zugreifen kann.
Daher heißt die Funktion auch getElementById ("hol Dir das Element anhand der ID"),
Es gibt auch
getElementByName
getElementByClassName
getElementByTagName
also verschiedene Weisen, ein Element der Webseite zu finden und es anzusprechen.

Das war jetzt ein kleiner Exkurs, falls so etwas bei Dir noch einmal vorkommt.

Jetzt kommt aber noch etwas zu Deiner Umfrage selbst.
Die Darstellung des Videos im IFrame erschien mir etwas klein. Vielleicht dem Alter und den nachlassenden Brillengläsern geschuldet - ich konnte einiges nicht lesen.

Viel Erfolg
Joffm

Volunteers are not paid.
Not because they are worthless, but because they are priceless
The topic has been locked.
Moderators: Joffm

Lime-years ahead

Online-surveys for every purse and purpose