Description of the problem:
I am not sure if this is an error on the SONA side or Pavlovia side. Recently (within the last few weeks), for some students, their first or full name is saved as the participant ID. I have the settings of my study on SONA set to generate a random ID, but for some reason it is still saving the participants name instead of an ID. This is a new issue too- I collected at least 50 participants without having this problem. Has anyone else been experiencing the same problem? Or does anyone have any insight into what I, SONA, or students may be doing wrong to produce this problem?
No, this is not the same issue.
When I gave SONA the link with āidā in it it saved the 6-digit number generated by SONA in the data.
When I gave SONA the link with "āparticipantā in it it saved the student ID in the data.
My problem is that participants are not automatically granted with credits.
If the participant name is appearing instead of the participantās Sona ID then this has to be an issue at Sona. Your PsychoJS experiment only has access to what it is sent; if Sona correctly sends the ID then PsychoJS has no way to know the name. Conversely, if Sona only sends the name then PsychoJS cannot replace it with the ID, and itās sruely the ID that needs to be received for credits to be given. So I believe this must be an issue with Sona (maybe sending the wrong field when asked to send survey_code ?).
I had Sona look up an instance where the student name saved as the participant ID. The link generated by Sona seemed to correctly replace the survey code with their unique 6 digit ID:
They think a user-entered field may overwrite the expInfo[āparticipantā] variable. The way I have my experiment setup is to take two entries in the beginning: participant and age. When they click on the link from Sona, the participant variable gets defined using a unique 6 digit ID (which replaces %SURVEY_CODE%): https://run.pavlovia.org/lfrank/irisv2/html?participant=%SURVEY_CODE%. When they click on the link, they see a dialogue box to enter their age.
Is it possible the entry for age is somehow interfering with how the participant variable gets defined? I find this unlikely since no one should be putting their name for the age entry, and I havenāt had any instances where data files are saving with an age as the participant ID. Still, perhaps this is somehow messing with the participant entry in another way? They asked me to check my PsychoJS code to see if āparticipantā is getting redefined or overwritten, but it doesnāt seem to be the case either. You can find my PsychoJS code here: https://gitlab.pavlovia.org/lfrank/irisv2/blob/master/html/irisv2.js.
If I donāt find anything suspicious in my code, they suggested I reach out to Pavlovia to see if they are able to check their log files using the participantās IP address and the timestamp from when they clicked on the link to confirm that the user-entry fields are interfering with how the data files save.
It would, of course, be entirely possible for the participant to edit the URL to replace their participant number with a name if they were so inclined.
Or if the final part of the url got deleted (so no participant info was sent) then they would see a participant box. Then I suppose they might be tempted to type in their name. Hoe were the URLs sent to participants? Were they logging in and clicking a link from Sona or did you email them out?
What I was trying to get at was whether your participants are literally clicking on the link from Sona (in which case itās hard to see how the number was deleted) or whether they were being sent an email requiring them copy/paste the link over. If itās the latter then the participant themselves might not have copied it all over and then. If the participant field is there in the URL then Iām really confident PsychoJS is correctly using that and wonāt show them the participant field.
How often has this occurred? Looking in your data folder I canāt see any entries there where the name has appeared but I can see a lot of correct ID numbers.
Theyāre clicking on the link directly from Sona. It happened about 8 times- I had to edit the file names since their identity canāt be linked with the data.
Iām afraid Iām stumped. My best guess is still that the participants did something odd. Sorry to pass the buck! Maybe they copied to a different browser or something and didnāt copy the entire URL. If the participant field is there in the URL then Iām certain it would have been used by PsychoJS and, if that contained the ID, then Iām certain PsychoJS would store that ID. This part of the system is being routinely used by thousands of scientists and participants and I believe itās rock solid or weād be seeing a lot of rage!
Sorry that I donāt have any better answers for you. Unfortunately Pavlovia can only know what gets sent back at the end of the study though - it canāt check what participants did to get to that point.