Interactive learning scenarios and case studies
import StudyfetchSDK from '@studyfetch/sdk';
const client = new StudyfetchSDK({
apiKey: 'your-api-key',
baseURL: 'https://studyfetchapi.com',
});
const scenarioComponent = await client.v1.components.create({
name: 'Medical Emergency Room Scenario',
type: 'scenarios',
config: {
name: 'ER Patient Assessment',
description: 'Practice patient assessment in an emergency room setting',
context: 'You are a medical resident in a busy emergency room. A patient has just arrived with chest pain.',
goal: 'Properly assess the patient, order appropriate tests, and make a diagnosis',
format: 'Interactive dialogue with patient and medical staff',
greetingMessage: 'Welcome Dr. [Student Name]. Your patient, Mr. Johnson, has just arrived in room 3 complaining of chest pain.',
greetingCharacterId: 'nurse-jane',
requiresFinalAnswer: true,
finalAnswerPrompt: 'Based on your assessment, what is your diagnosis and treatment plan?',
characters: [
{
id: 'patient-johnson',
name: 'Mr. Johnson',
role: 'Patient',
description: '58-year-old male with chest pain'
},
{
id: 'nurse-jane',
name: 'Nurse Jane',
role: 'Emergency Room Nurse',
description: 'Experienced ER nurse who assists with procedures'
}
],
tools: [
{
id: 'ekg-machine',
name: 'EKG Machine',
description: 'Performs 12-lead electrocardiogram',
type: 'diagnostic',
dataFormat: 'EKG readings with intervals and interpretation'
},
{
id: 'lab-results',
name: 'Lab Results System',
description: 'Provides blood test results',
type: 'diagnostic',
dataFormat: 'Complete blood count, cardiac enzymes, etc.'
}
]
}
});
console.log('Scenario component created:', scenarioComponent._id);
"scenarios"
Show Configuration Properties
{
"_id": "comp_101jkl",
"name": "Medical Emergency Room Scenario",
"type": "scenarios",
"status": "active",
"config": {
"name": "ER Patient Assessment",
"description": "Practice patient assessment in an emergency room setting",
"context": "You are a medical resident in a busy emergency room. A patient has just arrived with chest pain.",
"goal": "Properly assess the patient, order appropriate tests, and make a diagnosis",
"format": "Interactive dialogue with patient and medical staff",
"greetingMessage": "Welcome Dr. [Student Name]. Your patient, Mr. Johnson, has just arrived in room 3 complaining of chest pain.",
"greetingCharacterId": "nurse-jane",
"requiresFinalAnswer": true,
"finalAnswerPrompt": "Based on your assessment, what is your diagnosis and treatment plan?",
"characters": [
{
"id": "patient-johnson",
"name": "Mr. Johnson",
"role": "Patient",
"description": "58-year-old male with chest pain"
},
{
"id": "nurse-jane",
"name": "Nurse Jane",
"role": "Emergency Room Nurse",
"description": "Experienced ER nurse who assists with procedures"
}
],
"tools": [
{
"id": "ekg-machine",
"name": "EKG Machine",
"description": "Performs 12-lead electrocardiogram",
"type": "diagnostic",
"dataFormat": "EKG readings with intervals and interpretation"
},
{
"id": "lab-results",
"name": "Lab Results System",
"description": "Provides blood test results",
"type": "diagnostic",
"dataFormat": "Complete blood count, cardiac enzymes, etc."
}
]
},
"createdAt": "2024-01-15T10:00:00Z",
"updatedAt": "2024-01-15T10:00:00Z",
"organizationId": "org_456def"
}
const embedResponse = await client.v1.components.generateEmbed(scenarioComponent._id, {
// User tracking
userId: 'user-456',
groupIds: ['class-101', 'class-102'],
sessionId: 'session-789',
// Scenarios-specific features
features: {
enableHistory: true
},
// Dimensions
width: '100%',
height: '600px',
// Token expiry
expiryHours: 24
});
<iframe
src="https://embed.studyfetch.com/component/comp_101jkl?token=..."
width="100%"
height="600px"
frameborder="0"
style="border: 1px solid #e5e5e5; border-radius: 8px;">
</iframe>
Was this page helpful?