在创建与 Canvas 的自动化数据集成时,您需要编写一个脚本来自动将数据导入 Canvas。SIS 脚本会自动将您机构中的用户与您的 Canvas 帐户同步。本课程将介绍创建脚本文件时需要用到的编程语言和其他注意事项。
脚本编程语言
导入脚本可以根据贵机构的需求设计得简单或复杂。此外,可以使用多种编程语言来编写导入脚本/程序。只要该编程语言能够发起 HTTPS 请求并通过 HTTPS 上传文件,就可以用它来创建导入脚本。
由于每个机构之间存在大量变量,Canvas 官方并不支持或推广使用任何特定的脚本语言或脚本将数据导入 Canvas,例如:
- Bash Shell (cURL)
- C#
- Java
- PowerShell
- Python
服务器文件文件夹
在将要运行导入过程的服务器或计算机(Windows/Linux/Mac)上,您需要创建一个文件夹结构来存储您的导入应用程序(脚本、日志、活动文件等)。
剧本考量
SIS脚本的一个简单示例是创建一个脚本,该脚本会在特定时间运行,并检查文件夹结构中的某个目录,查看是否有需要发送到Canvas的文件。如果有文件,脚本可以将其压缩成.zip文件并发送到Canvas。 查看SIS脚本流程图。
编写脚本时,应考虑以下潜在问题:
- 脚本是否会检查错误以确定上传是否成功。
- 脚本会检查上次导入是否已完成。如果将运行频率设置得比单次导入的处理时间短,则可能导致在上次导入完成之前,新的批次就已经排队等待处理。
- 脚本会检查是否存在先前的导入,以及先前的导入是否成功。无论使用完整批处理导入还是标准导入,此验证都至关重要,因为您不希望更新顺序错乱。
示例脚本
Canvas 社区在GitHub 上提供了一个示例脚本库,其中涵盖了许多脚本编写方面的注意事项。即使使用非常简单的工具,这些示例也展示了如何实现一个基本的自动导入脚本。
注意:每个 GitHub 示例脚本都有其自身的要求和可能需要安装的其他组件才能正常运行。
通过使用这些教程中介绍的工具,您现在应该能够更好地创建自己的自动化导入工具。如果您遇到任何问题,请访问我们的 LMS 迁移策略小组。您可以在那里找到其他可以帮助您改进脚本的人,他们可以提供评论和建议。