Welcome to the LimeSurvey Community Forum

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

Amazon MTurk Code

  • Biene_
  • Biene_'s Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
1 year 10 months ago #239360 by Biene_
Amazon MTurk Code was created by Biene_
Bitte helfen Sie uns, Ihnen zu helfen und füllen Sie folgende Felder aus:
Ihre LimeSurvey-Version: Browser Version 4.4.14+210322
Eigener Server oder LimeSurvey-Cloud:
Genutzte Designvorlage:
==================

Hallo,
Ich würde gern auf meiner letzten Seite der Umfrage eine zufällige Umfragen-ID ausgeben. Diese soll für jeden Teilnehmenden verschieden sein und aus Buchstaben und Zahlen bestehen.
Wie ich den Code an sich erstelle weiß ich.
Allerdings finde ich einfach nicht heraus, wie ich das in limesurvey integrieren kann.

Ich möchte limesurvey ca. 150 Codes zur Verfügung stellen und am Ende der Befragung soll Limesurvey dem Teilnehmenden zufällig einen Code präsentieren, welche nur für ihn genutzt wird und nicht doppelt verwendet wird.

Wie kann ich das in limesurvey umsetzen?
Ich habe bei den anderen Beiträgen nur etwas gefunden wie man das programmiert. Das übersteigt aber meine Fähigkeiten und ich weiß gar nicht wie ich das anstellen soll.
Bei der Browser-Version 4.4.14+210322 konnte ich die Umfrage ganz leicht ohne programmieren erstellen.

Beste Grüße
Celine

Please Log in to join the conversation.

  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
1 year 10 months ago #239363 by Joffm
Replied by Joffm on topic Amazon MTurk Code
Hallo, Celine,
jetzt hast Du uns ein paar Knochen hingeworfen, aber ohne viel Fleisch.

Wie wird die Umfrage denn durchgeführt? Offen oder geschlossen?
Du sprichst von 150 IDs? Wie viele Teilnehmer soll es denn geben?
  

Wie ich den Code an sich erstelle weiß ich.
Allerdings finde ich einfach nicht heraus, wie ich das in limesurvey integrieren kann.

Soll das heißen, Du hast eine bestimmte Struktur der ID. Dann sag uns doch auch bitte, wie Du ihn erstellen willst
Und in LimeSurvey benutzt Du dazu wohl eine Frage vom Typ "Gleichung".
  

Ich habe bei den anderen Beiträgen nur etwas gefunden wie man das programmiert.

Auch wieder so ein halbherziger Satz. Wo hast Du was gefunden?

Bitte, gib uns ein paar Informationen mehr.

Jetzt aber etwas Generelles:
Das Problem liegt ja in der Eindeutigkeit der IDs.
Man kann zwar nachschauen, ob eine ID bei einem vorherigen Teilnehmer bereits vergeben wurde, aber es nützt nichts.
Auch wenn man daraufhin eine neue ID generiert, könnte auch diese bereits vergeben worden sein, usw.
Manche konstruieren ja solche IDs irfgendwie so:
Zwei letzte Buchstaben des Vornamens,
Erster Buchstabe des Vornamens der Mutter,
Geburtsjahr ohne Jahrhundert
...
Ist gut und schön, aber wie's der Zufall will, kann es dann doch zwei identische IDs geben.

Bei einer geschlossenen Umfrage mit Teilnehmer-Liste lässt sich ja bereits im Vorfeld jedem Teilnehmer eine ID als Attribut zuordnen. - Fertig.
Also müssen wir uns nur noch um offene Umfragen kümmern.
1. Eine saubere, und sichere Lösung ist ein "ajax-call".
D.h. Du erstellst auf Deinem Server eine Datenbank mit einer Tabelle, die nur zwei Felder beinhaltet: "ID", "benutzt". Diese füllst Du mit Deinen IDs.
Aus LimeSurvey fragst Du diese Tabelle ab, suchst aus den noch nicht benutzten IDs zufällig eine aus und setzt das Feld "benutzt" auf "TRUE"

