Millisecond Forums

Problem with finish page, TurkPrime, potentially linked to batch scripts

https://forums.millisecond.com/Topic29614.aspx

By elobot10 - 8/25/2020

Yesterday I attempted to run an Inquisit study via TurkPrime/Cloud Research, which I have been doing without issue for over a year.

In spite of the script working perfectly fine when I tested it both on my own computer and via the "Open Launch Page" function on the Millisecond website, I have received emails from MTurkers saying the experiment was taking them straight to the finish page without having them do the experiment. Additionally, it looks like the finish page displays a different completion code from the one that I have logged both on TurkPrime and in the Inquisit script. On TurkPrime all 9 assignments have been filled and flagged as 'pending' due to people entering the wrong completion code, and on the Millisecond website it looks like no data has been recorded.

Could I get some information about what might be going on? Some other details that might be helpful:

My settings on Millisecond for this study are identical to what I have used in the past without issue:
- use default launch page
- pariticipant IDs generated from URL parameter 'workerId'; group ID determined sequentially, 4 different groups
-redirect to default web finish page; show TurkPrime confirmation code



I have the following code in my Inquisit script (I hope that it is clear that I have redacted the true confirmation code):
<text finishpage>
/items = ("http://www.millisecond.com/web/finish5.aspx?IQConfirmationCode=CONFIRMATIONCODEREDACTED")
</text>

<expt Spencil_Fpen>
/onexptbegin = [
    defaults.finishpage = text.finishpage.item.1
]
/ onexptbegin = [
    values.condition = 1
]
/subjects = (1 of 2)
/ blocks = [1=block.generalIntro; 2=block.Assign_Spencil_Fpen; 3=block.instructions_Spencil_Fpen; 4=block.PracticeSpencil_Fpen;
5=block.Spencil_Fpen; 6=block.TSpencil_Fpen; 7=block.end ]
/onexptend = [
    values.completed = 1
]
/groupassignment = groupnumber
</expt>


The only thing that has changed since previous studies I've run through this platform is that I'm using a batch script to assign to the different conditions. Could this have something to do with it?

<batch>
/ subjects = (1 of 4)
/file = "study1_semantic_selfM_friendC.iqx"
</batch>

<batch>
/ subjects = (2 of 4)
/file = "study1_semantic_selfM_friendC.iqx"
</batch>


<batch>
/ subjects = (3 of 4)
/file = "study1_semantic_selfC_friendM.iqx"
</batch>

<batch>
/ subjects = (4 of 4)
/file = "study1_semantic_selfC_friendM.iqx"
</batch>


Thanks!
By Dave - 8/25/2020

elobot10 - 8/25/2020
Yesterday I attempted to run an Inquisit study via TurkPrime/Cloud Research, which I have been doing without issue for over a year.

In spite of the script working perfectly fine when I tested it both on my own computer and via the "Open Launch Page" function on the Millisecond website, I have received emails from MTurkers saying the experiment was taking them straight to the finish page without having them do the experiment. Additionally, it looks like the finish page displays a different completion code from the one that I have logged both on TurkPrime and in the Inquisit script. On TurkPrime all 9 assignments have been filled and flagged as 'pending' due to people entering the wrong completion code, and on the Millisecond website it looks like no data has been recorded.

Could I get some information about what might be going on? Some other details that might be helpful:

My settings on Millisecond for this study are identical to what I have used in the past without issue:
- use default launch page
- pariticipant IDs generated from URL parameter 'workerId'; group ID determined sequentially, 4 different groups
-redirect to default web finish page; show TurkPrime confirmation code



I have the following code in my Inquisit script (I hope that it is clear that I have redacted the true confirmation code):
<text finishpage>
/items = ("http://www.millisecond.com/web/finish5.aspx?IQConfirmationCode=CONFIRMATIONCODEREDACTED")
</text>

<expt Spencil_Fpen>
/onexptbegin = [
    defaults.finishpage = text.finishpage.item.1
]
/ onexptbegin = [
    values.condition = 1
]
/subjects = (1 of 2)
/ blocks = [1=block.generalIntro; 2=block.Assign_Spencil_Fpen; 3=block.instructions_Spencil_Fpen; 4=block.PracticeSpencil_Fpen;
5=block.Spencil_Fpen; 6=block.TSpencil_Fpen; 7=block.end ]
/onexptend = [
    values.completed = 1
]
/groupassignment = groupnumber
</expt>


The only thing that has changed since previous studies I've run through this platform is that I'm using a batch script to assign to the different conditions. Could this have something to do with it?

<batch>
/ subjects = (1 of 4)
/file = "study1_semantic_selfM_friendC.iqx"
</batch>

<batch>
/ subjects = (2 of 4)
/file = "study1_semantic_selfM_friendC.iqx"
</batch>


<batch>
/ subjects = (3 of 4)
/file = "study1_semantic_selfC_friendM.iqx"
</batch>

<batch>
/ subjects = (4 of 4)
/file = "study1_semantic_selfC_friendM.iqx"
</batch>


Thanks!

> The only thing that has changed since previous studies I've run through this platform is that I'm using a batch script to assign to the different conditions. Could this have something to do with it?

