Skip to Main Content
Status Future consideration
Created by Wayne Klapwyk
Created on Mar 14, 2022

Hide Automated Activity feedback from the user when displayed as a Task List

Currently, Automated Activities that are displayed as a Task List are always rendered as a list of actions to be completed when the user presses the Activity Evaluation button. This is even the case when the "Show Output To User" checkbox is not selected. It would make sense that, if we don't want to have feedback displayed to the user then we might not want the item to even display in the list. A specific scenario would be when including a standardized "Debug" custom script that is intended to show specific details on the Lab Instance Information page but is not useful for the user (I.E. duration times, lab details, O/S details, status information...)

Who would most benefit from this idea? Lab Developers or Lab Authors
What is the problem you are trying to solve?

Ability to capture lab metrics and debug information throughout the duration of the lab on a more fine-grained level

  • ADMIN RESPONSE
    May 5, 2023

    Thanks for taking a minute to send along this suggestion! Our Product Group has given this an initial review and assigned this a status of "Future Consideration." This status mean this Idea is not yet on our roadmap, but will be part of our normal prioritization processes.


    If you have additional context or would like to generate more demand, feel free to edit your original post, add a comment, and/or invite your peers to upvote your Idea.

  • Attach files
  • Wayne Klapwyk
    Reply
    |
    Oct 5, 2022

    The idea behind this request is to:

    1. Allow separate scripts to be included in a Task List so that only 1 button is presented to run all scripts

    2. Allow a script in the Task List to be completely hidden from the user so that they don't know that it exists

    3. Allow scripts to be written as single unique, repeatable entities without the need to "bundle" multiple script actions into a one compound script

    Two initial use cases that may exist for this include:

    1. Allowing the inclusion of a "debug/info" script to gather information about the lab environment and display it to the Lab Instances page but not in the User's IDLx window

    2. Allow the inclusion of "action" scripts that may reconfigure the environment based on the results of another script within the Task list (i.e.: modifying the environment at the conclusion of 1 exercise and prior to the next.

    "Hiding" the script from the user should include not displaying the "Text" of the script in the Task List. The user does not need to know the script is there and they don't need to know whether it is run or not.

    A sample Lab Profile (https://labondemand.com/LabProfile/129441) has been set up to illustrate the issue. In this lab there are 4 scripts. The first 2 SHOULD display the feedback and therefore SHOULD also display the "Text" of the script. The scripts have the following characteristics:

    • All Scripts are part of a Task List

    • All Scripts have a positive feedback message of "POSITIVE"

    • All Scripts have a negative feedback message of "NEGATIVE"

    • All Scripts will "Echo" a message to the screen when run

      • i.e.: This script shows Positive/Negative Feedback

    • All Scripts have "Text" indicating the numerical test and whether the script should be shown or hidden

      • NOTE: The "Text" field is mandatory and can not be hidden

    • Scripts 1 & 2 have the "Show Output to User" checkbox selected

    • Scripts 3 & 4 have the "Show Output to User" checkbox UN-selected

    When the Lab is launched I would like to see only the "Text" for scripts 1 and 2 in the list but the "Text" for all 4 scripts is actually included (see "Before Running Script Task List.png").

    When run, scripts 1 and 2 display both the "Echoed" text from within the script as well as the Correct/Incorrect message indicated by the return value of the script. Scripts 3 and 4 do not echo back the text from within the script but DO display the Correct/Incorrect message indicated by the return value of the script (see "After Running Script Task List.png").

    If the user wishes to hide the script from the Task List then there should be NO visible footprint in the IDLx. They should not see the following elements in the instruction pane:

    • The value of the "Text" field

    • The value of the "(In)Correct" fields

      • The script could still return a True/False value that the developer may want to use to determine the "Outcome" but there should be no feedback to the user because of this.

    • A Checkbox in the location of the script

    The user SHOULD see:

    • Any message(s) that have been explicitly "Echoed" to the Instruction pane from within the script.

      • This would allow any error handling to return meaningful feedback when necessary

    When the provided sample Lab Profile is launched it would be preferable for ONLY the "Text" for script 1 and 2 to be present in the displayed list and when the "Check" button is pressed only the "Correct/Incorrect" feedback from scripts 1 and 2 are shown. Scripts 3 and 4 should ONLY show any feedback if an error condition is trapped "Echoed" to the instruction window from within the script.

  • Admin
    Eric Grau
    Reply
    |
    Oct 4, 2022

    Thank you for the addition feedback here. This is a good idea to further simplify the users experience.

  • John Rice
    Reply
    |
    Sep 7, 2022

    What about being able to call another script from a script? Is that worth considering?

    @lab.Activity(MyActivity).Script(2)

  • John Rice
    Reply
    |
    Sep 7, 2022

    I think that a separate output stream that logs directly to the lab instance page without showing the user the output would solve half of this issue. (The other half being concealing the fact that it's running in the first place.)

  • Martin Grasdal
    Reply
    |
    Jul 26, 2022

    I ran into the same issue recently. I wanted an Activity to run that fired off some scheduled tasks that created the necessary output I could use in subsequent scoring scripts. I did not want to show this activity to the students. Now, I could have just buried the commands to fire off the scheduled tasks in another activity script that I did display to users. However, that approach feels like both a hack and a workaround. The functionality that Wayne is asking for is the way to go.

  • Wayne Klapwyk
    Reply
    |
    Jun 29, 2022

    Hi Eric. Perhaps we should set up a quick meeting to discuss this further.

  • Admin
    Eric Grau
    Reply
    |
    Jun 28, 2022

    Wayne, if you run the scripts without a task you can link the scripts together. If this is not the use case let us know so we can setup a meeting to discuss further.

  • Admin
    Eric Grau
    Reply
    |
    Mar 15, 2022

    Thank you for clarifying this idea.

  • Wayne Klapwyk
    Reply
    |
    Mar 14, 2022

    The intent is to hide the fact that one, or more, scripts in an Automated Activity group are being run as well as the feedback generated by that script. For instance, the user does not need to know that there is Debug information about their instance being gathered. When the "Display Scripts as Task List" option is selected then the lab developer MUST enter a Text title for the script (though no error message is displayed if they don't) and all of the scripts in the Automated Activity list will be displayed to the User.

    1) Create an Automated Activity and set it to Display Scripts as Task List (See AA_TaskList.png)

    2) Create multiple scripts attached to the Automated Activity and Disable the output to the user (See AA_NoOutput.png)

    3) The Instruction panel will display all the scripts that will be run (See AA_AllScripts.png).

    In the scenario I have in mind "Script 2" is actually a standard Debug Information script and there is no need for the user to even know that it is being run.

  • Admin
    Eric Grau
    Reply
    |
    Mar 14, 2022

    If the intent is to show only the result of an activity in the Lab Instance Details and not to the user, then this can be done currently.

    Example below is a simple test if a folder exists and only tract that in the Lab Instance Details:

    1. Create a simple activity as follows

    2. Insert Tag into instructions

    3. Output shown to user (Nothing other then the text you want displayed

    4. Check Lab Instance details


    Summary:

    The "Show Output to User" only controls the output from within the actual script itself, This is where you would put sufficient output for debug information that needs to be listed on Instance Details.

    The Feedback text is not controlled by this flag. To make sure the user does not see any output "Do not enter any text in the feedback textboxes"

    NOTE: If this solution does not address your needs please attach a few screenshots and more details to further clarify your idea.