2. Da eine rein zufällig programmierte ID eben nicht 100% eindeutig sein kann, muss eine eindeutige Komponente hinzugefügt werden.
Dazu kannst Du die "SAVEDID" benutzen. Dies ist ja nur ein Zähler, der für jeden Teilnehmer hochgezählt wird. Und auch abgebrochene Umfragen werden mitgezählt
Daher die Frage nach der Anzahl der Teilnehmer
a. Bei weniger als 1000 Teilnehmern kannst Du eine links mit Nullen aufgefüllte SAVEDID immer in eine irgendwie generierte ID integrieren und hast immer eine eindeutige ID.

b. Genauso kannst Du am Anfang der Umfrage in einer Frage vom Typ "langer Text" 999 von Dir vorgefertigte IDs als Vorgabeantwort eintragen. Pro Zeile eine ID (aber alle mit derselben Länge)
Dann greifst Du wieder mit der SAVEDID diejenige ID dort heraus, die der SAVEDID entspricht - einfach mit der Funktion "substr",
z.B. {substr((SAVEDID-1)*10,10}

Und als Schlusssatz:
Das Beste ist, Du schickst einen lss Export der relevanten Teile, also das, was Du zur Generierung der ID benutzen willst.
Und auch das, was Du "irgendwo" gefunden hast.

Bis dann
Joffm

 

Volunteers are not paid.
Not because they are worthless, but because they are priceless

Please Log in to join the conversation.

  • Biene_
  • Biene_'s Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
1 year 10 months ago #239365 by Biene_
Replied by Biene_ on topic Amazon MTurk Code
Hallo Joffm,

danke für deine schnelle Antwort.

Es ist eine Umfrage, welche ich im Freundes und Bekanntenkreis sowie auf Amazon MTurk per Link schicken möchte.

MTurk schickt dann Teilnehmer auf die Umfrage. Der Code soll aus 2 Buchstaben+ einer Randomzahl zwischen 1000 und 9999 + 2 Buchstaben.
Diese würde ich selbst per Excel generieren.
150 ID's, da 150 Personen teilnehmen sollen.
Dadurch ist die Wahrscheinlichkeit dass ein Code doppelt vorkommt gering und ich kann die Daten der Personen die keinen richtigen Code eingegeben haben, löschen, wodurch sie kein Geld bei MTurk bekommen.


Eine weitere Möglichkeit sicher zu gehen, dass die Fragen ernsthaft beantwortet werden, wäre, dass die Personen eine Verständnisfrage mit ja/nein richtig beantworten müssten, damit sie im Fragebogen weiter gelassen werden.

Auch hier komme ich leider nicht weiter.
Wie ist es möglich mit einem Verzweigungscode die Personen bei Falsch Beantwortung wieder auf die Vorherige Fragengruppe zu werfen und bei richtiger Antwort zur nächsten Fragegruppe zu schicken?
Eventuell ist das einfacher für mich zu realisieren.


Hier die Links wo ich leider nicht wusste wie oder wo ich das anwende: forums.limesurvey.org/forum/can-i-do-thi...-unique-pin-for-user

forums.limesurvey.org/forum/can-i-do-thi...-of-survey-for-mturk

Ich weiß leider nicht genau was du mit dem ISS export der Teile meinst.

Danke dir für deine Hilfe!
Beste Grüße

Please Log in to join the conversation.

  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
1 year 10 months ago #239366 by Joffm
Replied by Joffm on topic Amazon MTurk Code
Hallo, Celine,

dann würde ich zu meiner Lösung 2.b. greifen.
 

Eine weitere Möglichkeit sicher zu gehen, dass die Fragen ernsthaft beantwortet werden, wäre, dass die Personen eine Verständnisfrage mit ja/nein richtig beantworten müssten, damit sie im Fragebogen weiter gelassen werden.

Auch hier komme ich leider nicht weiter.
Wie ist es möglich mit einem Verzweigungscode die Personen bei Falsch Beantwortung wieder auf die Vorherige Fragengruppe zu werfen und bei richtiger Antwort zur nächsten Fragegruppe zu schicken?
Eventuell ist das einfacher für mich zu realisieren.

Ich denke, dieser Ansatz ist nicht besonders sinnvoll.
Nimm an, der Teilnehmer beantwortet die Frage falsch. Das bedeutet vielleicht, er hat bisher nur "happy clicking" gemacht, also keine Frage richtig gelesen.
Dann willst Du ihn zurückschicken. Okay, diese Verständnisfrage beantwortet er dann anders, zumindest so lange, bis er weiterkommt.
Die vorherigen - und vielleicht auch die späteren - Daten sind dann aber immer noch von fragwürdiger Qualität.

Nein, wenn jemand Frage falsch beantwortet, lässt Du ihn mithilfe einer Quote rausfliegen.
  

Ich weiß leider nicht genau was du mit dem ISS export der Teile meinst.

Es hat auch nichts mit einer Raumstation zu tun. Wie Kollege @holch schon einmal richtig vermutete, würde sie auch nicht in meinen Garten passen.
Wir sprechen von
lss: limesurvey survey, im Gegensatz zu 
lsq: limesurvey question,
lsg: limesurvey group,
lsa: limesurvey archive,
​​​​​​​
Finden wirst Du die Möglichkeit des lss Exportes in einem der oberen Menues, wenn Du im Übersichts-Fenster bist.
Da Du mit einer ziemlich veralteten Version dieses Zweiges arbeitest, kann ich nicht genau sagen, wie es bei Dir aussieht - die Struktur des obigen Menues hat sich während der Entwicklung des 4.x./5.x. - Zweiges geändert.

Und "relevante Teile" heißt "Wir wollen uns nicht durch eine Umfrage mit 70 Gruppen und 231 Fragen durchquälen".
Daher empfehlen wir: Kopiere die Umfrage, lösche alles, was nichts mit dem Thema (Generierung und Anzeige dieser Zahl) zu tun hat und sende dies als lss.

Bis dann
Joffm



 

Volunteers are not paid.
Not because they are worthless, but because they are priceless

Please Log in to join the conversation.

  • holch
  • holch's Avatar
  • Away
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
1 year 10 months ago #239367 by holch
Replied by holch on topic Amazon MTurk Code

Bei der Browser-Version 4.4.14+210322 konnte ich die Umfrage ganz leicht ohne programmieren erstellen.


Mit der Version 4.4.14+210322 würde ich mir schleunigst überlegen, ein Update zu machen. Nicht nur ist diese Version jetzt fast 2 Jahre alt und hat seit dem also kein Update mehr erhalten, sprich keine Bugfixes, keine Secuirtyfixes, nichts.

Und, meiner Meinung nach war die Version LS4 zu keinem Zeitpunkt "ready for production", sprich auf Grund vieler Probleme würde ich diese Version niemals im produktiven Einsatz einsetzen. Also idealerweise auf die neueste Version von LS5 updaten.

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

Please Log in to join the conversation.

  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
1 year 10 months ago - 1 year 10 months ago #239368 by Joffm
Replied by Joffm on topic Amazon MTurk Code
So, hier ein ganz kleines, Beispiel.
Funktioniert natürlich nur, wenn aktiviert, da es ja sonst gar keine SAVEDID gibt.
Und enthält 40 IDs.
 

File Attachment:

File Name: limesurvey...7645.lss
File Size:29 KB


Joffm
P.S. Die zweite Frage "eqRand" kann weg. Ich hatte zunächst mit dieser Zufallszahl getestet.
Dann aber vergessen sie zu löschen.
​​​​​​

Volunteers are not paid.
Not because they are worthless, but because they are priceless
Last edit: 1 year 10 months ago by Joffm.

Please Log in to join the conversation.

  • Biene_
  • Biene_'s Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
1 year 10 months ago - 1 year 10 months ago #239375 by Biene_
Replied by Biene_ on topic Amazon MTurk Code
Hallo Joffm,

lieben Dank für das Beispiel, das ist super!
Wie kann ich das um weitere 110 IDs erweitern?

Danke für die Erklärung des lss. Wenn ich allerdings die Gruppen und Fragen lösche die nicht relevant für die ID sind, dann lösche ich die gesamte Umfrage.
Die ID ist unabhängig von den Items und hat auch nichts mit den Initialien oder soetwas zutun.
Ich könnte deine Codes im Prinzip genau so übernehmen, wenn ich sie erweitern kann.

Die Version ist leider die, welche von meine Uni unterstützt wird. Das ist direkt der Link von der Uni gewesen, daher kann ich nur diesen nutzen. 

Liebe Grüße
Last edit: 1 year 10 months ago by Biene_.

Please Log in to join the conversation.

  • holch
  • holch's Avatar
  • Away
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
1 year 10 months ago - 1 year 10 months ago #239377 by holch
Replied by holch on topic Amazon MTurk Code

Die Version ist leider die, welche von meine Uni unterstützt wird. Das ist direkt der Link von der Uni gewesen, daher kann ich nur diesen nutzen.


Ja, leider meinen manche Unis man kann so eine Websoftware einmal installieren und muss sich dann nie mehr drum kümmern. Würde mich ja mal interessieren ob die Betriebssysteme in den Computerräumen genauso behandelt werden. Leider kann man da oft nichts machen, aber vielleicht kann man ja mal einen kleinen Hinweis an die Verantwortlichen verschicken. ;-)

