Conduit Plugin Overview

🎯 What is Conduit?

Conduit is a data integration plugin available exclusively in Open LMS that automates the management of users, courses, enrollments, groups, and more. It serves as a bridge between external systems and Open LMS, streamlining data imports and updates.

✅ Key Uses of Conduit

  • Automate course/user/enrollment data imports and other operations.
  • Support both manual (interface menus) and automated processes (via SFTP or web services).
  • Ensure data consistency between Open LMS and external systems.
  • Integration with external systems like HR or CRM.
  • Scalable and maintainable course and user management.
  • Reduction of manual administrative overhead.
  • Alignment with enterprise-grade automation standards.

🔧 Core Features

FeaturePurpose
MappingsDefine how fields from CSV/XML/SFTP map to Open LMS fields.
Multiple input methodsUpload files via UI, send via SFTP, or use RESTful APIs.
Field ActionsSupports create, update, and delete for most data types.
Field DefaultsConfigure default values if fields are missing from the data.
Maxbytes MappingSets the maximum file upload size in courses.
Logging & ValidationWarns or errors when mappings/data are incorrect.
Cron-Based ProcessingScheduled background jobs handle processing.

🧩 Supported Data Types (Record Types)

Record TypeKey Fields NeededExample Use Case
Usersusername, email, name, cityAdding student accounts
Coursesshortname, fullnameBulk create courses for the term
Enrollmentscoursekey, userkey, roleEnrol students into courses
Groupscoursekey, groupkeyCreate discussion groups
Group Memberscoursekey, userkey, groupkeyAdd students to groups
Cohort Membersuserkey, cohortkeyAdd users to program cohorts
Role Assignmentscontext, moodlekey, userkey, rolekeyAssign users roles in specific contexts

📤 Data Submission Methods

MethodProsUse When
Edit tab (manual)Quick and easy for small changesYou want to test or make small edits
Upload tab (on-screen interface)Easy but limited (up to 1MB per file)Uploading small batch files
SFTPBest for large or automated uploadsScheduled or large data transfers
Web Services (REST API)Real-time integration without filesYou want real-time updates

📁 File Management Rules

  • Files over 1 MB should be uploaded via SFTP (not the interface).
  • Always include an action column (case-sensitive, lowercase).
  • Column headings are case-sensitive and must match mappings exactly
  • Only underscores (_) are allowed as special characters
  • Headers must begin and end with an alphanumeric character
  • The file name must match the configuration in Conduit > Settings > File (user.csv, course.csv, etc.).
  • Use wildcards such as course_*.csv to create dynamic file names.
  • Supported formats: .csv, .xml
  • The file must be placed in the specified SFTP directory

Default File Names:

  • user.csv
  • course.csv
  • enroll.csv
  • groups.csv
  • group_members.csv
  • role_assign.csv
  • cohort.csv

🔄 Processing & Cron Jobs

  • Files are processed by scheduled Conduit cron jobs.
  • Cron runs every 15–20 minutes.
  • Files are processed in this priority:
    1. Courses
    2. Users
    3. Enrollments
    4. Role Assignments
    5. Groups
    6. Group Members
    7. Cohort Users
  • Processed files are deleted or quarantined if errors occur.

⚠️ Common Issues

IssueTroubleshooting Tip
File not processingCheck the file name, mappings, and location
Field not updatingEnsure Update Moodle is selected in mappings
Users not unenrollingEnsure action = delete & auto-unenroll is ON
Incorrect mappingsMapping must match column names exactly (case-sensitive)

Most Common Use Cases

  • Bulk onboarding of new users and staff
  • Scheduled enrollment updates based on semester/session
  • Group and cohort assignment via CRM exports
  • Sync profile updates from external systems into Open LMS

Known Limitations

  • The interface does not update in real-time; a page refresh may be needed
  • No rollback mechanism for file errors
  • Processing is batch-based, not real-time
  • Error visibility is limited to logs
  • File format and size limitations
Was this article helpful?
0 out of 0 found this helpful