Prefer using email? Say hi at hello@moveshelf.com
## README: this example shows how we can create interactive reports on Moveshelf
# using the Moveshelf API.
# This code assumes you have access to the subject_details to extract
# the norm_id (optional), the session_id, and the list of trial_ids to be
# included in the reports (see "Retrieve trials" example)
## General configuration. Set values before running the script
my_norm_id = None or "<normId>" # e.g. subject_details["project"]["norms"][0]["id"] (default is None for report without reference)
my_session_id = "<sessionId>" # retrieve from subject_details
my_trials_ids = ["<trialId1>", ..., "<trialIdN>"] # list of trial/clip ids to be included in report
## Automatically create interactive reports using all trials in the specific session.
is_report_generated = api.generateAutomaticInteractiveReports(
session_id=my_session_id,
norm_id=my_norm_id
)
## It is also possible to manually create specific interactive reports
## Condition summary report
is_report_generated = api.generateConditionSummaryReport(
session_id=my_session_id,
title="My Condition Summary report title",
trials_ids=my_trials_ids,
norm_id=my_norm_id,
template_id="currentSessionConditionSummaries",
)
## Session comparison report
is_report_generated = api.generateCurrentVsPreviousSessionReport(
session_id=my_session_id,
title="My Curr vs Prev report title",
trials_ids=my_trials_ids,
norm_id=my_norm_id,
template_id="currentVsPreviousSessionComparison"
)
## Condition comparison report
is_report_generated = api.generateCurrentSessionComparisonReport(
session_id=my_session_id,
title="My Condition comparison report title",
trials_ids=my_trials_ids,
norm_id=my_norm_id,
template_id="currentSessionComparison"
)
print(
f"Interactive report generated succesfully? {is_report_generated}"
)
# Fetch subject details using the subject ID
new_subject_details = api.getSubjectDetails(my_subject_id)
reports = new_subject_details.get("reports")
for report in reports:
print(
f"Found interactive report with title: {report['title']} and id: {report['id']}"
)