In Zeiten der GDPR halte ich es schon für ziemlich fahrlässig Software die zum Sammeln und speichern von potenziellen persönlichen Daten genutzt werden und per Definition vom Internet aus erreichbar sind so lange ungepached zu lassen. Wenn es da mal zu einer Datenpanne kommt, selbst wenn es nicht an der Software liegt, kann man sich als Uni schlecht damit rausreden, dass man ja alles Menschenmögliche getan hat, um die Sicherheit der Daten zu gewährleisten, wenn man eine Softwareversion am Laufen hat, die schon gar nicht mehr unterstützt wird und die jetzt seit vielen Monaten kein Update bekommen hat.

Als Student kann man da dann ja erstmal relativ wenig machen, man muss halt die Version nehmen, die einem die Uni zur Verfügung stellt.

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

Last edit: 1 year 10 months ago by holch.
The following user(s) said Thank You: Biene_

Please Log in to join the conversation.

  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
1 year 10 months ago #239397 by Joffm
Replied by Joffm on topic Amazon MTurk Code
Hallo,

Wie kann ich das um weitere 110 IDs erweitern?

Du siehst doch, wie es funktioniert. 
Generiere die IDs in Excel und kopiere sie in die Vorgabeantwort.
Allerdings solltest Du deutlich mehr als Deine 150 eintragen. Denke an Abbrüche. Dann ist die SAVEDID und damit die ID "verbrannt.

Du siehst ja die Arbeitsweise der Funktion.
Im Notfall lies noch einmal im Handbuch nach
[url] www.limesurvey.org/manual/ExpressionScri...mplemented_functions [/url]
und schaue Dir einige der Beispielstudien an.
[url] www.limesurvey.org/manual/ExpressionScript_sample_surveys [/url]

Noch ein weiterer Hinweis.
Mit ziemlicher Wahrscheinlichkeit willst Du diese ID ja in der End-Message anzeigen.
Damit Du diese ID auch in den Daten der Umfrage zur Verfügung hast, solltest Du im Gegensatz zu meinem Beispiel, eine Frage vom Typ Gleichung in die Umfrage einbauen, welche nur die ID heraussucht, also ohne jeden Text, und dann in der End-Message auf diese Gleichungsfrage referenzieren.
Ansonsten ist nur die SAVEDID in den Daten und Du müsstest dann wieder in Deiner Excel-Tabelle nachschauen, welche ID zu welcher SAVEDID gehört.

Joffm

Volunteers are not paid.
Not because they are worthless, but because they are priceless

Please Log in to join the conversation.

Moderators: holchJoffmtpartner

Lime-years ahead

Online-surveys for every purse and purpose