Yes. The finish page needs to be set in the <batch> script then, as described here: https://www.millisecond.com/forums/FindPost28501.aspx
By Dave - 8/25/2020

Dave - 8/25/2020
elobot10 - 8/25/2020
Yesterday I attempted to run an Inquisit study via TurkPrime/Cloud Research, which I have been doing without issue for over a year.

In spite of the script working perfectly fine when I tested it both on my own computer and via the "Open Launch Page" function on the Millisecond website, I have received emails from MTurkers saying the experiment was taking them straight to the finish page without having them do the experiment. Additionally, it looks like the finish page displays a different completion code from the one that I have logged both on TurkPrime and in the Inquisit script. On TurkPrime all 9 assignments have been filled and flagged as 'pending' due to people entering the wrong completion code, and on the Millisecond website it looks like no data has been recorded.

Could I get some information about what might be going on? Some other details that might be helpful:

My settings on Millisecond for this study are identical to what I have used in the past without issue:
- use default launch page
- pariticipant IDs generated from URL parameter 'workerId'; group ID determined sequentially, 4 different groups
-redirect to default web finish page; show TurkPrime confirmation code



I have the following code in my Inquisit script (I hope that it is clear that I have redacted the true confirmation code):
<text finishpage>
/items = ("http://www.millisecond.com/web/finish5.aspx?IQConfirmationCode=CONFIRMATIONCODEREDACTED")
</text>

<expt Spencil_Fpen>
/onexptbegin = [
    defaults.finishpage = text.finishpage.item.1
]
/ onexptbegin = [
    values.condition = 1
]
/subjects = (1 of 2)
/ blocks = [1=block.generalIntro; 2=block.Assign_Spencil_Fpen; 3=block.instructions_Spencil_Fpen; 4=block.PracticeSpencil_Fpen;
5=block.Spencil_Fpen; 6=block.TSpencil_Fpen; 7=block.end ]
/onexptend = [
    values.completed = 1
]
/groupassignment = groupnumber
</expt>


The only thing that has changed since previous studies I've run through this platform is that I'm using a batch script to assign to the different conditions. Could this have something to do with it?

<batch>
/ subjects = (1 of 4)
/file = "study1_semantic_selfM_friendC.iqx"
</batch>

<batch>
/ subjects = (2 of 4)
/file = "study1_semantic_selfM_friendC.iqx"
</batch>


<batch>
/ subjects = (3 of 4)
/file = "study1_semantic_selfC_friendM.iqx"
</batch>

<batch>
/ subjects = (4 of 4)
/file = "study1_semantic_selfC_friendM.iqx"
</batch>


Thanks!

> The only thing that has changed since previous studies I've run through this platform is that I'm using a batch script to assign to the different conditions. Could this have something to do with it?

Yes. The finish page needs to be set in the <batch> script then, as described here: https://www.millisecond.com/forums/FindPost28501.aspx

One more thing of importance: Contrary to your previous <expt>-based study, your <batch> attempts to assing conditions based on subject ID, not group ID. The ID thus needs to be numerical, since condition assignment is a mathematical operation. Now, MTurk worker IDs aren't numerical, and that is why your participants aren't assigned any condition and go straight to finish -- no condition can be assigned. You should amend your <batch> to assign based on numerical group ID, just like your previous study did.

<batch>
/ subjects = (1 of 4)
/ groupassignment = groupnumber
/file = "study1_semantic_selfM_friendC.iqx"
</batch>

<batch>
/ subjects = (2 of 4)
/ groupassignment = groupnumber
/file = "study1_semantic_selfM_friendC.iqx"
</batch>

<batch>
/ subjects = (3 of 4)
/ groupassignment = groupnumber
/file = "study1_semantic_selfC_friendM.iqx"
</batch>

<batch>
/ subjects = (4 of 4)
/ groupassignment = groupnumber
/file = "study1_semantic_selfC_friendM.iqx"
</batch>


By elobot10 - 8/26/2020


Great, thank you so much!

Just to clarify -- in addition to setting the groupassignment and finish page in my batch elements, should I also remove them from my expt elements in the other scripts?
By Dave - 8/26/2020

elobot10 - 8/26/2020

Great, thank you so much!

Just to clarify -- in addition to setting the groupassignment and finish page in my batch elements, should I also remove them from my expt elements in the other scripts?

If those <expt> elements in the scripts themselves are supposed to perform any condition assignment, then no. If they are not supposed to perform any condition assignment, then yes. In other words: The answer entirely depends on what you want the <expt>s to do or not do -- I don't have that information.
By elobot10 - 8/27/2020


Yes, the <expt> scripts perform condition assignment. I get that this means that they should have the groupassignment parameter, but do I also need to assign the finishpage there as well?
By Dave - 8/27/2020

elobot10 - 8/27/2020

Yes, the <expt> scripts perform condition assignment. I get that this means that they should have the groupassignment parameter, but do I also need to assign the finishpage there as well?

The finishpage assignment is performed by the batch script. Any finishpage assignments performed in the <expt>s won't hurt, however, they just won't have any effect. I.e. you can leave them in, as long as the actual finishpage setting logic is present in the batch script.
By elobot10 - 8/27/2020

Ah, makes sense. Thanks!